Hướng dẫn media
Di chuyển Seedance từ Volcengine
Di chuyển task Seedance và tích hợp material theo định dạng Volcengine sang TokenLab với ít thay đổi request nhất.
Dùng hướng dẫn này nếu ứng dụng đã gửi request Seedance theo định dạng Volcengine. Tên Action, Version=2024-01-01, content[], body PascalCase của material và envelope phản hồi Volcengine đều được giữ lại. Chỉ endpoint và phương thức xác thực phải thay đổi.
Những gì thay đổi
| Hạng mục | Client Volcengine hiện có | TokenLab |
|---|---|---|
| URL cơ sở | Volcengine API | https://api.tokenlab.sh/ |
| Xác thực | AK/SK | Authorization: Bearer <TOKENLAB_API_KEY> |
| Request Action | Action, Version | Action, Version |
| Body task | content[] | content[] |
| Body material | PascalCase | PascalCase |
| Kết quả bất đồng bộ | ID task | cgt-... + Polling |
Request chỉ có chữ ký AK/SK trả về 401 AuthenticationError. Client Action có thể dùng POST /?Action=...&Version=2024-01-01; POST /api/v3?Action=...&Version=2024-01-01 vẫn được hỗ trợ. Client REST dùng /api/v3/contents/generations/tasks.
Định dạng request và vòng đời task
Nếu tích hợp của bạn đã gửi yêu cầu Seedance kiểu Volc, bạn có thể dùng endpoint tương thích thay vì đổi body sang định dạng /v1/videos/generations. Gửi TokenLab API key dưới dạng Authorization: Bearer ..., dùng POST /api/v3/contents/generations/tasks để tạo theo REST hoặc /api/v3?Action=CreateContentsGenerationsTasks&Version=2024-01-01 cho yêu cầu Action. Phản hồi tạo trả về ID tác vụ cgt-...; phản hồi trạng thái dùng queued, running, succeeded, failed, cancelled hoặc expired.
Endpoint này nhận các mục content[] như text, image_url, video_url, audio_url và draft_task. callback_url nhận đúng đối tượng truy vấn mỗi khi trạng thái đổi sang queued, running, succeeded, failed hoặc expired; succeeded và failed được thử lại tối đa ba lần sau năm giây. Hãy giữ polling làm đường dự phòng.
Trang tham chiếu
- Tạo tác vụ (tương thích Volc)
- Lấy tác vụ (tương thích Volc)
- Danh sách tác vụ (tương thích Volc)
- Hủy tác vụ (tương thích Volc)
Không dùng struct phản hồi /v1/tasks/{id} cho v3. v1 dùng pending, processing, completed và failed; v3 dùng queued, running, succeeded, failed, cancelled và expired. Trong v3, duration là chuỗi và error chỉ xuất hiện khi thất bại.
Để khôi phục sau khi mất kết nối, hãy gửi Idempotency-Key duy nhất trong yêu cầu tạo REST. Cùng body và key sẽ trả về cùng ID cgt-...; body khác với cùng key sẽ trả về 409.
Action của task
| Action | Hạng mục | JSON |
|---|---|---|
CreateContentsGenerationsTasks | Tạo task video | model, content[] |
GetContentsGenerationsTask | Lấy một task | TaskId |
ListContentsGenerationsTasks | Liệt kê task | Bộ lọc, phân trang |
DeleteContentsGenerationsTasks | Hủy hoặc xóa task | TaskId |
Ví dụ REST tối thiểu
curl 'https://api.tokenlab.sh/api/v3/contents/generations/tasks' \
-H "Authorization: Bearer $TOKENLAB_API_KEY" \
-H "Idempotency-Key: $CLIENT_JOB_ID" \
-H "Content-Type: application/json" \
-d '{
"model":"seedance-2.5",
"content":[
{"type":"text","text":"A cinematic product reveal"},
{"type":"image_url","role":"reference_image","image_url":{"url":"https://example.com/reference.png"}}
],
"ratio":"16:9",
"duration":5,
"resolution":"720p"
}'Material và xác minh người thật
Cùng endpoint Action cũng hỗ trợ mười thao tác material và nhóm. Xem Action material tương thích Volcengine để biết body PascalCase, bộ lọc, phân trang, envelope phản hồi và URL 12 giờ. Với người thật, trước khi upload còn phải gọi Tạo phiên xác minh hình ảnh và Lấy kết quả xác minh hình ảnh.
Danh sách kiểm tra di chuyển
- Thay host API bằng
https://api.tokenlab.sh. - Thay chữ ký AK/SK bằng TokenLab Bearer API Key.
- Giữ nguyên Action, phiên bản và kiểu chữ của body.
- Dùng cùng
ProjectNamecho các request material và xác minh liên quan. - Lưu ID task, nhóm và material do TokenLab trả về.
- Kiểm tra tạo, polling, liệt kê và lỗi trước khi chuyển traffic production.