MiniMax H3 Max Turbo Serverless API

Fast text-to-video and image-to-video, up to 15s at 768P.

POST /v2/minimax-h3-max-turbo · submit + poll
 1# pip install "segmind>=1.1.0"
 2# export SEGMIND_API_KEY="YOUR_API_KEY"
 3from segmind import SegmindClient, InferenceFailed, InferenceTimeout
 4
 5# Async (v2) — recommended for long-running / video models.
 6# run() blocks up to 600s; submit_async + job.wait(timeout=...) sets a longer
 7# deadline and keeps the request_id so you can re-poll later.
 8client = SegmindClient()                      # reads SEGMIND_API_KEY
 9payload = {
10    "prompt": "A track cyclist in a red skinsuit sprints off the final banking of a wooden velodrome, rising out of the saddle as the bike surges forward; the camera tracks level with the front wheel while the pine boards blur past behind.",
11    "duration": 6,
12    "resolution": "768P",
13    "aspect_ratio": "16:9",
14    "prompt_expansion_mode": "balanced",
15    "seed": -1,
16}
17job = client.submit_async("minimax-h3-max-turbo", **payload)
18print(job.request_id)                         # available immediately
19try:
20    result = job.wait(timeout=900, interval=2.0)
21    print(result["status"])                  # COMPLETED
22    print(result.get("output"))              # model output (e.g. video URL)
23except InferenceTimeout as e:
24    print("still running:", e.request_id)    # re-poll later with this id
25except InferenceFailed as e:
26    print("failed:", e.detail)
27
28# Fast models (<=600s) can use the one-liner instead:
29# result = segmind.run("minimax-h3-max-turbo", **payload)

API Endpoint

POSThttps://api.segmind.com/v1/minimax-h3-max-turbo

Parameters

promptrequired
string

Describe the scene, subject, motion and camera. Used for both text-to-video and image-to-video.

aspect_ratiooptional
string

Output aspect ratio for text-to-video. Ignored when an Image is provided (the output follows the image).

Default: "16:9"
Allowed values :
"21:9""16:9""4:3""1:1""3:4""9:16"
durationoptional
integer

Length of the generated video, 5 to 15 seconds. Billed per second of output.

Default: 5Range: 5 - 15
imageoptional
string (uri)

Optional first frame. When set, the video starts from this image and takes its aspect ratio (image-to-video). Leave empty for text-to-video.

last_frame_imageoptional
string (uri)

Optional end frame, used together with Image: the model interpolates from the first frame to this one.

prompt_expansion_modeoptional
string

How much effort to spend rewriting the prompt before generation. 'balanced' returns in about a second; 'quality' spends up to ~30s on a richer prompt.

Default: "balanced"
Allowed values :
Balanced"balanced"
Quality"quality"
resolutionoptional
string

Output resolution. 480P is the cheaper tier; 768P is the default quality tier.

Default: "768P"
Allowed values :
"480P""768P"
seedoptional
integer

Seed for reproducible generation. -1 for random.

Default: -1Range: -1 - 999999999999999

Response Type

Returns: Video

Asynchronous requests (v2)

Use Async for video, long-running (>~60s), or high-concurrency workloads; Sync is simplest for fast image & LLM calls. Async submits a request and you poll it to completion.

  1. 1
    POST /v2/minimax-h3-max-turbo

    Submitreturns request_id, status_url, response_url

  2. 2
    GET /v2/requests/{id}/status

    Polluntil COMPLETED or FAILED

  3. 3
    GET /v2/requests/{id}

    Resultfinal response body

Status states

QUEUEDAccepted, waiting for a worker
PROCESSINGRunning on a worker
COMPLETEDDone — result body is ready
FAILEDErrored (incl. content/RAI blocks)
  • A FAILED request is served as HTTP 422 — the body still carries the error detail.
  • An unknown or expired request_id returns HTTP 404.
  • Results are retained for 1 hour, then expire.
  • Content / RAI blocks surface as FAILED, not a separate state.
  • Track completion by polling the status endpoint.

Common Error Codes

The API returns standard HTTP status codes. Detailed error messages are provided in the response body.

400

Bad Request

Invalid parameters or request format

401

Unauthorized

Missing or invalid API key

403

Forbidden

Insufficient permissions

404

Not Found

Model or endpoint not found

406

Insufficient Credits

Not enough credits to process request

429

Rate Limited

Too many requests

500

Server Error

Internal server error

502

Bad Gateway

Service temporarily unavailable

504

Timeout

Request timed out