GET /v1/videos/ を使用して、CometAPI 上の Seedance 動画タスクを id でポーリングします。Seedance 1.0 Pro、1.5 Pro、2.0 のタスクで利用できます。タスクが SUCCESS に達すると、現在の status、progress、および署名付きの video_url を返します。
curl https://api.cometapi.com/v1/videos/<TASK_ID> \
-H "Authorization: Bearer <COMETAPI_KEY>"{
"id": "task_abc123",
"model": "doubao-seedance-2-0-fast",
"object": "video",
"status": "IN_PROGRESS",
"progress": 45,
"created_at": 1776567610,
"completed_at": null
}id は、どの Seedance モデルがタスクを生成したかにかかわらず、作成 API の呼び出しで返された値です。
SUBMITTED と IN_PROGRESS は終端状態ではありません。SUCCESS、FAILED、ERROR は終端状態であり、タスクはそれ以降変化しません。
| Status | 意味 | 終端 |
|---|---|---|
SUBMITTED | 受け付けられ、レンダリング待ちのキューに入っています。 | いいえ |
IN_PROGRESS | レンダリング中です。 | いいえ |
SUCCESS | 完了しました。レスポンスに video_url が含まれます。 | はい |
FAILED | プロバイダーがタスクを拒否しました。 | はい |
ERROR | 内部エラーにより完了できませんでした。 | はい |
import time
import requests
TASK_ID = "<TASK_ID>"
headers = {"Authorization": "Bearer <COMETAPI_KEY>"}
TERMINAL = {"SUCCESS", "FAILED", "ERROR"}
while True:
response = requests.get(
f"https://api.cometapi.com/v1/videos/{TASK_ID}",
headers=headers,
timeout=15,
)
response.raise_for_status()
data = response.json()
if data["status"] in TERMINAL:
print(data.get("video_url"))
break
time.sleep(10)
status — ポーリングループを停止する条件を決定します。progress — UI に表示できる 0 から 100 の整数です。video_url — 署名付きダウンロード URL で、SUCCESS の場合にのみ存在します。署名には有効期限があるため、期限切れになる前にファイルをダウンロードするか再ホストしてください。completed_at — タスクが終端状態に達すると設定される Unix タイムスタンプです。model — タスク作成時に使用された Seedance model id をそのまま返します。400 で message: "task_not_exist" の場合、id が不明であることを意味します。POST /v1/videos の成功レスポンスから id を取得したこと、およびそれをそのまま使用していることを確認してください。401 は、bearer token が欠落しているか無効であることを意味します。リクエストヘッダーが Authorization: Bearer <COMETAPI_KEY> になっていることを確認してください。Bearer token authentication. Use your CometAPI key.
Task id returned by POST /v1/videos.
Current task state.
Task id.
Object type, always video.
Model id that generated the task.
Task status. SUBMITTED and IN_PROGRESS are non-terminal. SUCCESS, FAILED, and ERROR are terminal.
SUBMITTED, IN_PROGRESS, SUCCESS, FAILED, ERROR Completion percentage.
0 <= x <= 100Task creation time as a Unix timestamp in seconds.
Signed download URL for the finished video. Present only when status is SUCCESS. The signature is time-limited, so download or re-upload the file to your own storage soon after you receive it.
Task completion time as a Unix timestamp in seconds. null while the task is non-terminal.
curl https://api.cometapi.com/v1/videos/<TASK_ID> \
-H "Authorization: Bearer <COMETAPI_KEY>"{
"id": "task_abc123",
"model": "doubao-seedance-2-0-fast",
"object": "video",
"status": "IN_PROGRESS",
"progress": 45,
"created_at": 1776567610,
"completed_at": null
}