curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "MiniMax-Hailuo-02",
"prompt": "城市夜景,霓虹灯闪烁,车流穿梭",
"duration": 6,
"resolution": "1080P"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json",
},
json={
"model": "MiniMax-Hailuo-02",
"prompt": "城市夜景,霓虹灯闪烁,车流穿梭",
"duration": 6,
"resolution": "1080P",
},
)
print(response.json())
const response = await fetch("https://toapis.com/v1/videos/generations", {
method: "POST",
headers: {
Authorization: "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "MiniMax-Hailuo-02",
prompt: "城市夜景,霓虹灯闪烁,车流穿梭",
duration: 6,
resolution: "1080P"
})
});
console.log(await response.json());
{
"id": "vid_01K8SGYNNNVBQTXNR4MM964S7K",
"object": "generation.task",
"model": "MiniMax-Hailuo-02",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}
MiniMax-Hailuo-02
MiniMax-Hailuo-02 视频生成
使用 MiniMax Hailuo 02 模型生成视频,支持文生视频、图生视频和首尾帧生成
POST
/
v1
/
videos
/
generations
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "MiniMax-Hailuo-02",
"prompt": "城市夜景,霓虹灯闪烁,车流穿梭",
"duration": 6,
"resolution": "1080P"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json",
},
json={
"model": "MiniMax-Hailuo-02",
"prompt": "城市夜景,霓虹灯闪烁,车流穿梭",
"duration": 6,
"resolution": "1080P",
},
)
print(response.json())
const response = await fetch("https://toapis.com/v1/videos/generations", {
method: "POST",
headers: {
Authorization: "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "MiniMax-Hailuo-02",
prompt: "城市夜景,霓虹灯闪烁,车流穿梭",
duration: 6,
resolution: "1080P"
})
});
console.log(await response.json());
{
"id": "vid_01K8SGYNNNVBQTXNR4MM964S7K",
"object": "generation.task",
"model": "MiniMax-Hailuo-02",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}
国内用户请注意: 中国大陆用户请使用
https://toapis.cn 作为接口地址(Base URL)。文档示例中的 https://toapis.com 请替换为 https://toapis.cn。- 异步任务接口,提交后返回任务 ID
- 支持模型:
MiniMax-Hailuo-02 - 支持三种生成模式:文生视频、图生视频、首尾帧生成
- 支持 512P / 768P / 1080P 分辨率,6 秒和 10 秒时长
请传入公网可访问的图片 URL。不要在
image_urls 或 metadata 中直接传 base64 图片数据;本地图片请先使用 上传图片接口 获取 URL。认证
string
必填
所有接口均需要使用 Bearer Token 认证。
Authorization: Bearer YOUR_API_KEY
请求参数
string
必填
模型名称,固定为
MiniMax-Hailuo-02。string
视频内容描述,最大 2000 字符。
- 文生视频模式下为必填
- 图生视频和首尾帧模式下为可选(可用于描述期望的运动效果)
[推进]、[拉远]、[左摇,上升] 等),详见下方运镜指令表。示例:"一只猫咪跑向镜头,微笑并眨眼"integer
默认值:"6"
视频时长(秒)。可选值:
6 或 10使用
1080P 分辨率时,仅支持 6 秒时长。string
默认值:"768P"
视频分辨率。可选值:
512P- 标清(图生视频可用)768P- 高清(默认)1080P- 全高清(仅支持 6 秒时长)
string[]
首帧图片 URL 数组。
- 不传:文生视频
- 传 1 张:图生视频,图片作为视频起始帧
- 格式:JPG、JPEG、PNG、WebP
- 大小:小于 20MB
- 尺寸:短边 > 300px,长宽比在 2:5 ~ 5:2 之间
["https://example.com/first-frame.jpg"]object
扩展参数。
显示 显示 metadata 字段
显示 显示 metadata 字段
string
尾帧图片 URL,用于首尾帧生成模式。传入此参数后自动启用首尾帧模式,系统会生成从首帧到尾帧的过渡视频。
- 当同时传入
image_urls(首帧)和last_frame_image(尾帧)时,视频尺寸以首帧为准 - 首帧和尾帧尺寸不一致时,模型会参考首帧对尾帧进行裁剪
- 首尾帧模式不支持 512P 分辨率
image_urls 相同。示例:"https://example.com/last-frame.jpg"boolean
默认值:"true"
是否自动优化 prompt。设为
false 可进行更精确的控制。boolean
默认值:"false"
是否缩短 prompt 优化耗时。启用后可加快处理速度。
boolean
默认值:"false"
是否在生成的视频中添加水印。
string
ToAPIs 最终任务 Webhook。需先配置 Token URL 和签名密钥;详见 任务 Webhook。
三种生成模式
| 模式 | image_urls | metadata.last_frame_image | 说明 |
|---|---|---|---|
| 文生视频 | 不传 | 不传 | 纯文本描述生成视频 |
| 图生视频 | ✅ 传 1 张 | 不传 | 以图片为首帧生成视频 |
| 首尾帧生成 | ✅ 传 1 张(首帧) | ✅ 传入(尾帧) | 生成从首帧到尾帧的过渡视频 |
分辨率与时长组合
| 分辨率 | 支持的时长 | 文生视频 | 图生视频 | 首尾帧 |
|---|---|---|---|---|
| 512P | 6 秒、10 秒 | ✅ | ✅ | ❌ |
| 768P | 6 秒、10 秒 | ✅ | ✅ | ✅ |
| 1080P | 6 秒 | ✅ | ✅ | ✅ |
运镜指令
在prompt 中使用 [指令] 语法控制运镜效果:
| 类别 | 指令 |
|---|---|
| 平移 | [左移] [右移] |
| 左右摇 | [左摇] [右摇] |
| 推拉 | [推进] [拉远] |
| 升降 | [上升] [下降] |
| 上下摇 | [上摇] [下摇] |
| 变焦 | [变焦推近] [变焦拉远] |
| 其他 | [晃动] [跟随] [固定] |
- 组合运镜:同一
[]内多个指令同时生效,如[左摇,上升],建议不超过 3 个 - 顺序运镜:prompt 中前后出现的指令依次生效,如
"...[推进],然后...[拉远]"
响应
string
任务 ID,用于查询任务状态。
string
对象类型,固定为
generation.task。string
本次请求使用的模型名称。
string
任务状态:
queued、in_progress、completed 或 failed。integer
任务创建时间戳。
示例
文生视频
{
"model": "MiniMax-Hailuo-02",
"prompt": "城市夜景,霓虹灯闪烁,车流穿梭 [推进]",
"duration": 6,
"resolution": "1080P"
}
图生视频
{
"model": "MiniMax-Hailuo-02",
"prompt": "人物缓缓转身,面带微笑",
"image_urls": ["https://example.com/portrait.jpg"],
"duration": 6,
"resolution": "768P"
}
首尾帧生成
{
"model": "MiniMax-Hailuo-02",
"prompt": "小女孩逐渐长大",
"image_urls": ["https://example.com/child.jpg"],
"duration": 6,
"resolution": "1080P",
"metadata": {
"last_frame_image": "https://example.com/adult.jpg"
}
}
运镜控制
{
"model": "MiniMax-Hailuo-02",
"prompt": "一个人拿起一本书 [上升],然后开始阅读 [固定]",
"duration": 6,
"resolution": "768P"
}
10 秒长视频 + 快速预处理
{
"model": "MiniMax-Hailuo-02",
"prompt": "海浪拍打沙滩,日落时分,金色光芒洒在海面上",
"duration": 10,
"resolution": "768P",
"metadata": {
"prompt_optimizer": true,
"fast_pretreatment": true
}
}
视频生成为异步任务。提交后使用 获取视频任务状态 查询进度和结果。
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "MiniMax-Hailuo-02",
"prompt": "城市夜景,霓虹灯闪烁,车流穿梭",
"duration": 6,
"resolution": "1080P"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json",
},
json={
"model": "MiniMax-Hailuo-02",
"prompt": "城市夜景,霓虹灯闪烁,车流穿梭",
"duration": 6,
"resolution": "1080P",
},
)
print(response.json())
const response = await fetch("https://toapis.com/v1/videos/generations", {
method: "POST",
headers: {
Authorization: "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "MiniMax-Hailuo-02",
prompt: "城市夜景,霓虹灯闪烁,车流穿梭",
duration: 6,
resolution: "1080P"
})
});
console.log(await response.json());
{
"id": "vid_01K8SGYNNNVBQTXNR4MM964S7K",
"object": "generation.task",
"model": "MiniMax-Hailuo-02",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}