Skip to main content
Poll the dispatcher for the current state of a task started by /tasks/submit. Returns whatever’s known right now — pending, running, or one of three terminal states (completed, failed, cancelled). For real-time delivery (server-pushed state changes instead of client-pulled polls), use GET /v1/tasks/stream/{task_id} (SSE) or a callback_url registered on submit.

When to use

  • Cheap polling loop/tasks/query is free; call it on a cadence matched to the task’s estimated_seconds
  • Reconciling after process restart — your client died, you only have the out_task_id in your DB; query by that to recover the current state
  • Final output retrieval — once status is completed, the output array holds the generated images / videos

Request

By task_id

By out_task_id (idempotency key)

Body

Exactly one of task_id or out_task_id is required. Sending both returns 400 invalid_param.

Response

While running

After completion

After failure

Response fields

Polling cadence

Match your poll interval to the model’s estimated_seconds from the submit response. A good default for video:
For zero-polling delivery, prefer callback_url (set on submit) or the SSE stream endpoint.

Errors

Pricing

Free. Polling does not consume credits. Only completed tasks bill (via the original submit). Re-querying a completed task as many times as you like is zero-cost.

Next