Kling 生视频接口接入说明

Kling 文生视频、图生视频、多图生视频与任务查询

1. 概述

Kling 视频接口采用异步任务模式:创建任务后返回 JobId,再通过查询接口获取状态和视频地址。

  • baseUrl:https://token.soar.qjclouds.cn/laserEr/00000000/v1
  • 创建路径:/video/generations/{apiType}
  • 查询路径:/video/resource-actions/{apiType}
  • 鉴权:Authorization: Bearer <api_key>

2. 鉴权

参数类型必填说明
Authorizationstring是Bearer <api_key>
Content-Typestring是application/json

3. 文生视频

  • apiType:TextToVideo
  • 请求地址:POST https://token.soar.qjclouds.cn/laserEr/00000000/v1/video/generations/TextToVideo

请求参数

参数类型必填说明
modelstring是模型编码,以当前 API Key 已开通的 Kling 模型为准。
promptstring是视频内容或运动描述提示词。
negativePromptstring否反向提示词。
modestring否生成模式,如 std 或 pro。
durationstring是生成时长(秒)。
cfgScalenumber否提示词引导强度。
soundstring否音频开关,on 表示开启。
aspectRatiostring否输出宽高比,如 16:9。
logoAddinteger否平台标识配置开关。
logoParamobject否平台标识详细配置。
multiShotboolean否是否启用多镜头。
shotTypestring否分镜类型;自定义分镜使用 customize。
multiPromptarray<object>否自定义分镜列表。
multiPrompt[].indexinteger条件必填分镜序号。
multiPrompt[].promptstring条件必填分镜提示词。
multiPrompt[].durationstring条件必填分镜持续时长。

请求示例

JSON
{
    "prompt": "圣诞老人与熊在湖边相拥。",
    "negativePrompt": "模糊",
    "model": "kling-v3-cn",
    "mode": "pro",
    "duration": "5",
    "cfgScale": 0.5,
    "sound": "on",
    "aspectRatio": "16:9",
    "logoAdd": 1,
    "logoParam": {},
    "multiShot": false,
    "shotType": "",
    "multiPrompt": []
}

响应参数

参数类型必填说明
Response.JobIdstring是任务 ID,用于查询。
Response.ExternalTaskIdstring否外部任务 ID。
Response.RequestIdstring是请求唯一标识。

响应示例

JSON
{
    "Response": {
        "JobId": "1489871591235862528",
        "ExternalTaskId": "",
        "RequestId": "c7253522-c5e6-40a6-974e-23f9265fd32d"
    }
}

4. 图生视频

  • apiType:ImageToVideo
  • 请求地址:POST https://token.soar.qjclouds.cn/laserEr/00000000/v1/video/generations/ImageToVideo

请求参数

参数类型必填说明
modelstring是模型编码,以当前 API Key 已开通的 Kling 模型为准。
promptstring是视频内容或运动描述提示词。
negativePromptstring否反向提示词。
modestring否生成模式,如 std 或 pro。
durationstring是生成时长(秒)。
cfgScalenumber否提示词引导强度。
soundstring否音频开关,on 表示开启。
aspectRatiostring否输出宽高比,如 16:9。
logoAddinteger否平台标识配置开关。
logoParamobject否平台标识详细配置。
multiShotboolean否是否启用多镜头。
shotTypestring否分镜类型;自定义分镜使用 customize。
multiPromptarray<object>否自定义分镜列表。
multiPrompt[].indexinteger条件必填分镜序号。
multiPrompt[].promptstring条件必填分镜提示词。
multiPrompt[].durationstring条件必填分镜持续时长。
imageobject是输入图片。
image.urlstring是图片公网 URL。
voiceListarray<object>否配音列表。
voiceList[].voiceIdstring是音色 ID。

请求示例

JSON
{
    "prompt": "女孩对着镜头微笑,镜头缓缓拉近。",
    "model": "kling-v3-cn",
    "mode": "std",
    "duration": "5",
    "cfgScale": 0.5,
    "multiShot": true,
    "shotType": "customize",
    "image": {
        "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241022/emyrja/dog_and_girl.jpeg"
    },
    "multiPrompt": [
        {
            "index": 1,
            "prompt": "女孩对着镜头微笑,镜头缓缓拉近。",
            "duration": "5"
        }
    ],
    "voiceList": [
        {
            "voiceId": "1"
        },
        {
            "voiceId": "2"
        }
    ],
    "sound": "on",
    "logoAdd": 88,
    "logoParam": {}
}

响应参数

参数类型必填说明
Response.JobIdstring是任务 ID,用于查询。
Response.ExternalTaskIdstring否外部任务 ID。
Response.RequestIdstring是请求唯一标识。

