Build with Seedance 2.5
Make your first request
Use your Sorceress API key on your server. The playground uses your signed-in account; your application uses the same model with an API key.
curl -X POST 'https://sorceress.games/api/v1/jobs' \
-H 'Authorization: Bearer $SORCERESS_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"model": "bytedance/seedance-2-5",
"input": {
"duration": 5,
"resolution": "720p",
"aspect_ratio": "adaptive",
"with_audio": true,
"web_search": false,
"generation_mode": "i2v",
"prompt": "<prompt>"
}
}'Inputs & settings
promptstringRequiredDescribe what you would like to create.
durationintegerVideo length (4-30 seconds)
resolutionstringOutput video resolution (1080p costs more)
Options: 480p, 720p, 1080p
aspect_ratiostringAny ratio for text-to-video and Refs jobs. Start/end-frame jobs: Sorceress only allows 'adaptive'.
Options: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, adaptive
with_audiobooleanNative synced audio — dialogue, SFX, and music (no extra cost)
web_searchbooleanLet the model search the web to ground the prompt (topical scenes, real products, current events)
generation_modestringOptions: i2v, t2v, multimodal
image_urlsarrayUpload a file or enter one public HTTPS URL per line.
end_image_urlstringvideo_urlsarrayUpload a file or enter one public HTTPS URL per line.
audio_urlsarrayUpload a file or enter one public HTTPS URL per line.
Full input schema
{
"required": [
"prompt"
],
"properties": {
"prompt": {
"type": "string",
"title": "Prompt",
"description": "Describe what you would like to create."
},
"duration": {
"type": "integer",
"title": "Duration (seconds)",
"default": 5,
"minimum": 4,
"maximum": 30,
"description": "Video length (4-30 seconds)"
},
"resolution": {
"type": "string",
"title": "Resolution",
"default": "720p",
"enum": [
"480p",
"720p",
"1080p"
],
"description": "Output video resolution (1080p costs more)"
},
"aspect_ratio": {
"type": "string",
"title": "Aspect Ratio",
"default": "adaptive",
"enum": [
"16:9",
"9:16",
"1:1",
"4:3",
"3:4",
"21:9",
"adaptive"
],
"description": "Any ratio for text-to-video and Refs jobs. Start/end-frame jobs: Sorceress only allows 'adaptive'."
},
"with_audio": {
"type": "boolean",
"title": "Generate Audio",
"default": true,
"description": "Native synced audio — dialogue, SFX, and music (no extra cost)"
},
"web_search": {
"type": "boolean",
"title": "Web Search",
"default": false,
"description": "Let the model search the web to ground the prompt (topical scenes, real products, current events)"
},
"generation_mode": {
"type": "string",
"title": "Mode",
"enum": [
"i2v",
"t2v",
"multimodal"
],
"default": "i2v"
},
"image_urls": {
"type": "array",
"title": "Reference images",
"items": {
"type": "string",
"format": "uri"
},
"maxItems": 30,
"description": "Upload a file or enter one public HTTPS URL per line."
},
"end_image_url": {
"type": "string",
"title": "End frame URL",
"format": "uri"
},
"video_urls": {
"type": "array",
"title": "Reference videos",
"items": {
"type": "string",
"format": "uri"
},
"description": "Upload a file or enter one public HTTPS URL per line."
},
"audio_urls": {
"type": "array",
"title": "Reference audio",
"items": {
"type": "string",
"format": "uri"
},
"description": "Upload a file or enter one public HTTPS URL per line."
}
}
}Results, saved runs & billing
Media requests return a job ID. Poll GET /api/v1/jobs/:id until it succeeds or fails; keep the same ID while it is processing. Long chat requests can also return a saved job to poll. Completed outputs are stored in your account, and successful work is billed using your model's current rates.
A multi-step workflow may include separately billed successful actions. If a connection drops, check your saved run before submitting it again.






