Seedance 2.5 Draft

POSThttps://aldfait-api.newportai.com/api/async/seedance_2.5

The Seedance 2.5 Draft Text To Video API generates videos directly from a text prompt, supporting resolutions up to 1080p, configurable aspect ratio, durations up to 30 seconds, and optional audio generation.

This API offers enhanced features including reference video support, audio integration, and customizable duration, making it suitable for complex video production workflows.

  • Submit a POST request to the Seedance 2.5 API to obtain a taskId.
  • Submit a POST request to the Polling API to retrieve the generated video results.
  • Configure a Callback URL to receive results automatically on completion.

Request Headers

Content-Type string Required

Enum: application/json

Authorization string Required

Bearer authentication token. Example: Bearer {{APIKey}}.

Request Body

model string Required

Model version. Available options: seedance-2.5.

prompt string Required

Text prompt describing the video content to generate. Recommended prompt length: no more than 500 Chinese characters or 1,000 English words. Longer prompts may dilute information, causing the model to miss some details.

resolution string Required

Draft video resolution. Use 480p.

ratio string

Aspect ratio. Default: adaptive (automatically adjusts based on content). Available options: adaptive, 16:9, 9:16, 1:1, 3:4, 4:3, 21:9.

duration integer Required

Video duration in seconds. Range: [4-30] seconds.

seed integer

Random seed for reproducible results. Default: -1 (random seed).

generateAudio boolean

Whether to generate audio for the video. Default: false.

draft boolean

Set to true to generate a 480p draft.

Generate a final video

After the draft succeeds, read data.draftTaskIds from the polling result or callback. POST to the same endpoint with this body:

{"model":"seedance-2.5","resolution":"1080p","draftTaskIds":["<draft task ID>"]}

Use the same account and submit within 14 days of the draft task’s creation. The final video inherits the draft inputs and generation settings. Omit the prompt, input media, duration, ratio, seed, and audio settings. Poll the newly returned task ID for the final video.

Response

code integer

Returns 0 for success, or a specific error code.

message string

Returns "success" or a descriptive error message.

data object
taskId string

The unique identifier for the task. Use this ID with the Polling API to retrieve the generated output.

Errors

10192Illegal param

Polling

The submission response returns data.taskId for polling. When the draft succeeds (data.task.status: 3), the polling response includes data.draftTaskIds alongside data.videos. Pass the array unchanged in the 1080p final-generation request.

Use the Polling API to retrieve the processing results.

Callback

Alternatively, you can enable Callback to receive task results automatically upon completion.

A successful draft callback also includes data.draftTaskIds. The completed-task example below shows where to find it.

0Task Completed
{
    "code": 0,
    "message": "success",
    "data": {
        "task": {
            "taskId": "API-f000979c6b6e4562b2945be0ea50f0bd",
            "status": 3,
            "executionTime": 84467,
            "expire": 1786096513313,
            "taskType": "seedance_2.5",
            "creditsConsumed": 216
        },
        "videos": [
            {
                "videoType": "mp4",
                "videoUrl": "https://dreamapi-rs-aigc.newportai.com/dreamapi/o/2026-08-07/4bc7af00701b47cc958085b8e33af478.mp4"
            }
        ],
        "draftTaskIds": [
            "cgt-example-draft-id"
        ]
    }
}
Request
cURL
curl -X POST 'https://aldfait-api.newportai.com/api/async/seedance_2.5' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer {{key}}' \
  -d '{
  "model": "seedance-2.5",
  "prompt": "A girl dancing in a park on a sunny day with trees and benches in the background",
  "resolution": "480p",
  "draft": true,
  "ratio": "adaptive",
  "duration": 8,
  "seed": -1,
  "generateAudio": false
}'
0Successful
{
    "code": 0,
    "message": "success",
    "data": {
        "taskId": "API-f000979c6b6e4562b2945be0ea50f0bd"
    }
}