API 参考
Kling 视频
通过 AnyInt 的 OpenAI 风格视频路由创建 Kling 视频任务。只有在需要提供方原生请求体控制时,才使用 Transtreams 原生路由。
Kling 视频生成是异步任务流程。先创建任务并保存返回的视频 ID,然后轮询视频状态路由,直到任务进入终态。
新的集成推荐使用 OpenAI 风格视频路由。该路由接受 kling-3.0、kling-v3-omni 等 AnyInt 公开模型 ID,并适配到底层 Kling 提供方路由。
Base URL
https://api.anyint.ai身份验证
Authorization: Bearer <ANYINT_API_KEY>推荐路由
| 路由 | 用途 |
|---|---|
POST /openai/v1/videos | 创建 Kling 视频任务 |
GET /openai/v1/videos/{video_id} | 查询任务状态 |
GET /openai/v1/videos/{video_id}/content | 任务完成后下载生成视频内容 |
请求字段
| 字段 | 类型 | 必填 | 含义 | 示例 |
|---|---|---|---|---|
model | 字符串 | 是 | 当前账号可用的 AnyInt 视频模型 ID。Kling Standard/Pro 使用 kling-3.0,Omni 使用 kling-v3-omni。 | kling-3.0 |
prompt | 字符串 | 是 | 描述生成视频的文本指令。 | 一只纸飞机在蓝天中飞行。 |
duration | 整数或字符串 | 否 | 目标视频时长,单位秒。支持值取决于所选模型。 | 5 |
aspect_ratio | 字符串 | 否 | 支持时的输出宽高比。 | 16:9 |
mode | 字符串 | 否 | 支持时的版本选择,使用 std 或 pro。 | std |
generate_audio | 布尔值 | 否 | 所选路由支持时,是否请求生成音频。 | false |
sound | 字符串 | 否 | Omni 兼容请求的音频模式。 | off |
image | 字符串 | 否 | 用作首帧或图生视频参考的公网 HTTPS 图片 URL。 | https://your-domain.com/source.png |
input_reference | 字符串 | 否 | 用作参考的公网 HTTPS 图片 URL 或支持的图像输入。 | https://your-domain.com/source.png |
frame_images | 数组 | 否 | 结构化帧参考。需要时用 role 或 frame_type 标识帧角色。 | [{"url":"https://...","role":"first_frame"}] |
input_references | 数组 | 否 | 所选模型支持时,传入更多图片、视频或音频参考。 | [{"url":"https://...","type":"video"}] |
文生视频示例
curl -X POST "https://api.anyint.ai/openai/v1/videos" \
-H "Authorization: Bearer $ANYINT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-3.0",
"prompt": "一只白色纸飞机在蓝天中缓慢飞行,稳定镜头,柔和日光。",
"duration": "5",
"aspect_ratio": "16:9",
"mode": "std",
"generate_audio": false
}'图生视频示例
请使用你自己存储中可公网访问的 HTTPS 图片 URL。
curl -X POST "https://api.anyint.ai/openai/v1/videos" \
-H "Authorization: Bearer $ANYINT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-3.0",
"prompt": "让主体以电影感镜头缓慢向前移动,并保持背景一致。",
"image": "https://your-domain.com/source-image.png",
"duration": "5",
"aspect_ratio": "16:9",
"mode": "pro",
"generate_audio": false
}'Omni 参考图示例
需要 Omni 视频模型时使用 kling-v3-omni。
curl -X POST "https://api.anyint.ai/openai/v1/videos" \
-H "Authorization: Bearer $ANYINT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v3-omni",
"prompt": "让参考图中的角色转身看向镜头,保持动画电影质感。",
"input_reference": "https://your-domain.com/person.png",
"frame_images": [
{
"url": "https://your-domain.com/person.png",
"role": "first_frame"
}
],
"duration": "5",
"aspect_ratio": "16:9",
"sound": "off"
}'创建响应
保存返回的 id,后续把它作为 {video_id} 查询状态和下载内容。
| 字段 | 含义 |
|---|---|
id | 用于轮询的视频任务 ID |
object | 对象类型,通常是 video |
status | 初始任务状态,例如 processing |
model | 任务使用的模型 ID |
error | 任务创建失败时的错误详情 |
示例响应:
{
"id": "video_...",
"object": "video",
"status": "processing",
"model": "kling-3.0",
"error": null
}查询状态
curl -X GET "https://api.anyint.ai/openai/v1/videos/$VIDEO_ID" \
-H "Authorization: Bearer $ANYINT_API_KEY"查询响应字段
| 字段 | 含义 |
|---|---|
id | 视频任务 ID |
status | 当前任务状态。completed 表示成功,failed、cancelled 或 canceled 表示终态失败。 |
progress | 提供方返回时的进度值 |
download_url | 任务完成后的生成视频内容路由 |
error | 任务失败时的错误详情 |
完成态示例:
{
"id": "video_...",
"object": "video",
"status": "completed",
"progress": 100,
"model": "kling-3.0",
"download_url": "/v1/videos/video_.../content",
"error": null
}如果 download_url 是相对路径,请基于 OpenAI 兼容 API 前缀解析:
curl -L "https://api.anyint.ai/openai$DOWNLOAD_URL" \
-H "Authorization: Bearer $ANYINT_API_KEY" \
--output kling-video.mp4Transtreams 原生路由
当你需要提供方原生请求体时,仍可以使用 Transtreams 原生路由:
| 路由 | 用途 |
|---|---|
POST /transtreams/kling/v1/videos/text2video | 创建原生文生视频任务 |
POST /transtreams/kling/v1/videos/image2video | 创建原生图生视频任务 |
GET /transtreams/kling/v1/videos/text2video/{task_id} | 查询原生文生视频任务 |
GET /transtreams/kling/v1/videos/image2video/{task_id} | 查询原生图生视频任务 |
POST /transtreams/kling/v1/videos/omni-video | 创建原生 Kling V3 Omni 任务 |
GET /transtreams/kling/v1/videos/omni-video/{task_id} | 查询原生 Kling V3 Omni 任务 |
只有当你的集成已经依赖 model_name、image_list、video_list 等 Transtreams 原生字段时,才使用原生路由。新的集成应优先使用 /openai/v1/videos。
原生 Standard/Pro 请求使用 model_name: "kling-v3",并通过 mode: "std" 或 "pro" 选择版本。原生 Omni 请求使用 model_name: "kling-v3-omni",并调用 /videos/omni-video 路由。
常见错误
- 把 Kling 视频请求发送到 Chat Completions 或 Responses 路由。
- 新集成在
/openai/v1/videos已满足需求时,直接使用/transtreams/kling/...。 - 把
kling-v3-std作为原生model_name,而不是传model_name: "kling-v3"加mode: "std"。 - 把
kling-v3-omni发到原生 Standard/Pro 路由,而不是/transtreams/kling/v1/videos/omni-video。 - 把
processing响应当成已完成视频。必须轮询到终态。 - 下载相对
download_url时漏掉/openai前缀,或没有带Authorization请求头。