Skip to main content
GET
/
v1
/
videos
/
{task_id}
Get Seedance video task status
curl --request GET \
  --url https://api.getinfinityblue.com/v1/videos/{task_id} \
  --header 'Authorization: Bearer <token>'
{
  "id": "video_abc123",
  "object": "video",
  "model": "doubao-seedance-2-0-fast-260128",
  "status": "queued",
  "progress": 0,
  "created_at": 1764347090922,
  "seconds": "5"
}

Task status values

StatusMeaning
queuedWaiting in queue
in_progressGeneration in progress; progress reflects percentage
completedDone — video URL in metadata.url
failedGeneration failed — check the error field

Polling guidance

Seedance tasks typically complete in 30 seconds to a few minutes. Poll every 5–10 seconds and surface the progress value to users.

Retrieving the video

Two options once the task is complete:
  • Use the CDN link in metadata.url directly (valid until expires_at)
  • Call GET /v1/videos/{task_id}/content to proxy-download through the API

Authorizations

Authorization
string
header
required

Bearer token authentication, format: Authorization: Bearer sk-xxxxxx. Get your API key in the console.

Path Parameters

task_id
string
required

Video task ID — the id field returned by the create endpoint.

Response

Task status retrieved successfully

Seedance video task object, compatible with the OpenAI / Sora video task format.

id
string
required

Video task ID.

Example:

"video_abc123"

object
enum<string>
required

Object type, always video.

Available options:
video
Example:

"video"

model
enum<string>
required

The model that processed the task.

Available options:
doubao-seedance-2-0-260128,
doubao-seedance-2-0-fast-260128
Example:

"doubao-seedance-2-0-fast-260128"

status
enum<string>
required

Task status.

Available options:
queued,
in_progress,
completed,
failed
Example:

"queued"

progress
integer
required

Task progress as a percentage (0–100).

Required range: 0 <= x <= 100
Example:

0

created_at
integer<int64>
required

Task creation timestamp in milliseconds.

Example:

1764347090922

seconds
string
required

Video duration in seconds.

Example:

"5"

completed_at
integer<int64>

Task completion timestamp in milliseconds, populated when complete.

Example:

1764347170000

expires_at
integer<int64>

Expiry timestamp for the task and video file, in milliseconds.

Example:

1764433570000

size
string

Video dimensions, e.g. 1280x720.

Example:

"1280x720"

error
object

Error information for a failed Seedance video task.

metadata
object

Additional metadata. Contains url once the task is complete.