响应示例

JSON
{
    "Response": {
        "JobId": "1489876328601346048",
        "ExternalTaskId": "",
        "RequestId": "41b2a1d1-c68c-4615-9163-6c5a3b91565c"
    }
}

5. 多图生视频

  • apiType:MultiImageToVideo
  • 请求地址:POST https://token.soar.qjclouds.cn/laserEr/00000000/v1/video/generations/MultiImageToVideo

请求参数

参数类型必填说明
imageListarray<object>是多图输入列表。
imageList[].imagestring是输入图片公网 URL。
modelstring是模型编码,以当前 API Key 已开通的 Kling 模型为准。
promptstring是视频内容或运动描述提示词。
negativePromptstring否反向提示词。
modestring否生成模式,如 std 或 pro。
durationstring是生成时长(秒)。
cfgScalenumber否提示词引导强度。
soundstring否音频开关,on 表示开启。
aspectRatiostring否输出宽高比,如 16:9。
logoAddinteger否平台标识配置开关。
logoParamobject否平台标识详细配置。
multiShotboolean否是否启用多镜头。
shotTypestring否分镜类型;自定义分镜使用 customize。
multiPromptarray<object>否自定义分镜列表。
multiPrompt[].indexinteger条件必填分镜序号。
multiPrompt[].promptstring条件必填分镜提示词。
multiPrompt[].durationstring条件必填分镜持续时长。

请求示例

JSON
{
  "imageList": [
    {
      "image": "https://pics6.baidu.com/feed/8601a18b87d6277fcf10a6e9d53b383ce824fcf5.jpeg@f_auto?token=b119243727fa01347ee3e2fc30eaad8e"
    },
    {
      "image": "https://pics0.baidu.com/feed/8718367adab44aed4fa2003e4f1fa00da08bfb08.jpeg@f_auto?token=17257d2426a8508cd0f60fe6dd970aec"
    }
  ],
  "prompt": "两张图片上的人物合成到一个视频里",
  "negativePrompt": "模糊,低质量,变形",
  "model": "kling-v1-6-cn",
  "mode": "std",
  "duration": "5",
  "aspectRatio": "16:9",
  "logoAdd": 1,
  "logoParam": {}
}

响应参数

参数类型必填说明
Response.JobIdstring是任务 ID,用于查询。
Response.ExternalTaskIdstring否外部任务 ID。
Response.RequestIdstring是请求唯一标识。

响应示例

JSON
{
    "Response": {
        "JobId": "1489882475421122560",
        "ExternalTaskId": "",
        "RequestId": "e1543c48-c30c-44cb-93bf-3ba3c504b496"
    }
}

6. 视频任务查询

  • apiType:QueryVideo
  • 请求地址:POST https://token.soar.qjclouds.cn/laserEr/00000000/v1/video/resource-actions/QueryVideo

请求参数

参数类型必填说明
modelstring是创建任务时使用的模型编码。
taskIdstring是创建任务返回的 Response.JobId。

请求示例

JSON
{
    "model": "kling-v3-cn",
    "taskId": "1489876328601346048"
}

响应参数

参数类型必填说明
Response.Statusstring是任务状态;DONE 表示完成。
Response.ResultVideoUrlstring否成功后的视频地址。
Response.VideoIdstring否视频 ID。
Response.Durationstring否视频时长。
Response.FinalUnitDeductionstring否最终计费单元。
Response.ErrorCodestring否错误码。
Response.ErrorMessagestring否错误说明。
Response.ExternalTaskIdstring否外部任务 ID。
Response.RequestIdstring是请求唯一标识。

响应示例

JSON
{
    "Response": {
        "ErrorMessage": "",
        "ExternalTaskId": "",
        "ResultVideoUrl": "https://vcg-prod-1258344699.cos.ap-guangzhou.tencentcos.cn/text_to_video/results/1419732791/c7253522-c5e6-40a6-974e-23f9265fd32d_1789107467.mp4?q-sign-algorithm=sha1&q-ak=AKID8PcPB70x2Ibr49A1vnkdSBcTJ6lMrLgp&q-sign-time=1789108645%3B1789195044&q-key-time=1789108645%3B1789195044&q-header-list=host&q-url-param-list=&q-signature=3bc3fa10bd668dbd1071e685ef6aef8d8c6d2ed7",
        "VideoId": "927272323273998369",
        "Duration": "5.041",
        "FinalUnitDeduction": "6",
        "RequestId": "9ea933c5-0311-4d5b-a55b-87405eff736e",
        "Status": "DONE",
        "ErrorCode": ""
    }
}