All requests require Bearer Token authentication.Get an API key:Visit the API Key management page to get your API key.Add the following header when making requests:
Video content description. We recommend describing the scene, subject, action, environment, camera movement, visual style, and audio cues in detail.Example: "a girl is dancing happily in a sunny garden"
Reference image URL array. You can omit it, provide 1 image, or provide 3 images:
Omitted or empty array: Text-to-Video
1 image: single-image Image-to-Video
3 images: reference image fusion
Publicly accessible image URLs are supported. Base64 images in the data:image/...;base64,... format are also supported.
The first-frame plus last-frame mode with 2 images is not supported. Passing 2 images returns an unsupported_image_count error. 4 or more images have not been fully verified and are not recommended.
We recommend waiting 5-10 seconds after submission before the first query, then polling every 5-10 seconds. A single task usually completes in about 3-5 minutes.
{ "model": "Omni-Flash-Ext", "prompt": "a beautiful sunset over the ocean with seagulls flying", "duration": 6, "resolution": "720p", "aspect_ratio": "16:9"}
{ "model": "Omni-Flash-Ext", "prompt": "a creative scene combining these elements with smooth camera motion", "duration": 10, "resolution": "1080p", "aspect_ratio": "9:16", "image_urls": [ "https://example.com/scene.jpg", "https://example.com/character.jpg", "https://example.com/product.jpg" ]}
{ "model": "Omni-Flash-Ext", "prompt": "close-up of a hummingbird hovering in front of a red flower", "duration": 4, "resolution": "4k", "aspect_ratio": "16:9"}
model is not Omni-Flash-Ext, prompt is empty, or the JSON format is invalid
Check the request body
400
invalid_duration
duration is not 4, 6, 8, or 10
Use a supported duration
400
invalid_resolution
resolution is not 720p, 1080p, or 4k
Use a supported resolution
400
unsupported_image_count
The number of image_urls is unsupported, commonly caused by passing 2 images
Use 0, 1, or 3 images
401
authentication_error
Invalid token
Check the Bearer Token
402
payment_required
Insufficient balance
Recharge and try again
429
rate_limit_error
Rate limit exceeded
Reduce concurrency or try again later
When a task fails, the task status API returns the failure reason in data.error. Common causes include temporary upstream quota exhaustion, content moderation failure, or upstream timeout.