curl --request POST \
--url https://api.evolink.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "minimax-h3-text-to-video",
"prompt": "Epic space-opera trailer: a female captain stands alone before a vast observation window as the last fleet assembles outside. The fleet jumps in a blinding white flash and the bridge shakes violently; when the light fades, she is left alone in silent deep space. Cinematic lighting, slow push-in, grand yet restrained atmosphere.",
"duration": 4,
"quality": "768p",
"aspect_ratio": "16:9"
}
'{
"created": 1761313744,
"id": "task-unified-1774857405-abc123",
"model": "minimax-h3-text-to-video",
"object": "video.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 165,
"video_duration": 4
},
"type": "video",
"usage": {
"billing_rule": "per_second",
"credits_reserved": 44.2,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to the specified model",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Minimax H3 / H3 Max Complete Parameter Guide
Unified API for the entire Minimax H3 and H3 Max series. Select the generation mode with the model parameter.
3 generation modes, 5 models:
| Mode | Model ID | Input assets |
|---|---|---|
| Text-to-Video | minimax-h3-text-to-video | prompt only |
| Text-to-Video | minimax-h3-max-text-to-video | prompt only |
| Image-to-Video | minimax-h3-image-to-video | prompt + image_start and/or image_end |
| Image-to-Video | minimax-h3-max-image-to-video | prompt + image_start and/or image_end |
| Reference-to-Video | minimax-h3-reference-to-video | prompt + image_urls / video_urls / audio_urls |
Parameter differences:
- Minimax H3: output duration from
4to15seconds; resolution768p(default) or2k - Minimax H3 Max: output duration from
5to15seconds; resolution480por768p(default)
Shared capabilities:
- Asynchronous processing; use the returned task ID to query the task
- Minimax H3 and H3 Max tasks cannot be canceled
- Generated video URLs remain valid for 24 hours; save the result promptly
curl --request POST \
--url https://api.evolink.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "minimax-h3-text-to-video",
"prompt": "Epic space-opera trailer: a female captain stands alone before a vast observation window as the last fleet assembles outside. The fleet jumps in a blinding white flash and the bridge shakes violently; when the light fades, she is left alone in silent deep space. Cinematic lighting, slow push-in, grand yet restrained atmosphere.",
"duration": 4,
"quality": "768p",
"aspect_ratio": "16:9"
}
'{
"created": 1761313744,
"id": "task-unified-1774857405-abc123",
"model": "minimax-h3-text-to-video",
"object": "video.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": false,
"estimated_time": 165,
"video_duration": 4
},
"type": "video",
"usage": {
"billing_rule": "per_second",
"credits_reserved": 44.2,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to the specified model",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Authorizations
##All endpoints require Bearer Token authentication##
Get API Key:
Visit the API Key Management Page to obtain your API Key
Add to request header:
Authorization: Bearer YOUR_API_KEY
Body
Video generation model name.
| Model ID | Mode | Asset parameters |
|---|---|---|
minimax-h3-text-to-video | Text-to-video | Does not accept media assets |
minimax-h3-max-text-to-video | Text-to-video | Does not accept media assets |
minimax-h3-image-to-video | Image-to-video | image_start and/or image_end |
minimax-h3-max-image-to-video | Image-to-video | image_start and/or image_end |
minimax-h3-reference-to-video | Multimodal reference-to-video | image_urls / video_urls / audio_urls |
minimax-h3-text-to-video, minimax-h3-max-text-to-video, minimax-h3-image-to-video, minimax-h3-max-image-to-video, minimax-h3-reference-to-video "minimax-h3-text-to-video"
Describe the video you want to generate. This field is required and cannot be empty.
Prompt requirements:
- Chinese and English are supported
- Maximum length
7000characters (Chinese and English are both counted by character) - The model may ignore some details in an overly long prompt
Usage by model:
- Text-to-Video: Describe the scene, subject, action, camera, and mood. Do not provide any media fields
- Image-to-Video: Describe how subjects in the first/last frame should move and how the camera should change; use
image_startand/orimage_end - Reference-to-Video: Describe how to use the reference assets. Refer to them as
Image 1,Image 2,Video 1,Audio 1, and so on; do not use Seedance-style names such as@image1or@video1. Numbering starts at1and follows the order of each URL array
1 - 7000"Cinematic scene: an astronaut stands before the observation window of a lunar base as the camera slowly pushes in and Earth rises above the distant horizon."
Applicable models:
minimax-h3-image-to-videominimax-h3-max-image-to-video- Text-to-video and reference-to-video do not support this parameter
HTTP(S) URL of the first-frame image.
Combination rules:
- Provide at least one of
image_startandimage_end image_startonly: first-frame image-to-video- Both fields: first-and-last-frame image-to-video
- At most
1first frame; this field accepts one URL
Image requirements:
- Formats: JPG, JPEG, PNG, WEBP, HEIC, HEIF
- File size: no more than
30MB - Width and height: each from
256to5760px - Aspect ratio (width/height):
0.4–2.5 - The URL must use HTTP(S) and be directly accessible by the service
- The complete JSON request body must not exceed
64MB; Base64 andmm_file://inputs are not accepted
"https://cdn.hailuoai.com/prod/hailuo_demo/testsets/H3_AA_I2VA/gallery/sr_v17_variants_seed42_43_20260724/inputs/4a3a90bf9100_KDmcbkhzYo5sjjxr9FqcVmWVnzb.png"
Applicable models:
minimax-h3-image-to-videominimax-h3-max-image-to-video- Text-to-video and reference-to-video do not support this parameter
HTTP(S) URL of the last-frame image.
Combination rules:
- Provide at least one of
image_endandimage_start image_endonly: the model generates natural motion that ends on this frame- Both fields: first-and-last-frame image-to-video
- At most
1last frame; this field accepts one URL
Image requirements:
- Formats: JPG, JPEG, PNG, WEBP, HEIC, HEIF
- File size: no more than
30MB - Width and height: each from
256to5760px - Aspect ratio (width/height):
0.4–2.5 - The URL must use HTTP(S) and be directly accessible by the service
- The complete JSON request body must not exceed
64MB; Base64 andmm_file://inputs are not accepted
"https://images.unsplash.com/photo-1515003197210-e0cd71810b5f?auto=format&fit=crop&w=1920&q=85"
Applicable models:
- Only
minimax-h3-reference-to-video - Text-to-video and image-to-video do not support this parameter
Array of HTTP(S) reference-image URLs. Defaults to []; maximum 9 images.
Role and numbering:
- Every image is used as
reference_image - The first item is
Image 1, the second isImage 2, and so on
Image requirements:
- Formats: JPG, JPEG, PNG, WEBP, HEIC, HEIF
- File size: no more than
30MBeach - Width and height: each from
256to5760px - Aspect ratio (width/height):
0.4–2.5 - URLs must use HTTP(S) and be directly accessible by the service
- The complete JSON request body must not exceed
64MB; Base64 andmm_file://inputs are not accepted
Combination rules:
- Provide at least one of
image_urls,video_urls, oraudio_urls - The three reference types combined must not exceed
12items (images + videos + audio clips) - Leaving all three empty returns a parameter error; use
minimax-h3-text-to-videoorminimax-h3-max-text-to-videofor text-only generation
9[
"https://cdn.hailuoai.com/prod/hailuo_demo/testsets/H3_AA_I2VA/gallery/sr_v17_variants_seed42_43_20260724/inputs/4a3a90bf9100_KDmcbkhzYo5sjjxr9FqcVmWVnzb.png"
]
Applicable models:
- Only
minimax-h3-reference-to-video - Text-to-video and image-to-video do not support this parameter
Array of HTTP(S) reference-video URLs. Defaults to []; maximum 3 videos.
Role and numbering:
- Every video is used as
reference_video - The first item is
Video 1, the second isVideo 2, and so on
Video requirements:
- Containers: MP4 (
.mp4), MOV (.mov) - Video codecs: H.264/AVC, H.265/HEVC
- Embedded audio codecs: AAC, MP3
- File size: no more than
50MBeach - Duration:
2–15seconds per clip; total reference-video duration no more than15seconds - Width and height: each from
256to5760px - Aspect ratio (width/height):
0.4–2.5 - Frame rate:
23.976–60FPS - URLs must use HTTP(S) and be directly accessible by the service
- The complete JSON request body must not exceed
64MB; Base64 andmm_file://inputs are not accepted
Billing:
- Reference-video input duration is billable
Combination rules:
- Provide at least one of
image_urls,video_urls, oraudio_urls - The three reference types combined must not exceed
12items (images + videos + audio clips) - Leaving all three empty returns a parameter error; use
minimax-h3-text-to-videoorminimax-h3-max-text-to-videofor text-only generation
3[
"https://cdn.hailuoai.com/prod/hailuo_demo/testsets/h3_promo_eval_ref2va/gallery/sr_v2p26_trio_seed42_20260724/inputs/297573323635_00_%E8%A7%86%E9%A2%911_YnyRbxEwio_video_20260525_163755_1927e9d3.mp4"
]
Applicable models:
- Only
minimax-h3-reference-to-video - Text-to-video and image-to-video do not support this parameter
Array of HTTP(S) reference-audio URLs. Defaults to []; maximum 3 clips.
Role and numbering:
- Every audio clip is used as
reference_audio - The first item is
Audio 1, the second isAudio 2, and so on
Audio requirements:
- Formats: WAV, MP3
- File size: no more than
15MBeach - Duration:
2–15seconds per clip; total reference-audio duration no more than15seconds - URLs must use HTTP(S) and be directly accessible by the service
- The complete JSON request body must not exceed
64MB; Base64 andmm_file://inputs are not accepted
Billing:
- Reference-audio duration is not billable
Combination rules:
audio_urlscan be used on its own; no reference image or video is required- The three reference types combined must not exceed
12items (images + videos + audio clips) - Leaving all three empty returns a parameter error; use
minimax-h3-text-to-videoorminimax-h3-max-text-to-videofor text-only generation
3[
"https://cdn.hailuoai.com/prod/hailuo_demo/testsets/h3_promo_eval_ref2va/gallery/sr_v2p26_trio_seed42_20260724/inputs/f463d523c5ce_01_%E9%9F%B3%E9%A2%911_RSLcbpzJPo_6%E6%9C%885%E6%97%A5(1).mp3"
]
Output video duration in seconds. The value range and default depend on model.
Applicable models:
- All 5 Minimax H3 and H3 Max models
Model restrictions:
- Minimax H3: integers from
4through15, inclusive; defaults to4seconds - Minimax H3 Max: integers from
5through15, inclusive; defaults to5seconds - Decimals, numeric strings,
auto, and-1are not supported - Output duration directly affects billing
4 <= x <= 155
Output video resolution. Defaults to 768p.
Applicable models:
- All 5 Minimax H3 and H3 Max models
Available values by model:
- Minimax H3:
768p(default),2k - Minimax H3 Max:
480p,768p(default)
Notes:
- Omitting this parameter produces
768poutput - Output bitrate, frame rate, video codec, and audio codec are selected by the platform and are not configurable
480p, 768p, 2k "768p"
Output video aspect ratio.
Applicable models and defaults:
minimax-h3-text-to-video,minimax-h3-max-text-to-video: explicit aspect ratios only; defaults to16:9minimax-h3-reference-to-video: supports all options below; defaults toadaptiveminimax-h3-image-to-video,minimax-h3-max-image-to-video: the model automatically adapts the output aspect ratio to the input image; do not send this parameter in image-to-video requests
Available values:
adaptive: reference-to-video only; the model selects a suitable ratio from the reference assets and prompt16:9: Landscape21:9: Ultrawide4:3: Standard landscape1:1: Square3:4: Standard portrait9:16: Portrait
adaptive, 16:9, 21:9, 4:3, 1:1, 3:4, 9:16 "16:9"
HTTPS callback URL for task completion
Callback timing:
- Triggered when the task is completed or failed
- Sent after billing confirmation is complete
Security restrictions:
- Only HTTPS protocol is supported
- Callbacks to private IP addresses are prohibited (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)
- URL length must not exceed
2048characters
Callback mechanism:
- Timeout:
10seconds - Up to
3retries after failure (at1/2/4seconds after failure respectively) - Callback response body format is consistent with the task query endpoint response format
- A 2xx status code is considered successful; other status codes trigger retries
Applicable models:
- All 5 Minimax H3 and H3 Max models
^https://"https://your-domain.com/webhooks/video-task-completed"
Response
Video generation task created successfully
Task creation timestamp
1761313744
Task ID
"task-unified-1774857405-abc123"
Actual model name used
"minimax-h3-text-to-video"
Specific type of the task
video.generation.task Task progress percentage (0-100)
0 <= x <= 1000
Task status
pending, processing, completed, failed "pending"
Video task details
Show child attributes
Show child attributes
Output type of the task
text, image, audio, video "video"
Usage and billing information
Show child attributes
Show child attributes