Minimax Hailuo 02 Standard
Playground
Try it on WavespeedAI!Hailuo 02 is an AI video-generation model delivering 768P output with fast responsiveness and strong handling of complex physics scenes. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Features
minimax/hailuo-02/standard
Hailuo 02 Standard is the unified model on MiniMax’s framework. It generates cinematic clips with 768p clarity, strong prompt adherence, believable physics, and smooth temporal transitions. Use it as pure T2V (text only) or guided I2V (add a start image, optional end image for a planned transition).
Why creators like it
- One endpoint, two modes — Text-to-Video or Image-guided Video.
- Native 768p — crisp frames, not upscaled.
- 6s / 10s clips — quick iteration or trailer pacing.
- Physics & motion — debris, cloth, water, handheld shake look natural.
- Stable & repeatable — good consistency across re-runs.
Parameters
| Name | Description |
|---|---|
| prompt* | Describe scene, lighting, motion, and camera. |
| image | (Optional) Use a reference/first frame (JPG/PNG) to lock composition & style. |
| end_image | (Optional) Target frame for a guided transition. |
| duration | 6s or 10s. |
| enable_prompt_expansion | Auto-refines prompt and runs a safety check. |
Pricing
| Duration | Cost per job | Resolution |
|---|---|---|
| 6 s | $0.23 | 768p |
| 10 s | $0.56 | 768p |
How to use (short)
- Write a prompt (include camera + motion + lighting).
- (Optional) Add image (and end_image for a transition).
- Pick duration (6s/10s), keep prompt expansion on.
- Run → review → tweak prompt → re-run.
Example prompts
- A boy and his dog race along the beach at sunset; camera tracks low and wide, warm reflections on wet sand, gentle spray, cinematic grade.
- Slow orbit around a neon-lit street food stall in the rain; steam and bokeh, handheld vibe, rack focus to the chef’s hands.
Authentication
For authentication details, please refer to the Authentication Guide.
API Endpoints
Submit Task & Query Result
# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/minimax/hailuo-02/standard" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"duration": 6,
"enable_prompt_expansion": false
}'
# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"
Parameters
Task Submission Parameters
Request Parameters
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
| prompt | string | Yes | - | The positive prompt for the generation. | |
| image | string | No | - | The model generates video with the picture passed in as the first frame.Base64 encoded strings in data:image/jpeg; base64,{data} format for incoming images, or URLs accessible via the public network. The uploaded image needs to meet the following conditions: Format is JPG/JPEG/PNG; The aspect ratio is greater than 2:5 and less than 5:2; Short side pixels greater than 300px; The image file size cannot exceed 20MB. | |
| end_image | string | No | - | - | The model generates video with the picture passed in as the last frame.Base64 encoded strings in data:image/jpeg; base64,{data} format for incoming images, or URLs accessible via the public network. The uploaded image needs to meet the following conditions: Format is JPG/JPEG/PNG; The aspect ratio is greater than 2:5 and less than 5:2; Short side pixels greater than 300px; The image file size cannot exceed 20MB. |
| duration | integer | No | 6 | 6, 10 | The duration of the generated media in seconds. |
| enable_prompt_expansion | boolean | No | false | - | The model automatically optimizes incoming prompts to enhance output quality. This also activates the safety checker, which ensures content safety by detecting and filtering potential risks. |
Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data.id | string | Unique identifier for the prediction, Task Id |
| data.model | string | Model ID used for the prediction |
| data.outputs | array | Array of URLs to the generated content (empty when status is not completed) |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |