Skip to main content
POST
Kling 3.0 & 3.0 Omni
参数及使用方式已对齐官方,详细参数可直接参考官方文档。

一、概述

本文档说明如何通过 Kling 3.0 原厂协议使用文生视频、图生视频、Omni 视频和动作控制能力。 四种能力均采用异步任务模式:
  1. 调用对应的创建接口。
  2. 保存创建响应中的 data.id。
  3. 使用创建任务时的同一个 API Key 查询任务状态。
  4. 任务成功后,从 outputs 中获取并保存生成的视频。

1.1 接口地址

本文示例中的完整地址为 https://{api_domain} 加上表中的接口路径,其中 {api_domain} 为您使用的 API 域名。

1.2 鉴权

所有请求都需要携带 API Key。POST 请求还必须指定 JSON 内容类型:

1.3 响应结构

创建响应中的 data 为对象,常见字段如下: 查询响应中的 data 为数组,每个任务包含以下字段: outputs 中的视频结果常见字段为 type、id、url、watermark_url 和 duration。其中 url 是无水印结果地址,watermark_url 是带水印结果地址,duration 为视频时长(秒)。

二、文生视频

官方参数说明:Text to Video

2.1 创建任务

常用请求字段: multi_shot=true 时可以按 Kling 官方格式在提示词中描述多镜头;每个镜头的时长之和应等于视频总时长。

2.2 创建示例

创建成功后返回任务 ID:

2.3 查询任务

请保存 data.id。未传 options.external_task_id 时,data.external_id 可能不返回。 请使用创建任务时的同一个 API Key。任务 ID 不存在或不可访问时会返回 task not found。 也可以使用 external_task_ids 查询自定义任务 ID:
task_ids 和 external_task_ids 每次必须且只能填写一个。两者均支持用英文逗号分隔 1–50 个 ID,响应中的 data 为数组并保持请求 ID 的顺序。

2.4 查询示例

任务成功时返回:
status=processing 表示任务仍在执行,建议每隔 10–30 秒查询一次;status=failed 表示任务失败,不应继续轮询。任务成功后,请及时保存 outputs[type=video].url 对应的文件,下载地址可能存在有效期。

2.5 计费说明

价格档位由 settings.resolution 和 settings.audio 决定。例如,1080p、audio=native、duration=5 的费用为“1080p 原生音频档每秒单价 × 5 秒”。未传 duration 时按默认 5 秒计费。 创建任务时按请求时长扣费;如果任务创建失败或最终生成失败,费用会自动退回。具体单价以您所使用服务的价格页面为准。

三、图生视频

官方参数说明:Image to Video

3.1 创建任务

常用请求字段: contents 子项字段: 图片支持 .jpg、.jpeg 和 .png,文件不超过 50 MB,宽高不小于 300 像素,宽高比需在 1:2.5 到 2.5:1 之间。

3.2 创建示例

创建成功时,data.id 为后续查询使用的任务 ID:

3.3 查询任务

使用创建响应中的 data.id 查询任务:
通过 task_ids 查询时,请使用创建任务时的同一个 API Key。也可以通过 external_task_ids 查询创建时传入的 options.external_task_id。查询参数支持 1–50 个英文逗号分隔的 ID。

3.4 查询示例

任务成功时,视频地址位于 outputs[type=video].url:
status=processing 时建议每隔 10–30 秒继续查询;status=failed 时停止轮询并根据错误信息修正输入。

3.5 计费说明

价格档位由 settings.resolution 和 settings.audio 决定,未传 duration 时按默认 5 秒计费。创建任务时按请求时长扣费;如果任务创建失败或最终生成失败,费用会自动退回。具体单价以您所使用服务的价格页面为准。

四、Omni 视频

官方参数说明:Omni Video

4.1 创建任务

常用请求字段: contents 子项字段: 图片支持 .jpg、.jpeg 和 .png,文件不超过 50 MB,宽高不小于 300 像素,宽高比需在 1:2.5 到 2.5:1 之间。视频支持 .mp4 和 .mov,文件不超过 200 MB,时长为 3–15.5 秒。 音频组合规则:
  • feature_video(特征参考视频):audio 只能为 off(不支持音画同出),且 multi_shot 只能为 true。
  • base_video(待编辑视频):audio 不能为 native(可为 off 或 original),且不支持多镜头。audio=original 仅适用于包含参考视频的请求。
  • 不包含视频输入时,可使用 audio=off 或 audio=native。

