API 參考
影片
這個端點可用的模型(13)
/v1/videos/v1/videos/{task_id}/v1/videos/{task_id}/content非同步影片生成(Seedance、可靈、Veo、萬相、Grok Imagine 等)。/v1/videos 用同一種 OpenAI 格式的請求支援文生影片和圖生影片,回傳 task_id 供輪詢,也可以在提交時註冊 webhook。
#請求參數
modelstring必填影片模型 ID,見模型頁,例如 doubao-seedance-2.5。
promptstring必填場景描述;image2video 場景下用於控制運動。
imagestring選填僅 image2video:首影格圖片,URL 或 base64。
imagesarray選填適用於支援單一任務多張參考圖的供應商,用來傳入多張參考影格。
durationnumber選填片長(秒)——計費檔位維度之一;支援的取值見模型卡。
secondsnumber選填部分模型家族用它表示片長;建議優先使用 duration。
resolutionstring選填當模型支援時,用於指定 720p、1080p 等輸出解析度檔位。
sizestring選填適用於使用寬 x 高尺寸體系的模型家族,用於選擇畫幅或尺寸。
webhook_urlstring選填任務到達終態時回呼的 HTTPS 網址——回呼契約見影片指南。
webhook_secretstring選填設定後,回呼帶 X-Xiaoxiang-Signature: sha256=hex(HMAC-SHA256(body, secret))。
廠商參數原樣轉發
失敗任務自動退款
#取消進行中的任務
/v1/videos/:task_id終止一個尚未進入終態的任務。成功後預扣額度會退回,任務被記為 failed、原因是 "cancelled by user",你註冊的 webhook 會以 task.failed 投遞。
多數供應商不支援取消
curl -X DELETE https://www.aisplice.store/v1/videos/task_xxx \
-H "Authorization: Bearer sk-YOUR_KEY"{
"id": "task_xxx",
"task_id": "task_xxx",
"status": "cancelled"
}注意 "cancelled" 只出現在這一次回應裡。之後再輪詢,任務會顯示為 failed——因為它被置成了這個狀態。
- 404 task_not_exist任務 ID 不存在,或屬於其他帳號。
- 409 task_not_cancellable任務已經結束——沒有可終止的內容。
- 501 task_cancel_not_supported該供應商沒有提供取消 API。
#基於已有影片重繪(remix)
/v1/videos/:video_id/remix在支援的模型上,用新的提示詞重新生成一個已完成的影片。只需要傳 prompt:模型、時長、解析度和計費因子全部繼承自原任務,請求也會被鎖定到當初產出它的那個通道。
curl https://www.aisplice.store/v1/videos/task_xxx/remix \
-H "Authorization: Bearer sk-YOUR_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: remix-of-task_xxx" \
-d '{"prompt": "Same shot, at night"}'{
"task_id": "task_yyy",
"status": "queued",
"remixed_from_video_id": "task_xxx"
}remix 是一個全新的計費任務
- 400 invalid_requestremix 必須傳 prompt。
- 400 task_not_exist來源影片 ID 不存在,或屬於其他帳號。
- 400 task_channel_disable生成原影片的通道已被停用。
#相關錯誤碼
- 404 not_found路徑不存在、模型名稱不存在,或 task_id 已過期 / 不屬於目前帳號。
- 422 unprocessable_entity上游拒絕了閘道轉發的參數值(如不支援的尺寸或時長)。
- 401Bearer 權杖無效或缺失。這條路徑不帶 error.code,請依狀態碼判斷。
- 402 insufficient_user_quota錢包餘額不足以覆蓋預扣估算。
- 429金鑰級限流。回應主體為空,按 Retry-After 等待。若 429 帶有 insufficient_user_quota,那是每日消費上限,不是限流。
- 503 model_not_found模型名稱不存在,或目前沒有健康的通道可以提供服務。
#請求範例
# submit
curl https://www.aisplice.store/v1/videos \
-H "Authorization: Bearer sk-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "doubao-seedance-2.5", "prompt": "A drone shot of a lighthouse at dawn"}'
# poll every 5s
curl https://www.aisplice.store/v1/videos/$TASK_ID -H "Authorization: Bearer sk-YOUR_KEY"
# download when completed
curl -L https://www.aisplice.store/v1/videos/$TASK_ID/content -o out.mp4 -H "Authorization: Bearer sk-YOUR_KEY"#回應
// POST — submit accepted
{"task_id": "task_xxx", "status": "queued"}
// GET /v1/videos/{task_id}
{
"task_id": "task_xxx",
"status": "in_progress", // queued | in_progress | completed | failed
"progress": "45%"
}
// terminal state
{
"task_id": "task_xxx",
"status": "completed",
"metadata": {"url": "https://…"}
}還是沒解決?
把請求 ID 或錯誤訊息傳給我們,我們來查。