Endpoint reference
Video generation
POST /v1/videos/generate · Asynchronous — HTTP 202
This route accepts strict JSON. Unknown fields, malformed values, wrong-operation keys, and package settings outside the locked configuration are rejected before provider execution.
Required headers
| Header | Value | Notes |
|---|---|---|
Authorization | Bearer $URTHEPRODUCT_API_KEY | Required. Must be sent from a trusted server. |
Idempotency-Key | 8–128 safe characters | Required on POST. Reuse only for retries of the same logical request. |
Content-Type | application/json | Required on POST. |
Request fields
| Field | Type | Required | Rules |
|---|---|---|---|
prompt | string | Yes | 1–32,000 characters. |
input_upload_id | upload ID | No | Verified owned image or video input when the package supports it. |
Request example
curl "https://urtheproduct.com/v1/videos/generate" \
+ -X POST \
+ -H "Authorization: Bearer $URTHEPRODUCT_API_KEY" \
+ -H "Idempotency-Key: logical-request-001" \
+ -H "Content-Type: application/json" \
+ -d '{ "prompt": "Create a five-second slow product reveal.", "input_upload_id": "upl_example_identifier"}'{
"prompt": "Create a five-second slow product reveal.",
"input_upload_id": "upl_example_identifier"
}Success response
{ "job_id": "job_example_identifier", "status": "submitted" }Operation-specific behavior
- Poll GET /v1/jobs/[jobId] using the same bearer key.
- Do not submit a second job after a timeout; retry with the same idempotency key.
Failures and retries
Schema failures return 422 validation_error without charging quota. Wrong scope returns 403 forbidden. Rate/concurrency pressure returns 429 rate_limited. Provider safety pauses return 503 provider_unavailable. Follow the error and retry table and reuse the same idempotency key for the same logical request.