4.2 创建示例

以下示例使用参考图片生成视频:
创建成功时返回:

4.3 查询任务

使用创建响应中的 data.id 查询任务:
通过 task_ids 查询时,请使用创建任务时的同一个 API Key。也可以通过 external_task_ids 查询创建时传入的 options.external_task_id。查询参数支持 1–50 个英文逗号分隔的 ID。

4.4 查询示例

任务成功时返回:
status=processing 时建议每隔 10–30 秒继续查询;status=failed 时停止轮询并根据错误信息修正输入。

4.5 计费说明

Omni 的价格档位按以下顺序判断:
  1. contents 中包含 feature_video 或 base_video:使用对应分辨率的视频输入档。
  2. 未使用视频输入且 settings.audio=native:使用对应分辨率的原生音频档。
  3. 其他情况:使用对应分辨率的基础档。
未传 duration 时按默认 5 秒计费。创建任务时按请求时长扣费;如果任务创建失败或最终生成失败,费用会自动退回。具体单价以您所使用服务的价格页面为准。

五、动作控制

官方参数说明:Motion Control

5.1 创建任务

常用请求字段: contents 子项字段: 图片支持 .jpg、.jpeg 和 .png,文件不超过 50 MB,宽高不小于 300 像素,宽高比需在 1:2.5 到 2.5:1 之间。视频支持 .mp4 和 .mov,文件不超过 100 MB,时长至少 3 秒;时长上限取决于 character_orientation:参考视频时最长 30 秒,参考图片时最长 10 秒。 character_orientation=image 表示生成人物朝向参考图片;character_orientation=video 表示生成人物朝向参考视频。动作控制不支持 4k 和 audio=native。

5.2 创建示例

创建成功时返回:

5.3 查询任务

使用创建响应中的 data.id 查询任务:
通过 task_ids 查询时,请使用创建任务时的同一个 API Key。也可以通过 external_task_ids 查询创建时传入的 options.external_task_id。查询参数支持 1–50 个英文逗号分隔的 ID。

5.4 查询示例

任务成功时返回:
status=processing 时建议每隔 10–30 秒继续查询;status=failed 时停止轮询并根据错误信息修正输入。

5.5 计费说明

动作控制的价格档位由 settings.resolution 决定。任务成功后,按照响应中 outputs[type=video].duration 的实际时长收费;任务失败不收费。具体单价以您所使用服务的价格页面为准。

六、常见错误和注意事项

接口错误采用以下结构:
request_id 在部分错误中可能为空。如果 message 包含 trace_id,联系技术支持时请一并提供。 其他注意事项:
  • 请求体不需要增加 model 或 model_name,模型版本已包含在 URL 中。
  • 各接口章节列出该能力的专用字段;未列出的官方扩展字段请以对应的 Kling 官方文档为准。
  • 创建任务后请持久化 data.id,不要把 request_id 当作任务 ID;request_id 只是单次 HTTP 请求的标识。
  • 单次请求体最大 64 MB;较大的图片或视频建议使用 Kling 可公开访问的公网 URL。
  • 输入素材 URL 必须可被 Kling 公开访问,不能依赖内网、Cookie 或临时登录状态。
  • 使用 external_task_id 时,请生成不可猜测且全局唯一的值,并妥善保存。
  • 查询接口使用 10–30 秒轮询间隔,并设置整体超时和指数退避。
  • POST 超时不代表任务一定没有创建成功;请先用 external_task_id 查询,再决定是否重试。
  • 异步任务失败时,data[].status 为 failed,请根据错误信息修正输入后重新创建,不要继续轮询同一任务。
  • 收到成功状态后请立即保存 outputs[type=video].url 对应文件,结果 URL 可能过期。
  • callback_url 可按 Kling 官方协议传入,但仍建议通过查询接口确认最终状态。

七、Python 调用示例

以下示例使用标准 requests 库,演示文生视频的创建和轮询。图生视频、Omni 和动作控制只需替换创建接口及请求体。
最后修改于 2026年10月15日