Skip to content
English

MiniMax H3 Max Image-to-Video

POST Base URL: https://api.hiapi.ai /v1/tasks

Image, video, and audio models are called through theUnified Async API POST /v1/tasks endpoint; only the input fields differ (see input parameters below).

Model summary

Model ID minimax-h3-max/image-to-video
Type Image-to-video
Endpoint POST /v1/tasks
Pricing View live pricing

Guide video with a first frame, a last frame or both, with framing based on the image. Supports 480P, 768P, 1080P, 0.92–15 second target durations and your own audio.

Production guidance

Production guidance
  • Use callback.url for terminal notifications and deduplicate by taskId.
  • Keep polling tasks that are still processing; avoid duplicate submissions.

Request parameters

model string required

Select the model to call.

example minimax-h3-max/image-to-video
input object required

Video generation settings.

prompt string required

Describe the scene, action, camera movement and sound in 1–50,000 characters; whitespace alone is not accepted.

duration number optional

Target video duration from 0.92 to 15 seconds; fractional values are supported. Use at least 2 seconds when target_audio_url is supplied.

default 5
resolution enum optional

Choose video resolution. 1080P refines a 768P base; pixel dimensions also depend on the aspect ratio.

default 768P enum: 480P768P1080P
seed integer optional

Control generation randomness with an integer; 0 is valid. Omit the field to select a random seed.

prompt_expansion_mode enum optional

Control prompt expansion: disabled keeps the original prompt, balanced balances expansion and wait time, and quality expands more thoroughly and may take longer.

default balanced enum: disabledbalancedquality
target_audio_url string optional

Replace the video soundtrack with your audio. Supply a publicly accessible HTTP(S) URL for audio at least 2 seconds long and no larger than 15 MB. Longer audio is trimmed from the start; shorter audio is padded with silence, without changing playback speed or target video duration.

first_frame_image string optional

Supply an image to use as the first frame of the video.

last_frame_image string optional

Supply an image to guide the last frame of the video.

callback object optional

Callback configuration for terminal task notifications.

url string required

HTTPS URL that receives task notifications.

example https://your-domain.com/hiapi/callback
when enum optional

Notify when the task reaches a terminal state.

default final enum: final

Example requests

Start with a paper-boat image

Establish the scene with a first frame and describe boat movement and camera changes in the prompt.

Request body
{
  "model": "minimax-h3-max/image-to-video",
  "input": {
    "prompt": "A red paper boat drifts beneath a stone bridge after rain. Smooth tracking camera, natural ripples, soft birdsong. No text or subtitles.",
    "duration": 1.5,
    "resolution": "480P",
    "seed": 0,
    "prompt_expansion_mode": "disabled",
    "first_frame_image": "https://static.hiapi.ai/model-onboarding/minimax-h3-max/2026/10/13/1791862423659-cd76600c6f3d1b5d-first-frame.png"
  }
}

Getting the result

  1. Authenticate with Authorization: Bearer YOUR_HIAPI_API_KEY and save the returned taskId.
  2. Poll GET /v1/tasks/{taskId}, or set callback.url to receive a terminal notification.
  3. Keep polling queued or processing tasks without submitting duplicates. On success, read the video URL from output[].url.
  4. Handle failures using the returned error. Deduplicate callbacks by taskId.

FAQ

Can I generate video with only an ending image?

Yes. Supply last_frame_image and describe the preceding action and camera movement in prompt; the last frame sets the ratio. You can also provide both frames, in which case the first frame sets it.

Does my audio change the video length?

No. duration sets the target video length. target_audio_url replaces the soundtrack: longer audio is trimmed from the start and shorter audio is padded with silence. Supply audio at least 2 seconds long and no larger than 15 MB.

How do I keep my original prompt without expansion?

Set prompt_expansion_mode to disabled. Select quality when you want more thorough expansion, allowing additional waiting time.

Next steps