Seedance 1.5 Pro Async Video Generation
API Documentation
Use these endpoints to submit Seedance 1.5 Pro jobs and check their status. Each call spends credits based on duration and audio (synchronized dialogue, SFX, music).
Authentication
All requests must include your API key inside the Authorization header:
Authorization: Bearer <YOUR_API_KEY>Missing or invalid keys return 401 Unauthorized.
POST
https://seedance1-5pro.com/api/generate
Create generation task
Submits a new Seedance 1.5 Pro job. The call immediately returns a task_id while the render completes asynchronously.
| Parameter | Type | Required | Description |
|---|---|---|---|
| prompt | string (max 1000 chars) | Yes | Main scene description (text or image flow). |
| aspect_ratio | string | Yes | Supported: 16:9, 9:16, 1:1. Ignored when image_urls exist. |
| duration | string | Yes | Render length in seconds ("5" or "10"). |
| sound | boolean | No | Include audio in the clip (synchronized dialogue, SFX, music). |
| image_urls | string[] | No | Optional reference image URLs (required for image-to-video). |
Credit consumption
Credits deduct when the task is created. Failed jobs are automatically refunded.
| Preset | Credits deducted |
|---|---|
| 5 s silent | 65 |
| 10 s silent | 130 |
| 5 s with audio | 130 |
| 10 s with audio | 260 |
Sample request
{
"prompt": "Drone shot over neon night market",
"aspect_ratio": "16:9",
"duration": "5",
"sound": false,
"image_urls": [
"https://cdn.example.com/reference/frame01.png"
]
}Sample response
{
"code": 200,
"message": "success",
"data": {
"task_id": "sd15p_b6d54c8f4b4c4e8"
}
}GET / POST
https://seedance1-5pro.com/api/status
Check task status
Use this endpoint to poll the latest record. When the task is still IN_PROGRESS we query the provider once more before replying.
| Parameter | Type | Required | Description |
|---|---|---|---|
| task_id | string | Yes | ID returned by /generate. Send via query (?task_id=) or JSON body. |
| Field | Description |
|---|---|
| task_id | ID returned from /generate. |
| status | SUCCESS |
| request | Sanitized copy of the submitted payload. |
| response | Array of media URLs when status is SUCCESS. |
| consumed_credits | Credits charged for the task (0 when refunded). |
| error_message | Provider error when status is FAILED. |
| created_at | UTC timestamp when the job was stored. |
Sample request
GET https://seedance1-5pro.com/api/status?task_id=sd15p_b6d54c8f4b4c4e8
Authorization: Bearer <YOUR_API_KEY>
# or POST
POST https://seedance1-5pro.com/api/status
Authorization: Bearer <YOUR_API_KEY>
Content-Type: application/json
{
"task_id": "sd15p_b6d54c8f4b4c4e8"
}Sample response
{
"code": 200,
"message": "success",
"data": {
"task_id": "sd15p_b6d54c8f4b4c4e8",
"status": "SUCCESS",
"request": {
"prompt": "Drone shot over neon night market",
"aspect_ratio": "16:9",
"duration": "5",
"sound": false
},
"response": [
"https://static.gogloai.com/seedance15pro/clip_001.mp4"
],
"consumed_credits": 65,
"error_message": null,
"created_at": "2025-06-14T05:21:11Z"
}
}Error handling
401 Unauthorized- Missing or invalid API key.402 Payment Required- Credit balance could not cover the deduction.429 Too Many Requests- Reduce the polling cadence or request rate.500- Transient issue; retry with exponential backoff.