Request body
modelstringrequired"bytedance/seedance-2.0-mini""google/gemini-omni-flash-1.1""prunaai/p-video""xai/grok-imagine-video-1.5"promptstringrequiredPositive prompt.
e.g. "A cat surfing a wave at sunset"≥ 1 characters≤ 8192 charactersnegative_promptstring- ≤ 8192 characters
durationnumberVideo duration in seconds. Defaults to the model's default duration.
≥ 1≤ 60sizeobject | stringAspect ratio and resolution tier. The aspect ratio is best effort: the closest one the model supports. With image inputs the first frame sets the shape. Defaults to "auto".
"auto""square""portrait""landscape""portrait_tall""landscape_wide""1:1""2:3"type"auto"requiredresolutionstringResolution tier. Each model supports a subset, and a tier it does not support is rejected. Defaults to the model's default tier.
"480p""720p""1080p""4k"
audiobooleanEnable model-native generated audio. Only supported by models with audio capability.
inputs(string | object)[]- ≤ 5 items
type"image"requiredasstring"auto""first_frame""last_frame""reference"sourceobjectrequiredtype"url"requiredurlstringrequired- format: uri
generate_public_access_tokenbooleanReturn a short-lived public access token as
public_access_token, for polling this task from browser code without your API key. Defaults to false.webhookobjectregisteredbooleanSet to false to skip the webhooks registered on the account for this task. Custom webhooks in
customare still sent.customobject[]- ≥ 1 items≤ 5 items
urlstringrequiredReceives this task's events, unsigned. Use https and a public host, and put a secret token in the query string to verify deliveries: only
scheme://hostis ever shown back.e.g. "https://example.com/hooks/mynth?token=your-secret-token"
metadataobject
Response
Video generation task created
dataobjectrequiredtask_idstringrequiredTask ID
e.g. "tsk_01KE7XWWEQ4MCGWKBQKJ1G47RP"estimated_coststringrequiredEstimated cost in USD reserved for this task. Work that fails is refunded, so the final cost may be lower.
e.g. "0.03"public_access_tokenstringShort-lived public access token for polling this task's status and result.
Safe to hand to browser code instead of your API key. Returned only when the request set
generate_public_access_token: true.e.g. "pat_eyJhbGciOi..."
Errors
A failed call names what went wrong in code, with a sentence in message. The codes, which of them are worth retrying, and how to read a validation failure are on Errors.