Background texture

GET /v1/queue/{model}/requests/{requestID}/status

GET/v1/queue/{model}/requests/{requestID}/status

Lightweight status check for a video generation task. Does not trigger billing. Use this endpoint for polling.

Request

Path parameters

ParameterTypeDescription
modelstringVideo model ID (e.g. veo-3).
requestIDstringRequest ID from the submit response.

Headers

HeaderValue
AuthorizationBearer {api_key}

Response

{
  "request_id": "Z2VtaW5pOnZlby0zOjg6NzIwcDoxOm9wLTEyMzQ1",
  "status": "IN_PROGRESS"
}
FieldTypeDescription
request_idstringThe request ID.
statusstringCurrent task status.
errorstringError message (only when FAILED).

Status values

StatusDescription
IN_QUEUETask accepted, waiting to be processed
IN_PROGRESSVideo is actively being generated
COMPLETEDGeneration finished — fetch the full result
FAILEDGeneration failed — check the error field

This endpoint only returns status metadata. To get video download URLs and trigger billing, use the Queue Result endpoint once status is COMPLETED.


Status codes

StatusDescription
200Success
400Invalid request ID
401Unauthorized
502Upstream provider error

Examples

curl https://api.modelmax.io/v1/queue/veo-3/requests/{request_id}/status \
  -H "Authorization: Bearer $MODELMAX_API_KEY"
import time
import requests

BASE = "https://api.modelmax.io"
headers = {"Authorization": "Bearer your-key"}

while True:
    resp = requests.get(f"{BASE}{task['status_url']}", headers=headers)
    status = resp.json()
    print(f"Status: {status['status']}")

    if status["status"] in ("COMPLETED", "FAILED"):
        break
    time.sleep(5)
const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms));

let done = false;
while (!done) {
  await sleep(5000);
  const resp = await fetch(`${BASE_URL}${task.status_url}`, {
    headers: { Authorization: `Bearer ${API_KEY}` },
  });
  const status = await resp.json();
  console.log("Status:", status.status);
  done = status.status === "COMPLETED" || status.status === "FAILED";
}

Next step

When status is COMPLETEDQueue Result