curl --request POST \
--url https://api.aiid.edu.kg/kling/v1/videos/text2video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
'import requests
url = "https://api.aiid.edu.kg/kling/v1/videos/text2video"
payload = {
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
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: 'kling-v1',
prompt: '宇航员站起身走了',
duration: 5,
width: 1280,
height: 720,
fps: 30
})
};
fetch('https://api.aiid.edu.kg/kling/v1/videos/text2video', 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://api.aiid.edu.kg/kling/v1/videos/text2video",
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' => 'kling-v1',
'prompt' => '宇航员站起身走了',
'duration' => 5,
'width' => 1280,
'height' => 720,
'fps' => 30
]),
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://api.aiid.edu.kg/kling/v1/videos/text2video"
payload := strings.NewReader("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\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://api.aiid.edu.kg/kling/v1/videos/text2video")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aiid.edu.kg/kling/v1/videos/text2video")
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\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}"
response = http.request(request)
puts response.read_body{
"task_id": "abcd1234efgh",
"status": "queued"
}{
"error": {
"message": "<string>",
"type": "<string>",
"param": "<string>",
"code": "<string>"
}
}Kling Génération de vidéo à partir de texte
Cette série prend en charge le format de génération vidéo OpenAI (voir le lien Formats compatibles pour la génération vidéo Sora).
Utilisez le modèle Kling pour générer des vidéos à partir de descriptions textuelles.
Modèles pris en charge : kling-v1, kling-v1-5, etc.
curl --request POST \
--url https://api.aiid.edu.kg/kling/v1/videos/text2video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
'import requests
url = "https://api.aiid.edu.kg/kling/v1/videos/text2video"
payload = {
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
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: 'kling-v1',
prompt: '宇航员站起身走了',
duration: 5,
width: 1280,
height: 720,
fps: 30
})
};
fetch('https://api.aiid.edu.kg/kling/v1/videos/text2video', 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://api.aiid.edu.kg/kling/v1/videos/text2video",
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' => 'kling-v1',
'prompt' => '宇航员站起身走了',
'duration' => 5,
'width' => 1280,
'height' => 720,
'fps' => 30
]),
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://api.aiid.edu.kg/kling/v1/videos/text2video"
payload := strings.NewReader("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\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://api.aiid.edu.kg/kling/v1/videos/text2video")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aiid.edu.kg/kling/v1/videos/text2video")
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\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}"
response = http.request(request)
puts response.read_body{
"task_id": "abcd1234efgh",
"status": "queued"
}{
"error": {
"message": "<string>",
"type": "<string>",
"param": "<string>",
"code": "<string>"
}
}Autorisations
Utilisez l'authentification Bearer Token.
Format : Authorization: Bearer sk-xxxxxx
Corps
Requête de génération de vidéo
ID du modèle/style
"kling-v1"
Prompt de description textuelle
"宇航员站起身走了"
Entrée d'image (URL ou Base64)
"https://example.com/image.jpg"
Durée de la vidéo (secondes)
5
Largeur de la vidéo
1280
Hauteur de la vidéo
720
Fréquence d'images vidéo
30
Graine aléatoire
20231234
Nombre de vidéos générées
1
Format de réponse
"url"
Identifiant de l'utilisateur
"user-1234"
Paramètres étendus (tels que negative_prompt, style, quality_level, etc.)
