MiniMax · Introduction
MiniMax H3 video model: text-to-video, image-to-video and audio-guided generation. 8 aspect ratios (16:9/9:16/1:1/4:3/3:4/3:2/2:3/21:9), 4-15s. Submit POST /v1/videos to get a task_id; poll GET /v1/videos/{task_id} until status = success / failed.
🔗 The query response follows the OpenAI video-task format: a flat top-level structure (no {code,msg,data} wrapper), lowercase status queued / running / success / failed, success returns video_url, failure returns {"error":{"code","message"}}; video_url is our CDN direct link, ready to download/play.
How to call
- Submit:
POST /v1/videos, returns a taskId. - Query:
GET /v1/videos/{taskId}, poll until status = success / failed.
Capability map
Size / Resolution
The only framing field is ratio (1 of 8, default 16:9); each ratio maps to a fixed resolution — one field locks both framing and clarity, no need for pixel size or quality params. Resolution is auto-matched by ratio at no extra charge (billed per second, independent of resolution — every ratio costs the same). Video reference input is not supported.
| Resolution | Aspect ratio | Pixels (size) |
|---|---|---|
| ≈2.0MP | 16:9 | 1920x1080 |
| ≈2.0MP | 9:16 | 1080x1920 |
| ≈1.05MP | 1:1 | 1024x1024 |
| ≈1.23MP | 4:3 | 1280x960 |
| ≈1.23MP | 3:4 | 960x1280 |
| ≈1.38MP | 3:2 | 1440x960 |
| ≈1.38MP | 2:3 | 960x1440 |
| ≈1.89MP | 21:9 | 2100x900 |
Common Errors
| Code | msg | Meaning | How to fix |
|---|---|---|---|
| 400 | invalid_duration | duration is outside 4-15 | Set duration to an integer between 4 and 15 |
| 400 | invalid_request | Missing prompt (required even for image-to-video), ratio not one of the 8 supported values, too many images/audio, or bad body | prompt is required; ratio must be one of 16:9/9:16/1:1/4:3/3:4/3:2/2:3/21:9; image_urls<=9, audio_urls<=3 |
| 401 | unauthorized | API Key missing or invalid | Check the Authorization: Bearer <API_KEY> header |
| 402 | insufficient_balance | Insufficient credit balance | Top up and retry |
| 429 | task_limit_reached | Too many in-flight tasks | Wait for some tasks to finish, then submit |
| 404 | not_found | Task not found or not owned by this account | Verify the taskId is correct |
| 4xx/5xx | upstream_error | Generation service error (no charge at submit; auto-refunded if it fails during generation) | Retry later; contact support if it persists |
Errors are returned as {"error":{"code":"...","message":"..."}}.
Tip: after saving your API Key via Authorize, every capability page supports "Try it".