Seedance 2.5 Spicy
Use seedance-2.5-spicy to create video output. This page contains the
complete request needed for this model.
Model facts
| Property | Value |
|---|---|
| Model ID | seedance-2.5-spicy |
| Endpoint | POST /api/v1/generation/create |
| Output | Video |
| Modes | text-to-video, image-to-video, video reference, audio reference |
| Pricing | View current pricing |
Minimal request
curl -X POST https://api.api-stock.com/api/v1/generation/create \
-H "Authorization: Bearer $API_STOCK_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.5-spicy",
"input": {
"prompt": "A cinematic scene with soft natural light"
}
}'The create response contains a task ID:
{
"code": 200,
"data": {
"taskId": "019ca881-9503-7270-a560-f00fc2b15785",
"status": "not_started",
"createdAt": "2026-08-22T12:00:00.000Z"
}
}Parameters
Parameters belong inside the top-level input object. Unknown fields are
rejected.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
prompt |
string | Yes | — | Video prompt. Reference images, videos and audio positionally in the prompt. |
duration |
number | No | 5 |
Output duration in seconds (4-30). For reference-video jobs, input and output seconds use the reference-input tariff. min 4, max 30 |
size |
"adaptive" |
"16:9" |
"4:3" |
"1:1" |
"3:4" |
"9:16" |
"21:9"
|
No | "adaptive" |
Output aspect ratio. First-frame animation and extend jobs require adaptive. |
resolution |
"480p" |
"720p" |
"1080p"
|
No | "480p" |
Output resolution and per-second billing tier |
generateAudio |
boolean | No | true |
Whether the generated video includes audio |
omniReferenceTaskType |
"auto" |
"reference" |
"extend"
|
No | "auto" |
auto selects the mode from the supplied media; reference uses all supplied references; extend continues a source video and requires videoUrls. Video editing is unavailable. |
imageUrls |
string[] | No | — | Reference image URLs (maximum 30). One image without other media animates the first frame; use reference mode to treat it as a style reference. |
videoUrls |
string[] | No | — | Public reference-video URLs (maximum 10; 2-30 seconds each and 30 seconds total). Their duration is probed before charging. |
audioUrls |
string[] | No | — | Reference audio URLs (maximum 10; 30 seconds total). Requires at least one reference image or video. |
tools |
object[] | No | — | Optional enhancements such as web search grounding. Each item is { type: "web_search" }. |
Modes
Minimal generation
{
"model": "seedance-2.5-spicy",
"input": {
"prompt": "A cinematic scene with soft natural light"
}
}With image urls
{
"model": "seedance-2.5-spicy",
"input": {
"prompt": "A cinematic scene with soft natural light",
"imageUrls": [
"https://example.com/input.jpg"
]
}
}With video urls
{
"model": "seedance-2.5-spicy",
"input": {
"prompt": "A cinematic scene with soft natural light",
"videoUrls": [
"https://example.com/input.mp4"
]
}
}With audio urls
{
"model": "seedance-2.5-spicy",
"input": {
"prompt": "A cinematic scene with soft natural light",
"imageUrls": [
"https://example.com/input.jpg"
],
"audioUrls": [
"https://example.com/input.mp3"
]
}
}Constraints
duration: minimum 4; maximum 30.size: allowed:adaptive,16:9,4:3,1:1,3:4,9:16,21:9.resolution: allowed:480p,720p,1080p.omniReferenceTaskType: allowed:auto,reference,extend.- Audio references require at least one image or video. A lone image animates the first frame with adaptive size; set omniReferenceTaskType to reference to use it as a reference instead.
- Reference-video input seconds and output seconds are charged together at the input-reference tariff. Each reference video must be 2–30 seconds; combined video duration must not exceed 30 seconds.
- This is the APIPod Spicy channel at every resolution. Video editing, automatic duration, seed, outputFormat and imageWithRoles are unavailable.
Invalid types, unsupported enum values, out-of-range numbers, and missing
required fields return HTTP 400 with error.code: "invalid_input". Correct
the request rather than retrying it unchanged.
Result
Poll the task or provide a top-level webhook URL in the create request:
curl https://api.api-stock.com/api/v1/task/status/$TASK_ID \
-H "Authorization: Bearer $API_STOCK_KEY"A successful media task returns one or more files:
{
"code": 200,
"data": {
"taskId": "019ca881-9503-7270-a560-f00fc2b15785",
"status": "finished",
"files": [
{
"fileUrl": "https://s3.api-stock.com/result.mp4",
"fileType": "video"
}
],
"createdTime": "2026-08-22T12:00:00.000Z"
}
}See Tasks and webhooks for terminal statuses, retries and webhook delivery.