Query MiniMax H3 Task
GET /v2/query/video_generation/{task_id}
Query H3/H3-Max video generation, 2K upgrades, or Context-IR tasks. Send Authorization: Bearer {apiKey} using a model API key belonging to the task owner. No request body is needed.
Path parameter
| Parameter | Type | Required | Description |
|---|---|---|---|
task_id | string | Yes | Platform task ID returned at creation, not an upstream ID |
curl "{baseUrl}/v2/query/video_generation/{task_id}" \
-H "Authorization: Bearer {apiKey}"
Response fields (HTTP 200)
| Field | Type | Description |
|---|---|---|
task.id | string | Platform task ID, identical to the creation response task_id |
task.model | string | Request model: MiniMax-H3 or MiniMax-H3-Max |
task.status | string | queued, running, succeeded, failed, or cancelled |
task.task_type | string | generation, regeneration, or h3_context_ir |
task.modality | string | video for video tasks; text for Context-IR |
task.content.url | string | Video URL after successful generation / upgrade |
task.content.prompt | string | Prompt after successful Context-IR completion |
task.resolution | string | Optional; returned when present in the upstream result |
task.duration | integer | Optional; returned when present in the upstream result |
task.ratio | string | Optional; returned when present in the upstream result |
task.created_at | integer | Creation timestamp in seconds; platform submission time if no upstream value exists |
task.updated_at | integer | Optional; returned when present in the upstream result |
task.error | object | Failure details such as type and message |
Queries and customer callbacks do not expose upstream task IDs or upstream usage. Optional fields may be absent. Processing tasks may lack content; the platform removes content on failure. Check status before reading output fields.
Status handling
| Status | Action |
|---|---|
queued | A platform task exists / is queued; keep polling. Upstream acceptance may still be unconfirmed |
running | Processing; keep polling |
succeeded | Read URL or prompt according to modality, then stop polling |
failed | Inspect error and stop polling |
cancelled | Cancelled upstream; stop polling. This status does not imply a platform cancellation API |
If refreshing the upstream result temporarily fails, the platform can still return the previously persisted state with HTTP 200. A queued/running response therefore does not guarantee a fresh upstream confirmation. A suggested polling interval is 5–10 seconds; inspect console task logs when a task remains unchanged for a long time.
Successful video example
{
"task": {
"id": "task_platform_example",
"model": "MiniMax-H3",
"status": "succeeded",
"task_type": "generation",
"modality": "video",
"resolution": "768P",
"content": {"url": "https://example.com/generated-video.mp4"},
"created_at": 1792540800
}
}
Download or copy output promptly; this endpoint does not promise a fixed URL lifetime. The example URL illustrates the structure only.
Failed task example
{
"task": {
"id": "task_platform_example",
"model": "MiniMax-H3",
"status": "failed",
"task_type": "generation",
"modality": "video",
"error": {"type": "platform_error", "message": "Task failure reason"},
"created_at": 1792540800
}
}
Task failures may return HTTP 200. They differ from HTTP 4xx/5xx request errors.
Error handling
Example request error (messages vary by language and cause; http_code is a string):
{
"type": "error",
"error": {
"type": "not_found_error",
"message": "Task not found or inaccessible",
"http_code": "404"
},
"request_id": "request_example"
}
| HTTP status | Common causes and action |
|---|---|
| 400 | Invalid model, duration, resolution, media combination, source task, or callback verification; follow error.message |
| 401 | Missing or invalid model API key; check Authorization |
| 403 | Token model permission, group, or channel binding does not permit the operation |
| 404 | Task does not exist, belongs to another user/environment, or is not an H3 task |
| 413 | Request body exceeds the size limit |
| 5xx | Temporary platform/upstream error; query any existing task_id before creating another task |
A proxy may return non-JSON errors such as HTML. If POST /v2/... returns HTML 405, check the URL and ask the administrator to verify that /v2/ is forwarded to the backend.