---
title: Watermarks
---

[Skip to content](#%5Ftop) 

[API Reference](https://developers.cloudflare.com/api/typescript)

[Stream](https://developers.cloudflare.com/api/typescript/resources/stream)

Copy Markdown

Open in **Claude**

Open in **ChatGPT**

Open in **Cursor**

---

**Copy Markdown**

**View as Markdown**

# Watermarks

##### [List watermark profiles](https://developers.cloudflare.com/api/typescript/resources/stream/subresources/watermarks/methods/list)

client.stream.watermarks.list(WatermarkListParams { account\_id } params, RequestOptionsoptions?): SinglePage<[Watermark](https://developers.cloudflare.com/api/typescript/resources/stream#%28resource%29%20stream.watermarks%20%3E%20%28model%29%20watermark%20%3E%20%28schema%29) { created, downloadedFrom, height, 8 more } \>

GET/accounts/{account\_id}/stream/watermarks

##### [Watermark profile details](https://developers.cloudflare.com/api/typescript/resources/stream/subresources/watermarks/methods/get)

client.stream.watermarks.get(stringidentifier, WatermarkGetParams { account\_id } params, RequestOptionsoptions?): [Watermark](https://developers.cloudflare.com/api/typescript/resources/stream#%28resource%29%20stream.watermarks%20%3E%20%28model%29%20watermark%20%3E%20%28schema%29) { created, downloadedFrom, height, 8 more } 

GET/accounts/{account\_id}/stream/watermarks/{identifier}

##### [Create watermark profiles via basic upload](https://developers.cloudflare.com/api/typescript/resources/stream/subresources/watermarks/methods/create)

client.stream.watermarks.create(WatermarkCreateParams { account\_id, name, opacity, 4 more } params, RequestOptionsoptions?): [Watermark](https://developers.cloudflare.com/api/typescript/resources/stream#%28resource%29%20stream.watermarks%20%3E%20%28model%29%20watermark%20%3E%20%28schema%29) { created, downloadedFrom, height, 8 more } 

POST/accounts/{account\_id}/stream/watermarks

##### [Delete watermark profiles](https://developers.cloudflare.com/api/typescript/resources/stream/subresources/watermarks/methods/delete)

client.stream.watermarks.delete(stringidentifier, WatermarkDeleteParams { account\_id } params, RequestOptionsoptions?): [WatermarkDeleteResponse](https://developers.cloudflare.com/api/typescript/resources/stream#%28resource%29%20stream.watermarks%20%3E%20%28model%29%20watermark%5Fdelete%5Fresponse%20%3E%20%28schema%29)

DELETE/accounts/{account\_id}/stream/watermarks/{identifier}

##### ModelsExpand Collapse 

Watermark { created, downloadedFrom, height, 8 more } 

created?: string

The date and a time a watermark profile was created.

formatdate-time

downloadedFrom?: string

The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.

height?: number

The height of the image in pixels.

name?: string

A short description of the watermark profile.

opacity?: number

The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.

maximum1

minimum0

padding?: number

The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.

maximum1

minimum0

position?: string

The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and `center`. Note that `center` ignores the `padding` parameter.

scale?: number

The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0 `fills the entire video.

maximum1

minimum0

size?: number

The size of the image in bytes.

uid?: string

The unique identifier for a watermark profile.

maxLength32

width?: number

The width of the image in pixels.

WatermarkDeleteResponse \= string