Skip to main content
Unlike chat, image, and audio endpoints, video generation is asynchronous. POST /v1/videos/generations returns a job id immediately and queues the render; you poll GET /v1/videos/generations/{id} until status is completed, at which point the MP4 is in data[0].b64_json. A 2-second clip typically takes 50–90 seconds end-to-end. Jobs are retained for 24 hours after completion. Find video-capable models by their category of video — see model discovery.

Submit a job

The response is 202 Accepted with { "id": "...", "status": "queued", "created": 1748902000 }.

Poll for the result

Status values

Request fields

Polling cadence

Poll every 5–10 seconds; faster polling won’t speed up the render and counts against your rate limit. The poll endpoint is cheap (no GPU cost) but still rate-limited per key.

Billing

Video models bill per output second. Read the active rate from GET /v1/pricing — find the row for your model, where pricing_type is per_second, and take unit_price_usd. The billing reference explains how that becomes a charge.