For AI agents: a documentation index is available at the root level at /llms.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
When true, long-poll: hold the request open until the generation reaches a terminal status (COMPLETED/FAILED/REJECTED) or the timeout elapses, then return the latest state. Waits are short (10s max) — treat this as a convenience for jobs about to finish, and poll again (the response includes a `Retry-After: 2` header) or use a webhook for longer jobs. wait=true responses also carry `X-Sync-Wait-Mode: long_poll` and `X-Sync-Wait-Timeout-Seconds` headers. Cannot be combined with include=progress.
timeoutdoubleOptional
Max seconds to hold a wait=true request open (default 5, max 10 — values outside 1-10 are rejected with a 400). On timeout the current (non-terminal) generation is returned with HTTP 200, so check status and poll again, or use a webhook for long jobs.
includestringOptional
Comma-separated extra fields to include. include=progress adds a progress_percent field (fetched live from the inference service).
Response
Job status retrieved successfully
createdAtdatetime
The date and time the generation was created.
idstring
A unique identifier for the generation.
inputlist of objects
An array of input objects used for generation.
modelenum
The name of the model used for generation.
Allowed values:
statusenum
The status of the generation.
Allowed values:
errorstringOptional
The error message if the generation failed.
errorCodestringOptional
Stable, machine-readable error code if the generation failed (e.g. generation_input_video_inaccessible). The full catalog of codes, messages and suggested fixes is served unauthenticated at GET /v2/errors.
optionsobjectOptional
Options for the generation.
outputDurationdoubleOptional
The duration of the output media.
outputUrlstringOptional
The URL of the output media.
outputFileNamestringOptional
The sanitized filename applied to the output media. Characters outside letters, numbers, dashes and underscores are stripped and spaces become underscores, so this can differ from the value submitted. Null when no name was provided.
segmentslist of objectsOptional
The segments of the generation.
segmentOutputUrlstringOptional
The URL of the segment output media.
synthesizedAudioUrlstringOptional
The URL of the audio synthesized from a text (TTS) input. Only present for generations created with a TTS text input; reuse it as an audio input to keep the same take across generations.
webhookUrlstringOptional
The URL to the webhook endpoint.
projectIdstringOptional
The id of the project this generation is attached to, or null when it belongs to no project. Set via the projectId field on the create request.
Errors
401
Unauthorized Error
404
Not Found Error
500
Internal Server Error
When true, long-poll: hold the request open until the generation reaches a terminal status (COMPLETED/FAILED/REJECTED) or the timeout elapses, then return the latest state. Waits are short (10s max) — treat this as a convenience for jobs about to finish, and poll again (the response includes a Retry-After: 2 header) or use a webhook for longer jobs. wait=true responses also carry X-Sync-Wait-Mode: long_poll and X-Sync-Wait-Timeout-Seconds headers. Cannot be combined with include=progress.