API reference
Get a video task
Returns a task created by the authenticated account. While the status is `pending` or `processing`, poll this endpoint with backoff. A completed task includes a durable Seeddance video URL.
GET
/v1/tasks/{task_id}AuthorizationBearer <token>
Create a Seeddance API key in Settings. Send it only from a trusted server.
In: header
Path Parameters
task_idstring
POST /v1/videos/generations returns this task ID.
Response Body
curl "https://seeddance.io/v1/tasks/vid_01JZK7R7KCYQ3T9F33A7K0J6XB" \ -H "Authorization: Bearer sk_sd_example"{
"task_id": "vid_01JZK7R7KCYQ3T9F33A7K0J6XB",
"status": "processing",
"model": "seedance-2.0-fast",
"output": null,
"credits_used": 25,
"error": null,
"created_at": "2026-07-22T08:30:00.000Z",
"completed_at": null
}{
"error": {
"code": "invalid_api_key",
"message": "The API key is invalid, expired, or revoked.",
"param": null,
"request_id": "req_2YgM6pg5oM2WkKpQ"
}
}{
"error": {
"code": "task_not_found",
"message": "Task not found.",
"param": null,
"request_id": "req_2YgM6pg5oM2WkKpQ"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "API rate limit exceeded. Try again later.",
"param": null,
"request_id": "req_2YgM6pg5oM2WkKpQ"
}
}{
"error": {
"code": "internal_error",
"message": "The request could not be completed.",
"param": null,
"request_id": "req_2YgM6pg5oM2WkKpQ"
}
}Create a video task POST
Starts a Seedance video task and returns its ID. Use `GET /v1/tasks/{task_id}` to check the status. If you retry this request, the API may create a second task.
Get available credits GET
Returns the account's total credits, the credits reserved for active video tasks, and the credits available for a new task.