About this endpoint
What it does
Submits an async video watermarking job using a source video URL and watermark settings. The request accepts the source URL plus optional text or image watermark parameters, and the response returns a job identifier for later polling.
Query Parameter(s)
| Attribute | Type | Mandatory | Description |
|---|---|---|---|
| persistent | Boolean | No | No description provided in the schema. |
Request Body
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
| video_url | String | Yes | HTTP(S) URL of the source video. Format: URI. |
| size | String | No | Optional output video scale WIDTHxHEIGHT (even integers). Example: 1280x720. |
| gif_loop | Boolean | No | Loop GIF watermark for full video duration. Default: false. |
| watermark_text | String | No | Text overlay (alternative to image watermark). |
| watermark_image | String | No | Image overlay URL (.jpg, .jpeg, .png, .gif). Format: URI. |
| watermark_opacity | String | No | Opacity 0.0–1.0. Default 0.5. |
| watermark_position | ENUM | No | Allowed values: top_right, top_left, bottom_right, bottom_left, center, bottom_center, top_center, center_left, center_right. Default: bottom_right. |
| watermark_font_size | String | No | Text watermark font size in pixels. Default 24. |
| watermark_image_url | String | No | Legacy video-clips alias for watermark_image. Format: URI. |
| watermark_font_color | String | No | Hex color for text. Default #ffffff. |
| watermark_image_size | String | No | Image scale (-1:N or WIDTHxHEIGHT). Default -1:50. |
| watermark_text_padding | String | No | Text padding in pixels. Default 10. |
| watermark_text_background_color | String | No | Hex background box color; omit for no box. |
Response
Returns a JSON object with a required job_id string field — the job identifier used for status polling. Success responses are returned immediately after async submission and are not wrapped in data.
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
| job_id | String | Yes | Job identifier for status polling. Format: UUID. |
Notes
This endpoint kicks off an async job and returns immediately with a job identifier; the actual work runs in the background. Pair this call with the corresponding job_check endpoint — poll that until the status reaches a terminal state to retrieve the result. Extract the job_id field from the response.