Retrieve task
Last updated September 8, 2026
Read a bytedance/doubao-seedance-2-0 task in the unified shape, with generated-video tokens and cost.
Read a bytedance/doubao-seedance-2-0 task in the unified shape, with usage and cost.
https://gateway.amux.ai/v1/tasks/{id}Authorization
headerAuthorizationstringRequiredBearer <your Amux key> Your Amux API key.
Request
idstringRequiredThe Amux task ID returned at submit time.
Response
200responseAlways 200, finished or not; the state is in status.
404responseNo such task in this workspace.
Always 200, finished or not
The state is in status: queued / running are still going, the other four are
terminal. expired means the task never finished and the result can no longer be fetched
— those are not billed and the reservation has been released.
Usage: output_video_tokens
This is where Seedance differs most from the other video models here. They bill output
seconds and return output_video_seconds; Seedance bills tokens and returns
output_video_tokens.
| Field | On this path |
|---|---|
input_tokens / output_tokens / total_tokens | Always 0 |
output_video_tokens | Generated-video tokens; cost is computed from it |
Required: the two video usage keys never appear together on one record — a clip is billed either per second or per token.
Results
output.videos[] carries the video; output.images[] is always an empty array (kept for
existing image clients). URLs point at our storage and are cleaned up, so download
anything you need to keep.
notes says what we did to your request
Present only when we actually did something. The most common one here is dropping a parameter this upstream does not have.
curl https://gateway.amux.ai/v1/tasks/{id} \
-H "Authorization: Bearer $AMUX_API_KEY"{
"id": "task_01M1VD9E8WRYVBR7ES10SNQQQT",
"status": "queued",
"model": "bytedance/doubao-seedance-2-0",
"created_at": "<string>",
"output": {
"images": [
{}
],
"videos": [
{
"index": 0,
"url": "<string>"
}
]
},
"usage": {
"input_tokens": 0,
"output_tokens": 0,
"total_tokens": 0,
"output_video_tokens": 0
},
"cost": "0.83",
"notes": [
"<string>"
],
"error": {
"message": "<string>",
"code": "<string>"
}
}