Video V2

Create video generation task

Create a video generation task. The model generates a video from the multimodal input you provide (text / image / video / audio). This is an asynchronous endpoint: on success it returns a task_id, and you should poll the Query Task endpoint for the task status and retrieve the generated video once it succeeds.

Currently supported models: MiniMax-H3, MiniMax-H3-Highspeed, MiniMax-H3-Lite, MiniMax-H3-Max.

post/v2/video_generation

Request

Headers

Content-Type'application/json' required

Media type of the request body. Set it to application/json.

Request body

model'MiniMax-H3' | 'MiniMax-H3-Highspeed' | 'MiniMax-H3-Lite' | 'MiniMax-H3-Max' required

Model name. Currently available: MiniMax-H3, MiniMax-H3-Highspeed, MiniMax-H3-Lite, MiniMax-H3-Max.

  • MiniMax-H3: the variant for high-quality video creation. Supports text-to-video, image-to-video (first / last frame), and reference-to-video; 768P / 2K resolution, 4–15s duration.
  • MiniMax-H3-Highspeed: balances generation quality and speed. Supports text-to-video, image-to-video (first / last frame), and reference-to-video (reference image / video / audio); 480P / 768P resolution, 2K is not supported; 4–15s duration.
  • MiniMax-H3-Lite: the lightweight variant. Supports text-to-video, image-to-video (first / last frame), and reference-to-video (reference image / video / audio); 480P / 768P resolution, 2K is not supported; 4–15s duration.
  • MiniMax-H3-Max: the fast generation variant. Supports text-to-video, image-to-video (first / last frame), and reference-to-video (reference image / video / audio); 480P / 768P resolution, 2K is not supported; 5–15s duration.
resolution'480P' | '768P' | '2K' required

Video resolution. Availability differs by model:

  • MiniMax-H3: 768P, 2K
  • MiniMax-H3-Highspeed: 480P, 768P (2K is not supported)
  • MiniMax-H3-Lite: 480P, 768P (2K is not supported)
  • MiniMax-H3-Max: 480P, 768P (2K is not supported)
duration4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 required

Duration of the generated video in seconds. Required, integer. Available values differ by model:

  • MiniMax-H3: 4–15
  • MiniMax-H3-Highspeed: 4–15
  • MiniMax-H3-Lite: 4–15
  • MiniMax-H3-Max: 5–15 (4 seconds is not supported)
ratio'adaptive' | '21:9' | '16:9' | '4:3' | '1:1' | '3:4' | '9:16'

Aspect ratio of the generated video. Defaults to adaptive (the most suitable ratio is chosen automatically based on the input; the actual ratio can be read from the ratio field of the query endpoint). Available values: adaptive, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16.

Text-to-video (t2va, content contains only text): ratio is required and cannot be adaptive; available values 21:9, 16:9, 4:3, 1:1, 3:4, 9:16.

Image-to-video (i2va, content contains a first_frame / last_frame image): the aspect ratio is determined by the input image and ratio is always adaptive; passing another valid value does not error but is ignored and treated as adaptive.

Reference-to-video (r2va, content contains reference_image / reference_video / reference_audio): ratio is optional and defaults to adaptive; you may also explicitly specify any of the concrete ratios above. MiniMax-H3-Lite does not support adaptive yet; specify a concrete ratio.

callback_urlstring

Callback URL for task status changes. Once configured, the MiniMax server first sends a verification request containing a challenge field (you must return the challenge unchanged within 3 seconds to complete verification); after verification succeeds, it POSTs an update to this URL whenever the task status changes. The push body has the same structure as the response of the Query Task endpoint.

Callback status values: queued, running, succeeded, failed, cancelled.

Example request

{
  "model": "MiniMax-H3",
  "content": [
    {
      "type": "text",
      "text": "A boy playing basketball by the sea"
    }
  ],
  "resolution": "2K",
  "duration": 5,
  "ratio": "16:9"
}

Response

The create endpoint returns a task_id. Use this task_id with the Query Task endpoint to retrieve the task status and result.

Successful Query Task response example

{
  "task": {
    "id": "424010985738629",
    "model": "MiniMax-H3",
    "status": "succeeded",
    "created_at": 1785125529,
    "updated_at": 1785125946,
    "content": {
      "url": "https://your-cdn.example.com/h3-generated-2k-output.mp4"
    },
    "resolution": "2K",
    "duration": 5,
    "usage": {
      "total_seconds": 5,
      "input_seconds": 0,
      "output_seconds": 5,
      "input_image_count": 0
    },
    "ratio": "16:9",
    "task_type": "generation",
    "modality": "video"
  }
}
task_idstring

ID of the task, used to query the task status and result later.

Example response

{
  "task_id": "424010985738629"
}

Changes

No recorded changes to this operation across all 1 revision of this API.