Chuyển đến nội dung chính

Tạo video

Tạo video mang tính bất đồng bộ: gửi tác vụ để nhận một task ID, truy vấn trạng thái, rồi tải kết quả về. Gateway hỗ trợ hai định dạng:

Định dạngGửiTruy vấnGhi chú
Định dạng OpenAI SoraPOST /v1/videosGET /v1/videos/{video_id}Dạng API Sora tiêu chuẩn
Định dạng tác vụ chungPOST /v1/video/generationsGET /v1/video/generations/{task_id}Tác vụ video chung của NewAPI

Định dạng Sora​

Gửi tác vụ​

POST /v1/videos
curl https://test.kailin.com.cn/v1/videos \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-token" \
-d '{
"model": "sora-2",
"prompt": "An orange cat rolling in the snow, slow motion",
"seconds": "10",
"size": "1280x720"
}'
Tham sốKiểuBắt buộcMô tả
modelstringCóMô hình video, ví dụ sora-2, sora-2-pro
promptstringCóMô tả cảnh
secondsstringKhôngThời lượng (ví dụ "4" / "8" / "12", tùy mô hình)
sizestringKhôngĐộ phân giải, ví dụ 1280x720 / 720x1280
input_referencefileKhôngẢnh tham chiếu/khung hình đầu (chỉ với multipart)

Phản hồi (Đối tượng video)​

{
"id": "video_abc123",
"object": "video",
"created_at": 1730000000,
"status": "queued",
"model": "sora-2",
"prompt": "An orange cat rolling in the snow, slow motion",
"size": "1280x720",
"seconds": "10",
"progress": 0
}

Truy vấn tác vụ​

GET /v1/videos/{video_id}
curl https://test.kailin.com.cn/v1/videos/video_abc123 \
-H "Authorization: Bearer sk-your-token"

Chuyển trạng thái status: queued → in_progress → completed / failed, với progress 0–100 trong khi đang chạy.

Tải video xuống​

GET /v1/videos/{video_id}/content

Khi ở trạng thái completed, tải về tệp nhị phân MP4:

curl "https://test.kailin.com.cn/v1/videos/video_abc123/content" \
-H "Authorization: Bearer sk-your-token" \
--output result.mp4

Định dạng tác vụ chung​

Gửi tác vụ​

POST /v1/video/generations
curl https://test.kailin.com.cn/v1/video/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-token" \
-d '{
"model": "kling-v1",
"prompt": "Shuttles flying over a cyberpunk city",
"duration": 5
}'
Tham sốKiểuBắt buộcMô tả
modelstringCóTên mô hình video (xem danh sách mô hình)
promptstringCóMô tả cảnh
image_urlstringKhôngẢnh khung hình đầu cho image-to-video
duration / size v.v.-KhôngCác tham số khác được truyền thẳng tùy mô hình (thời lượng, độ phân giải, tỉ lệ khung hình…)

Phản hồi​

{ "task_id": "4f6a2b1c-xxxx-xxxx-xxxx" }

Truy vấn tác vụ​

GET /v1/video/generations/{task_id}
curl https://test.kailin.com.cn/v1/video/generations/4f6a2b1c-xxxx \
-H "Authorization: Bearer sk-your-token"
{
"task_id": "4f6a2b1c-xxxx",
"status": "SUCCESS",
"video_url": "https://oss.example.com/video/xxx.mp4",
"progress": "100%"
}
TrườngMô tả
statusTrạng thái tác vụ (SUBMITTED / IN_PROGRESS / SUCCESS / FAILURE, tùy kênh)
video_url / urlURL kết quả (tên trường thay đổi tùy kênh)
progressTiến độ
Cảnh báo

Tạo video có thể mất từ vài chục giây đến vài phút. Hãy truy vấn theo chu kỳ 10–30 giây và lưu lại task ID (bản ghi tác vụ của gateway có thời hạn lưu trữ). video_url là tạm thời — hãy lưu trữ lại tệp ngay sau khi hoàn tất.