Request
GET /api/v1/task/{task_id}
Headers: X-API-Key: h3k_...
Response
{
"id": "uuid",
"status": "completed",
"progress": { "stage": "sample", "step": 12, "total_steps": 20 },
"result_url": "videos/xxx.mp4",
"error": null,
"created_at": "2026-08-20T00:00:00Z"
}
State Machine
queued → running → completed | failed
queued: waiting in line.running: executing on a GPU;progressshows the current step.completed: done;result_urlis ready for download.failed: something went wrong;errorexplains why.
Poll every 5 seconds or more. Generating a video takes minutes, so polling faster just wastes requests and may hit rate limits.