跳转到主要内容
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": "kling-video-o1",
    "prompt": "让<<<image_1>>>中的人物向镜头挥手",
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9",
    "metadata": {
      "image_list": [{"image_url": "https://example.com/portrait.jpg"}]
    }
  }'
{
  "id": "video_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ",
  "object": "generation.task",
  "model": "kling-video-o1",
  "status": "queued",
  "progress": 0,
  "created_at": 1768380224,
  "metadata": {}
}

Documentation Index

Fetch the complete documentation index at: https://docs.toapis.com/llms.txt

Use this file to discover all available pages before exploring further.

  • 异步处理模式,返回任务 ID 供后续查询
  • 推理增强模型,生成最高质量视频
  • 使用官方 Omni 引用结构,支持 image_listvideo_listelement_list
  • 支持标准模式(720P)和专业模式(1080P)
  • 支持参考视频编辑和特征参考
请传入公网可访问的图片或视频 URL。不要直接传 base64 图片数据;本地图片请先使用 上传图片接口 获取 URL。

认证

Authorization
string
必填
所有接口均需要使用 Bearer Token 进行认证获取 API Key:访问 API Key 管理页面 获取您的 API Key使用时在请求头中添加:
Authorization: Bearer YOUR_API_KEY

请求参数

model
string
必填
视频生成模型名称,固定为 kling-video-o1
prompt
string
必填
文字提示词,支持官方 Omni 占位符,编号从 1 开始:
  • <<<image_N>>> 引用 metadata.image_list
  • <<<video_N>>> 引用 video_list
  • <<<element_N>>> 引用 metadata.element_list
示例:"让<<<image_1>>>中的人物向镜头挥手"
引用列表顺序必须与 prompt 中对应占位符顺序一致;系统不会自动补首帧或自动插入占位符。
client_business_id
string
客户侧业务 ID,例如订单号、流水号或您系统内的任务 ID。提交后会随任务保存,后续可用该 ID 查询状态: GET /v1/videos/generations/{client_business_id}也兼容放在 metadata.client_business_id 中,但推荐使用顶层字段。
mode
string
默认值:"std"
生成模式可选值:
  • std - 标准模式(720P)
  • pro - 专业模式(1080P)
默认值:std
duration
integer
默认值:"5"
视频时长(秒)可选值:510默认值:5
aspect_ratio
string
默认值:"16:9"
视频宽高比可选值:
  • 16:9 - 横屏(默认)
  • 9:16 - 竖屏
  • 1:1 - 方形
默认值:16:9
video_list
object[]
参考视频列表,最多 1 段视频每个对象包含以下字段:
  • video_url 不能为空,且视频 URL 需可访问
  • refer_type=base 时:不能定义视频首尾帧;参考视频需 3–10 秒;生成视频时长以上传视频为准
  • 有视频参考时不要同时开启 audio / sound
metadata
object
扩展参数

Omni 引用语法

Video O1 使用官方 Omni 占位符引用输入素材:
语法说明
<<<image_1>>>引用 metadata.image_list 第 1 张图片
<<<video_1>>>引用 video_list 第 1 段视频
<<<element_1>>>引用 metadata.element_list 第 1 个主体/角色
image_listvideo_listelement_list 的顺序必须分别与 prompt 中对应占位符的顺序一致。

响应

id
string
任务唯一标识符,用于查询任务状态
client_business_id
string
客户侧业务 ID。仅当请求中传入 client_business_id 时返回。
object
string
对象类型,固定为 generation.task
model
string
使用的模型名称
status
string
任务状态
  • queued - 排队等待处理
  • in_progress - 处理中
  • completed - 成功完成
  • failed - 失败
progress
integer
任务进度百分比(0-100)
created_at
integer
任务创建时间戳(Unix 时间戳)
metadata
object
任务元数据

使用场景

场景 1:文生视频(最高质量)

{
  "model": "kling-video-o1",
  "client_business_id": "order_20260428_001",
  "prompt": "黄金时刻的城市天际线,电影质感镜头",
  "mode": "pro",
  "duration": 5,
  "aspect_ratio": "16:9"
}

场景 2:图片引用(单张)

{
  "model": "kling-video-o1",
  "prompt": "让<<<image_1>>>中的人物向镜头挥手",
  "mode": "pro",
  "duration": 5,
  "metadata": {
    "image_list": [
      {
        "image_url": "https://example.com/portrait.jpg"
      }
    ]
  }
}

场景 3:多图片引用

{
  "model": "kling-video-o1",
  "prompt": "<<<image_1>>>中的角色走向<<<image_2>>>中的场景",
  "mode": "pro",
  "duration": 5,
  "metadata": {
    "image_list": [
      {"image_url": "https://example.com/character.jpg"},
      {"image_url": "https://example.com/scene.jpg"}
    ]
  }
}

场景 4:参考视频编辑(video_list - base)

{
  "model": "kling-video-o1",
  "prompt": "将视频中的背景替换为海边日落",
  "video_list": [
    {
      "video_url": "https://example.com/source-video.mp4",
      "refer_type": "base",
      "keep_original_sound": "no"
    }
  ]
}

场景 5:特征参考视频(video_list - feature)

{
  "model": "kling-video-o1",
  "prompt": "<<<element_1>>>中的人物模仿<<<video_1>>>中的动作",
  "video_list": [
    {
      "video_url": "https://example.com/dance-reference.mp4",
      "refer_type": "feature",
      "keep_original_sound": "no"
    }
  ],
  "mode": "std",
  "duration": 5,
  "metadata": {
    "element_list": [
      {
        "url": "https://example.com/character.jpg",
        "type": "image",
        "role": "subject"
      }
    ]
  }
}
查询任务结果视频生成为异步任务,提交后会返回任务 ID。使用 获取任务状态 接口查询生成进度和结果。
curl --request POST \
  --url https://toapis.com/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "kling-video-o1",
    "prompt": "让<<<image_1>>>中的人物向镜头挥手",
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9",
    "metadata": {
      "image_list": [{"image_url": "https://example.com/portrait.jpg"}]
    }
  }'
{
  "id": "video_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ",
  "object": "generation.task",
  "model": "kling-video-o1",
  "status": "queued",
  "progress": 0,
  "created_at": 1768380224,
  "metadata": {}
}