创建图生视频任务
curl --request POST \
--url https://ai.alad.com/kling/v1/videos/image2video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model_name": "kling-v2-master",
"image": "<string>",
"image_tail": "<string>",
"prompt": "<string>",
"negative_prompt": "<string>",
"mode": "std",
"duration": "5",
"cfg_scale": 0.5,
"multi_shot": false,
"multi_prompt": [
{
"index": 123,
"prompt": "<string>",
"duration": "<string>"
}
],
"element_list": [
{
"element_id": 123
}
],
"sound": "off",
"camera_control": {
"config": {
"horizontal": 123,
"vertical": 123,
"pan": 123,
"tilt": 123,
"roll": 123,
"zoom": 123
}
},
"static_mask": "<string>",
"dynamic_masks": [
{
"mask": "<string>",
"trajectories": [
{
"x": 123,
"y": 123
}
]
}
],
"watermark_info": {
"enabled": true
},
"callback_url": "<string>",
"external_task_id": "<string>"
}
'import requests
url = "https://ai.alad.com/kling/v1/videos/image2video"
payload = {
"model_name": "kling-v2-master",
"image": "<string>",
"image_tail": "<string>",
"prompt": "<string>",
"negative_prompt": "<string>",
"mode": "std",
"duration": "5",
"cfg_scale": 0.5,
"multi_shot": False,
"multi_prompt": [
{
"index": 123,
"prompt": "<string>",
"duration": "<string>"
}
],
"element_list": [{ "element_id": 123 }],
"sound": "off",
"camera_control": { "config": {
"horizontal": 123,
"vertical": 123,
"pan": 123,
"tilt": 123,
"roll": 123,
"zoom": 123
} },
"static_mask": "<string>",
"dynamic_masks": [
{
"mask": "<string>",
"trajectories": [
{
"x": 123,
"y": 123
}
]
}
],
"watermark_info": { "enabled": True },
"callback_url": "<string>",
"external_task_id": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model_name: 'kling-v2-master',
image: '<string>',
image_tail: '<string>',
prompt: '<string>',
negative_prompt: '<string>',
mode: 'std',
duration: '5',
cfg_scale: 0.5,
multi_shot: false,
multi_prompt: [{index: 123, prompt: '<string>', duration: '<string>'}],
element_list: [{element_id: 123}],
sound: 'off',
camera_control: {
config: {horizontal: 123, vertical: 123, pan: 123, tilt: 123, roll: 123, zoom: 123}
},
static_mask: '<string>',
dynamic_masks: [{mask: '<string>', trajectories: [{x: 123, y: 123}]}],
watermark_info: {enabled: true},
callback_url: '<string>',
external_task_id: '<string>'
})
};
fetch('https://ai.alad.com/kling/v1/videos/image2video', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ai.alad.com/kling/v1/videos/image2video",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model_name' => 'kling-v2-master',
'image' => '<string>',
'image_tail' => '<string>',
'prompt' => '<string>',
'negative_prompt' => '<string>',
'mode' => 'std',
'duration' => '5',
'cfg_scale' => 0.5,
'multi_shot' => false,
'multi_prompt' => [
[
'index' => 123,
'prompt' => '<string>',
'duration' => '<string>'
]
],
'element_list' => [
[
'element_id' => 123
]
],
'sound' => 'off',
'camera_control' => [
'config' => [
'horizontal' => 123,
'vertical' => 123,
'pan' => 123,
'tilt' => 123,
'roll' => 123,
'zoom' => 123
]
],
'static_mask' => '<string>',
'dynamic_masks' => [
[
'mask' => '<string>',
'trajectories' => [
[
'x' => 123,
'y' => 123
]
]
]
],
'watermark_info' => [
'enabled' => true
],
'callback_url' => '<string>',
'external_task_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ai.alad.com/kling/v1/videos/image2video"
payload := strings.NewReader("{\n \"model_name\": \"kling-v2-master\",\n \"image\": \"<string>\",\n \"image_tail\": \"<string>\",\n \"prompt\": \"<string>\",\n \"negative_prompt\": \"<string>\",\n \"mode\": \"std\",\n \"duration\": \"5\",\n \"cfg_scale\": 0.5,\n \"multi_shot\": false,\n \"multi_prompt\": [\n {\n \"index\": 123,\n \"prompt\": \"<string>\",\n \"duration\": \"<string>\"\n }\n ],\n \"element_list\": [\n {\n \"element_id\": 123\n }\n ],\n \"sound\": \"off\",\n \"camera_control\": {\n \"config\": {\n \"horizontal\": 123,\n \"vertical\": 123,\n \"pan\": 123,\n \"tilt\": 123,\n \"roll\": 123,\n \"zoom\": 123\n }\n },\n \"static_mask\": \"<string>\",\n \"dynamic_masks\": [\n {\n \"mask\": \"<string>\",\n \"trajectories\": [\n {\n \"x\": 123,\n \"y\": 123\n }\n ]\n }\n ],\n \"watermark_info\": {\n \"enabled\": true\n },\n \"callback_url\": \"<string>\",\n \"external_task_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://ai.alad.com/kling/v1/videos/image2video")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model_name\": \"kling-v2-master\",\n \"image\": \"<string>\",\n \"image_tail\": \"<string>\",\n \"prompt\": \"<string>\",\n \"negative_prompt\": \"<string>\",\n \"mode\": \"std\",\n \"duration\": \"5\",\n \"cfg_scale\": 0.5,\n \"multi_shot\": false,\n \"multi_prompt\": [\n {\n \"index\": 123,\n \"prompt\": \"<string>\",\n \"duration\": \"<string>\"\n }\n ],\n \"element_list\": [\n {\n \"element_id\": 123\n }\n ],\n \"sound\": \"off\",\n \"camera_control\": {\n \"config\": {\n \"horizontal\": 123,\n \"vertical\": 123,\n \"pan\": 123,\n \"tilt\": 123,\n \"roll\": 123,\n \"zoom\": 123\n }\n },\n \"static_mask\": \"<string>\",\n \"dynamic_masks\": [\n {\n \"mask\": \"<string>\",\n \"trajectories\": [\n {\n \"x\": 123,\n \"y\": 123\n }\n ]\n }\n ],\n \"watermark_info\": {\n \"enabled\": true\n },\n \"callback_url\": \"<string>\",\n \"external_task_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://ai.alad.com/kling/v1/videos/image2video")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model_name\": \"kling-v2-master\",\n \"image\": \"<string>\",\n \"image_tail\": \"<string>\",\n \"prompt\": \"<string>\",\n \"negative_prompt\": \"<string>\",\n \"mode\": \"std\",\n \"duration\": \"5\",\n \"cfg_scale\": 0.5,\n \"multi_shot\": false,\n \"multi_prompt\": [\n {\n \"index\": 123,\n \"prompt\": \"<string>\",\n \"duration\": \"<string>\"\n }\n ],\n \"element_list\": [\n {\n \"element_id\": 123\n }\n ],\n \"sound\": \"off\",\n \"camera_control\": {\n \"config\": {\n \"horizontal\": 123,\n \"vertical\": 123,\n \"pan\": 123,\n \"tilt\": 123,\n \"roll\": 123,\n \"zoom\": 123\n }\n },\n \"static_mask\": \"<string>\",\n \"dynamic_masks\": [\n {\n \"mask\": \"<string>\",\n \"trajectories\": [\n {\n \"x\": 123,\n \"y\": 123\n }\n ]\n }\n ],\n \"watermark_info\": {\n \"enabled\": true\n },\n \"callback_url\": \"<string>\",\n \"external_task_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "860260753860210752",
"task_id": "860260753860210752",
"object": "video",
"model": "kling-v2-master",
"status": "<string>",
"progress": 0,
"created_at": 1773130665
}Kuaishou
Kling 2.0 Master 图生视频
使用 kling-v2-master 模型从参考图片生成视频。
POST
/
kling
/
v1
/
videos
/
image2video
创建图生视频任务
curl --request POST \
--url https://ai.alad.com/kling/v1/videos/image2video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model_name": "kling-v2-master",
"image": "<string>",
"image_tail": "<string>",
"prompt": "<string>",
"negative_prompt": "<string>",
"mode": "std",
"duration": "5",
"cfg_scale": 0.5,
"multi_shot": false,
"multi_prompt": [
{
"index": 123,
"prompt": "<string>",
"duration": "<string>"
}
],
"element_list": [
{
"element_id": 123
}
],
"sound": "off",
"camera_control": {
"config": {
"horizontal": 123,
"vertical": 123,
"pan": 123,
"tilt": 123,
"roll": 123,
"zoom": 123
}
},
"static_mask": "<string>",
"dynamic_masks": [
{
"mask": "<string>",
"trajectories": [
{
"x": 123,
"y": 123
}
]
}
],
"watermark_info": {
"enabled": true
},
"callback_url": "<string>",
"external_task_id": "<string>"
}
'import requests
url = "https://ai.alad.com/kling/v1/videos/image2video"
payload = {
"model_name": "kling-v2-master",
"image": "<string>",
"image_tail": "<string>",
"prompt": "<string>",
"negative_prompt": "<string>",
"mode": "std",
"duration": "5",
"cfg_scale": 0.5,
"multi_shot": False,
"multi_prompt": [
{
"index": 123,
"prompt": "<string>",
"duration": "<string>"
}
],
"element_list": [{ "element_id": 123 }],
"sound": "off",
"camera_control": { "config": {
"horizontal": 123,
"vertical": 123,
"pan": 123,
"tilt": 123,
"roll": 123,
"zoom": 123
} },
"static_mask": "<string>",
"dynamic_masks": [
{
"mask": "<string>",
"trajectories": [
{
"x": 123,
"y": 123
}
]
}
],
"watermark_info": { "enabled": True },
"callback_url": "<string>",
"external_task_id": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model_name: 'kling-v2-master',
image: '<string>',
image_tail: '<string>',
prompt: '<string>',
negative_prompt: '<string>',
mode: 'std',
duration: '5',
cfg_scale: 0.5,
multi_shot: false,
multi_prompt: [{index: 123, prompt: '<string>', duration: '<string>'}],
element_list: [{element_id: 123}],
sound: 'off',
camera_control: {
config: {horizontal: 123, vertical: 123, pan: 123, tilt: 123, roll: 123, zoom: 123}
},
static_mask: '<string>',
dynamic_masks: [{mask: '<string>', trajectories: [{x: 123, y: 123}]}],
watermark_info: {enabled: true},
callback_url: '<string>',
external_task_id: '<string>'
})
};
fetch('https://ai.alad.com/kling/v1/videos/image2video', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ai.alad.com/kling/v1/videos/image2video",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model_name' => 'kling-v2-master',
'image' => '<string>',
'image_tail' => '<string>',
'prompt' => '<string>',
'negative_prompt' => '<string>',
'mode' => 'std',
'duration' => '5',
'cfg_scale' => 0.5,
'multi_shot' => false,
'multi_prompt' => [
[
'index' => 123,
'prompt' => '<string>',
'duration' => '<string>'
]
],
'element_list' => [
[
'element_id' => 123
]
],
'sound' => 'off',
'camera_control' => [
'config' => [
'horizontal' => 123,
'vertical' => 123,
'pan' => 123,
'tilt' => 123,
'roll' => 123,
'zoom' => 123
]
],
'static_mask' => '<string>',
'dynamic_masks' => [
[
'mask' => '<string>',
'trajectories' => [
[
'x' => 123,
'y' => 123
]
]
]
],
'watermark_info' => [
'enabled' => true
],
'callback_url' => '<string>',
'external_task_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ai.alad.com/kling/v1/videos/image2video"
payload := strings.NewReader("{\n \"model_name\": \"kling-v2-master\",\n \"image\": \"<string>\",\n \"image_tail\": \"<string>\",\n \"prompt\": \"<string>\",\n \"negative_prompt\": \"<string>\",\n \"mode\": \"std\",\n \"duration\": \"5\",\n \"cfg_scale\": 0.5,\n \"multi_shot\": false,\n \"multi_prompt\": [\n {\n \"index\": 123,\n \"prompt\": \"<string>\",\n \"duration\": \"<string>\"\n }\n ],\n \"element_list\": [\n {\n \"element_id\": 123\n }\n ],\n \"sound\": \"off\",\n \"camera_control\": {\n \"config\": {\n \"horizontal\": 123,\n \"vertical\": 123,\n \"pan\": 123,\n \"tilt\": 123,\n \"roll\": 123,\n \"zoom\": 123\n }\n },\n \"static_mask\": \"<string>\",\n \"dynamic_masks\": [\n {\n \"mask\": \"<string>\",\n \"trajectories\": [\n {\n \"x\": 123,\n \"y\": 123\n }\n ]\n }\n ],\n \"watermark_info\": {\n \"enabled\": true\n },\n \"callback_url\": \"<string>\",\n \"external_task_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://ai.alad.com/kling/v1/videos/image2video")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model_name\": \"kling-v2-master\",\n \"image\": \"<string>\",\n \"image_tail\": \"<string>\",\n \"prompt\": \"<string>\",\n \"negative_prompt\": \"<string>\",\n \"mode\": \"std\",\n \"duration\": \"5\",\n \"cfg_scale\": 0.5,\n \"multi_shot\": false,\n \"multi_prompt\": [\n {\n \"index\": 123,\n \"prompt\": \"<string>\",\n \"duration\": \"<string>\"\n }\n ],\n \"element_list\": [\n {\n \"element_id\": 123\n }\n ],\n \"sound\": \"off\",\n \"camera_control\": {\n \"config\": {\n \"horizontal\": 123,\n \"vertical\": 123,\n \"pan\": 123,\n \"tilt\": 123,\n \"roll\": 123,\n \"zoom\": 123\n }\n },\n \"static_mask\": \"<string>\",\n \"dynamic_masks\": [\n {\n \"mask\": \"<string>\",\n \"trajectories\": [\n {\n \"x\": 123,\n \"y\": 123\n }\n ]\n }\n ],\n \"watermark_info\": {\n \"enabled\": true\n },\n \"callback_url\": \"<string>\",\n \"external_task_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://ai.alad.com/kling/v1/videos/image2video")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model_name\": \"kling-v2-master\",\n \"image\": \"<string>\",\n \"image_tail\": \"<string>\",\n \"prompt\": \"<string>\",\n \"negative_prompt\": \"<string>\",\n \"mode\": \"std\",\n \"duration\": \"5\",\n \"cfg_scale\": 0.5,\n \"multi_shot\": false,\n \"multi_prompt\": [\n {\n \"index\": 123,\n \"prompt\": \"<string>\",\n \"duration\": \"<string>\"\n }\n ],\n \"element_list\": [\n {\n \"element_id\": 123\n }\n ],\n \"sound\": \"off\",\n \"camera_control\": {\n \"config\": {\n \"horizontal\": 123,\n \"vertical\": 123,\n \"pan\": 123,\n \"tilt\": 123,\n \"roll\": 123,\n \"zoom\": 123\n }\n },\n \"static_mask\": \"<string>\",\n \"dynamic_masks\": [\n {\n \"mask\": \"<string>\",\n \"trajectories\": [\n {\n \"x\": 123,\n \"y\": 123\n }\n ]\n }\n ],\n \"watermark_info\": {\n \"enabled\": true\n },\n \"callback_url\": \"<string>\",\n \"external_task_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "860260753860210752",
"task_id": "860260753860210752",
"object": "video",
"model": "kling-v2-master",
"status": "<string>",
"progress": 0,
"created_at": 1773130665
}授权
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
请求体
application/json
模型名称
可用选项:
kling-v2-master 示例:
"kling-v2-master"
参考图片(首帧)。Base64 或 URL。格式:.jpg/.jpeg/.png,≤10MB,最小 300px。
参考图片(尾帧)。image 和 image_tail 至少填一个。
正向提示词。multi_shot 为 false 时必填。
Maximum string length:
2500负向提示词。
Maximum string length:
2500std:标准模式。pro:专业模式(画质更好)。
可用选项:
std, pro 视频时长(秒),3-15。
可用选项:
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 提示词相关性(0-1),值越高越贴合。
必填范围:
0 <= x <= 1是否启用多镜头分镜。
分镜方式。
可用选项:
customize, intelligence 分镜信息(1-6 个镜头)。
Show child attributes
Show child attributes
参考元素(最多 3 个)。
Show child attributes
Show child attributes
是否生成音效。仅 V2.6+。
可用选项:
on, off 运镜控制。
Show child attributes
Show child attributes
静态笔刷蒙版(Base64 或 URL)。
动态笔刷配置(最多 6 组)。
Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I

