Get API Key Get API
Docs

MiniMax-Hailuo-2.3 Video Generation

- Async processing mode, returns task ID for subsequent queries

  • Supports text-to-video, image-to-video (first frame image)
  • Supports 6s and 10s duration, 768p/1080p resolution
  • Supports 15 camera movement commands, prompt auto-optimization, and watermark control

Request example

curl --request POST \
  --url https://api.openveer.com/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "MiniMax-Hailuo-2.3",
    "prompt": "A cute kitten running on the grass",
    "duration": 6,
    "resolution": "768p",
    "prompt_optimizer": true,
    "fast_pretreatment": false,
    "watermark": false
  }'

Response example

{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
    }
  ]
}

Authorization

Authorization string

All API endpoints require Bearer Token authentication

Get your API Key:

Visit the API Key Management Page to get your API Key

Add to the request header:

Authorization: Bearer YOUR_API_KEY

Request Parameters

model string

Supported models:

  • MiniMax-Hailuo-2.3 - Hailuo 2.3
  • MiniMax-Hailuo-2.3-Fast - Hailuo 2.3 Fast (lower latency)

Warning



MiniMax-Hailuo-2.3-Fast:


With this model, first_frame_image is required.

nsfw_check boolean

Whether to run content moderation before submitting the video task.

  • true: use omni-moderation-latest to review prompts and input images
  • false or omitted: do not send a moderation request, adding no moderation cost or latency (default)
prompt string

Video content description (max 2000 characters)

Describe scenes, actions, styles in detail for better generation results. Supports camera movement commands (see Camera Movement Commands below).

Example: "A cute kitten running on the grass"

duration integer

Video duration (seconds)

Options:

  • 6 - 6-second video
  • 10 - 10-second video

Default: 6

Warning



1080p Limitation: When using 1080p resolution, only 6-second duration is supported

resolution string

Video resolution

Options:

  • 768p - High definition
  • 1080p - Full HD (only supports 6-second duration)

Default: 768p

first_frame_image string

First frame image for the video

Supports two formats:

  • Public URL: https://example.com/start.jpg
  • Base64 encoded: data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABg...

When provided, this image will be used as the starting frame of the video

Warning



MiniMax-Hailuo-2.3-Fast:


With this model, first_frame_image is required.

prompt_optimizer boolean

Whether to auto-optimize the prompt

When enabled, the system will automatically optimize your prompt for better generation results

Default: true

fast_pretreatment boolean

Whether to shorten prompt optimization time

When enabled, processing speed is faster but optimization quality may be slightly affected

Default: false

watermark boolean

Whether to add watermark

Default: false

Resolution and Duration Combinations

Resolution Supported Duration Notes
768p 6s, 10s All supported
1080p 6s 10s not supported

Camera Movement Commands

Use [command] syntax in the prompt to control camera movements. The command labels must be entered exactly as the Chinese labels shown below. 15 commands are supported:

Category Commands
Pan [左移] (pan left) [右移] (pan right)
Horizontal Rotate [左摇] (rotate left) [右摇] (rotate right)
Push/Pull [推进] (push in) [拉远] (pull out)
Vertical Move [上升] (rise) [下降] (descend)
Vertical Rotate [上摇] (tilt up) [下摇] (tilt down)
Zoom [变焦推近] (zoom in) [变焦拉远] (zoom out)
Other [晃动] (shake) [跟随] (follow) [固定] (static)

Usage example:

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "[推进]A cat running in the garden, camera slowly pushing in for a close-up"
}

Response

code integer

Response status code, 200 on success

data array
Response data array
status string

Task status, submitted when initially submitted

task_id string

Unique task identifier for querying task status and results

Use Cases

Case 1: Quick Text-to-Video

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "A cute kitten running on the grass, sunny day"
}

Case 2: High-Quality 1080p Video

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "City nightscape, neon lights flickering, traffic flowing",
  "duration": 6,
  "resolution": "1080p",
  "prompt_optimizer": true,
  "watermark": false
}

Case 3: Image-to-Video with First Frame

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "Kitten running towards camera, smiling and blinking",
  "first_frame_image": "https://example.com/cat.jpg",
  "duration": 6,
  "resolution": "1080p"
}

Case 4: Camera Movement Commands

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "[推进]A cat running in the garden, camera slowly pushing in for a close-up",
  "duration": 6,
  "resolution": "768p"
}

Case 5: Fast Pretreatment Mode

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "Waves crashing on the beach at sunset",
  "duration": 10,
  "resolution": "768p",
  "prompt_optimizer": true,
  "fast_pretreatment": true
}
Note

Query Task Results

Video generation is an async task that returns a task_id upon submission. Use the Get Task Status endpoint to query generation progress and results.

This documentation is built and hosted on Mintlify, a developer documentation platform.