Skip to main content

Endpoints

Video generation is asynchronous. The POST returns immediately with an id and status: "pending". Retrieve the result by polling GET /v1/videos/generations/{id} or by setting a callback_url.

Request Headers

Request Body (POST)

string
required
Video model ID. e.g. bytedance/seedance-2-0, kuaishou/kling-2-1, minimax/hailuo-pro, alibaba/wan-2-7-t2v.
string
required
Text description of the video.
number
Duration in seconds. Model-dependent (commonly 5, 8, 10).
string
e.g. 16:9, 9:16, 1:1.
string
e.g. 720p, 1080p. Model-dependent.
array
Required for image-to-video models (*-i2v, *-image-to-video). Each entry may be a public HTTPS URL or an inline base64 data: URI (e.g. data:image/png;base64,…) — inline images are decoded and hosted automatically. For anything larger than a few MB, prefer uploading via POST /v1/uploads and passing the returned URL.
string
Optional. RouterBase will POST the final result to this HTTPS URL when the task completes. See Async Tasks → Callback.

Submit a Job

Response (POST)

Poll Status (GET)

Response (GET)

While running:
When complete:

Image-to-video

For i2v models (e.g. kuaishou/kling-v2-1-master-i2v, bytedance/bytedance-v1-pro-i2v), include image_urls: