Seedance 2.5 Global
Seedance 2.5 through the global route. Text-to-video, first/last frames, or multimodal references, 4 to 30 seconds.
/api/v1/jobs/createTaskSeedance 2.5 Global runs Seedance 2.5 through an overseas generation route. It supports text-to-video, first/last-frame image-to-video, and multimodal references that combine a prompt with up to 30 images, 10 videos and 10 audio clips. It produces 4 to 30 seconds of 480p or 720p video, can generate a matching audio track, and supports video extension and MOV output.
Set model to seedance-2.5-global. The request is asynchronous: store the returned taskId, then query the task or wait for the callback.
Request example
curl -X POST https://api.xbaiapi.com/api/v1/jobs/createTask \
-H "Authorization: Bearer xb-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.5-global",
"input": {
"prompt": "a city intersection on a rainy night, neon reflected on wet asphalt, slow push-in",
"resolution": "720p",
"duration": 10,
"ratio": "16:9",
"generateAudio": true,
"imageUrls": ["https://example.com/street.jpg"]
},
"callBackUrl": "https://your-server.com/webhook"
}'Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
model | string | Yes | Fixed value seedance-2.5-global |
input.prompt | string | Conditional | Up to 20480 characters; optional for first/last-frame image-to-video |
input.resolution | string | No | 480p or 720p, defaults to 720p |
input.duration | number | No | Integer seconds from 4 to 30, defaults to 5. Smart duration -1 is currently unavailable |
input.ratio | string | No | adaptive, 16:9, 9:16, 1:1, 4:3, 3:4, or 21:9. Defaults to adaptive; must be adaptive with first/last frames |
input.generateAudio | boolean | No | Defaults to true |
input.firstFrameUrl | string | No | First frame, up to 30 MB; providing it selects image-to-video and is required in that mode |
input.lastFrameUrl | string | No | Optional last frame, up to 30 MB; requires a first frame |
input.imageUrls | string[] | No | Up to 30 reference images, up to 50 MB each |
input.videoUrls | string[] | No | Up to 10 reference videos, 2 to 30 seconds and up to 50 MB each; total duration at most 30 seconds |
input.audioUrls | string[] | No | Up to 10 reference audio clips, 2 to 30 seconds and up to 50 MB each; total duration at most 30 seconds; requires a reference image or video |
input.webSearch | boolean | No | Web search enhancement, text-to-video only; defaults to false |
input.realPersonMode | boolean | No | Real person mode, image-to-video and multimodal only; defaults to true |
input.conversionSlots | string[] | No | Asset conversion slots, image-to-video and multimodal only; defaults to ["all"]; image-to-video accepts firstFrameUrl and lastFrameUrl; multimodal accepts image1 through image30 and video1 through video10 |
input.omniReferenceTaskType | string | No | Multimodal only. auto, reference, or extend; defaults to auto. extend continues a video and requires videoUrls with ratio set to adaptive |
input.outputFormat | string | No | mp4 or mov; defaults to mp4 |
input.watermark | boolean | No | Add a watermark; defaults to false |
input.returnLastFrame | boolean | No | Request a last frame; defaults to false. The public task result still returns only the video |
input.seed | number | No | Integer from -1 to 2147483647; defaults to -1 |
callBackUrl | string | No | Omit it and poll the query endpoint instead |
A prompt alone uses text-to-video, firstFrameUrl selects first/last-frame image-to-video, and reference lists use the multimodal endpoint. First/last frames cannot be combined with reference lists. Media can be a publicly reachable HTTP(S) URL or a Base64 media data URI. File sizes and durations are checked by the generation service.
Your account is charged by output duration at the same per-second rates as Seedance 2.0, using the reference video rate when videoUrls is present. See pricing.
Response
{
"code": 200,
"msg": "success",
"data": {
"taskId": "xb_a1b2c3d4e5f6...",
"creditsCharged": 330
}
}When the task succeeds, read the video URL from resultJson.resultUrls in the query response.