---
title: "A succeeded video with the Cuddler.ai watermark (watermark=true): a one-hour link to the marked file, made on the first call (up to about a minute); free, 20 new files per 10 minutes per organization"
method: GET
path: "/v1/videos/{id}/download"
tags: ["platform-api"]
---

# A succeeded video with the Cuddler.ai watermark (watermark=true): a one-hour link to the marked file, made on the first call (up to about a minute); free, 20 new files per 10 minutes per organization

`GET /v1/videos/{id}/download`

## Request

- Base URL: `https://api.cuddler.ai`
- URL: `https://api.cuddler.ai/v1/videos/{id}/download`
- Auth: HTTP bearer

## Path parameters

- `id` string, required

## Query parameters

- `watermark` 'true', required: Required, `true`: the watermarked file. The original file is `output.url` of GET /v1/videos/{id}.

## Response `200`

The watermarked file: a one-hour signed link, served as an attachment; call again for a fresh one

- object
  - `object` 'video_download', required
  - `id` string, required
  - `watermarked` true, required
  - `url` string, uri, required
  - `url_expires_at` string, required
  - `filename` string, required

## Other responses

- `400`: invalid_request — watermark=true is missing; the original file is output.url of GET /v1/videos/{id}
- `401`: unauthorized — no key, or an unknown or revoked one (WWW-Authenticate: Bearer)
- `403`: organization_suspended; forbidden — a test key
- `404`: not_found — the Platform API is switched off, or the object does not exist
- `409`: output_unavailable — the video has not succeeded, or its file was deleted at retained_until (details.reason not_succeeded / expired); watermark_rendering — the file is still being made, or other files are (details.reason rendering / busy): call again after Retry-After
- `422`: export_limit — the video is too long or too large to watermark (details.limit); not retryable
- `429`: rate_limited — this key's write requests per minute, or this organization's new watermarked files per 10 minutes (details.reason watermark_rate_limited); Retry-After
- `500`: internal_error — quote request_id when contacting support
- `502`: upstream_error — the watermarked file could not be made; nothing was charged, retry
- `503`: unavailable — watermarked downloads are switched off or storage is unavailable (Retry-After)

---

[API](https://skmtc.dev/cuddler/apis/cuddler-platform-api.md) · [All operations](https://skmtc.dev/cuddler/apis/cuddler-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cuddler/apis/cuddler-platform-api/revisions/f03943ceadff?raw)
