POST
/
v3
/
async
/
minimax-video-01
curl --request POST \
  --url https://api.novita.ai/v3/async/minimax-video-01 \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: <content-type>' \
  --data '{
  "prompt": "<string>",
  "image_url": "<string>",
  "enable_prompt_expansion": true
}'
{
  "task_id": "<string>"
}

Minimax Video-01 (also known as Hailuo) is an AI video generation model that creates 6-second videos at 720p resolution and 25fps. It supports both text-to-video and image-to-video generation, and can incorporate subject references to create character-based videos using the S2V-01 model.

This is an asynchronous API; only the task_id will be returned. You should use the task_id to request the Task Result API to retrieve the video generation results.

Request Headers

Content-Type
string
required

Supports: application/json

Authorization
string
required

Bearer authentication format, for example: Bearer {{API Key}}.

Request Body

prompt
string
required

Prompt text required to guide the generation.

Range: 1 <= x <= 2000.

image_url
string

The URL of the first frame image to be used for video generation.

enable_prompt_expansion
boolean

Whether to enable prompt optimization.

Default: true.

Response

task_id
string
required

Use the task_id to request the Task Result API to retrieve the generated outputs.

Example

Here is an example of how to use the Minimax Video-01 API.

  1. Generate a task_id by sending a POST request to the Minimax Video-01 API.

Request:

curl --location 'https://api.novita.ai/v3/async/minimax-video-01' \
--header 'Authorization: Bearer {{API Key}}' \
--header 'Content-Type: application/json' \
--data '{
    "prompt": "A cute panda is walking in the grassland slowly",
    "image_url": "https://pub-f964a1c641c04024bce400ad128c8cd6.r2.dev/minimax-video-01-image.jpg",
    "enable_prompt_expansion": True,
}'

Response:

{
    "task_id": "{Returned Task ID}"
}
  1. Use task_id to get output videos.

HTTP status codes in the 2xx range indicate that the request has been successfully accepted, while status codes in the 5xx range indicate internal server errors.

You can get videos url in videos of response.

Request:

curl --location --request GET 'https://api.novita.ai/v3/async/task-result?task_id={Returned Task ID}' \
--header 'Authorization: Bearer {{API Key}}'

Response:

{
    "task": {
        "task_id": "{Returned Task ID}",
        "task_type": "MINIMAX_VIDEO_01",
        "status": "TASK_STATUS_SUCCEED",
        "reason": "",
        "eta": 0,
        "progress_percent": 100
    },
    "images": [],
    "videos": [
        {
            "video_url": "{The URL of the generated video}",
            "video_url_ttl": "3600",
            "video_type": "mp4"
        }
    ]
}

Video files: