TokenLab

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ụcClient Volcengine hiện cóTokenLab
URL cơ sởVolcengine APIhttps://api.tokenlab.sh/
Xác thựcAK/SKAuthorization: Bearer <TOKENLAB_API_KEY>
Request ActionAction, VersionAction, Version
Body taskcontent[]content[]
Body materialPascalCasePascalCase
Kết quả bất đồng bộID taskcgt-... + 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

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

ActionHạng mụcJSON
CreateContentsGenerationsTasksTạo task videomodel, content[]
GetContentsGenerationsTaskLấy một taskTaskId
ListContentsGenerationsTasksLiệt kê taskBộ lọc, phân trang
DeleteContentsGenerationsTasksHủy hoặc xóa taskTaskId

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

  1. Thay host API bằng https://api.tokenlab.sh.
  2. Thay chữ ký AK/SK bằng TokenLab Bearer API Key.
  3. Giữ nguyên Action, phiên bản và kiểu chữ của body.
  4. Dùng cùng ProjectName cho các request material và xác minh liên quan.
  5. Lưu ID task, nhóm và material do TokenLab trả về.
  6. Kiểm tra tạo, polling, liệt kê và lỗi trước khi chuyển traffic production.

Trên trang này