ビデオと素材

タスクの取得 (Volc互換)

cgtタスクIDを使用してSeedance互換タスクを取得します。

GET
/api/v3/contents/generations/tasks/{id}

概要

createで返された cgt-... IDを使用します。タスクが queued または running の間は数秒ごとにポーリングを行ってください。タスクが succeeded、failed、cancelled、または expired になったら停止します。

ここで統一されたv1タスクのenumやレスポンス構造体を再利用しないでください。/v1/tasks/{id} では pending、processing、completed、failed が使用されますが、このv3エンドポイントでは上記の公式enumを使用します。v3のJSONオブジェクトにおいて、duration は存在する場合は文字列となり、error はエラー情報がある場合に返す任意フィールドです。厳密なGoクライアントを実装する場合は、Duration を string 型としてJSONタグ duration,omitempty を指定し、すべてのv3終了ステータスで停止するようにしてください。

Seedance 2.0 ビデオモデル および ビデオ生成 も参照してください。

ステータス値

  • queued: 受理済み、実行待ち。
  • running: 生成中。
  • succeeded: 結果の準備が完了し、content.video_url が存在します。
  • failed: 生成失敗。error.code および error.message を確認してください。
  • cancelled: 完了前にタスクがキャンセルされました。
  • expired: 完了前にタスクの有効期限が切れました。

レスポンスフィールド

  • id: 互換タスクID(cgt- で始まります)。
  • model: 互換性のためにエコーされるモデル識別子。
  • status: 上記のステータス値のいずれか。
  • content.video_url: 成功時の最終的な動画URL。
  • content.last_frame_url: 要求され、かつ利用可能な場合にのみ存在します。
  • usage: 利用可能な場合のトークン使用量。
  • created_at および updated_at: タスクのタイムスタンプ。
  • error: エラー情報がある場合に返す任意フィールドです。error.code と error.message を確認し、status だけで存在を判断しないでください。

レスポンスには、progress、return_last_frame、watermark、priority、camera_fixed といったTokenLabのフィールドは一切追加されません。

例

curl https://api.tokenlab.sh/api/v3/contents/generations/tasks/cgt-20260102030405-a1b2c \
  -H "Authorization: Bearer $TOKENLAB_API_KEY"
{
  "id": "cgt-20260102030405-a1b2c",
  "model": "doubao-seedance-2.0",
  "status": "succeeded",
  "content": {
    "video_url": "https://example.com/result.mp4"
  },
  "usage": {
    "completion_tokens": 123456
  }
}
Go
type SeedanceTask struct {
    ID       string `json:"id"`
    Status   string `json:"status"`
    Duration string `json:"duration,omitempty"`
}

func isTerminal(status string) bool {
    switch status {
    case "succeeded", "failed", "cancelled", "expired":
        return true
    default:
        return false
    }
}
curl -X GET "https://example.com/api/v3/contents/generations/tasks/string"
{  "id": "string",  "model": "string",  "status": "queued",  "content": {    "video_url": "http://example.com",    "last_frame_url": "http://example.com"  },  "seed": 0,  "resolution": "string",  "ratio": "string",  "duration": "string",  "frames": 0,  "framespersecond": 0,  "generate_audio": true,  "tools": {    "type": "web_search"  },  "safety_identifier": "string",  "draft": true,  "draft_task_id": "string",  "service_tier": "string",  "execution_expires_after": 0,  "usage": {    "completion_tokens": 0,    "total_tokens": 0,    "tool_usage": {      "web_search": 0    }  },  "error": {    "code": "string",    "message": "string"  },  "created_at": 0,  "updated_at": 0}

認証

BearerAuth
AuthorizationBearer <token>

APIキー認証。Dashboard > API > API KeysでAPIキーを作成または管理します。

場所: header

パスパラメータ

id*string

作成エンドポイントによって返される互換タスクID。IDはcgt-で始まります。

レスポンス

application/json

application/json

application/json

application/json