VidMage

VidMage is an AI video and image creation platform for creators. Turn your ideas and images into videos and fresh visuals.

Open the creator tools
Explore APIs
AI Video APIsAI Image APIsAI Audio APIsAI 3D APIsAI Face Swap APIsAI Effects APIs
Build with VidMage
QuickstartAPI keysVidMage MCPError reference
Your account
Developer consoleAbout VidMagePlans and creditsAPI billingContact support
© 2026 VidMage. All rights reserved.
Privacy PolicyTerms of ServiceReport Abuse
Skip to content
VidMage/Developers
Overview
APIs
All APIsAI Video APIsAI Image APIsAI Audio APIsAI 3D APIsAI Face Swap APIsAI Effects APIs
DocumentationVidMage MCPOpen console
Developers/Documentation/Seedance 2.5 AI Video Generator API documentation
Start here
DocumentationQuickstartAuthentication
Core workflows
File uploadsTask lifecycleCredits and billingErrors and recoveryVidMage MCP
Browse documentation
All API documentation
Video documentation 36AI Video Head SwapAI Video Face SwapAI Multiple Face Swap VideoAI Text to VideoAI Image to VideoAI Video to VideoAI Video ExtenderAI Video to Anime ConverterAI Video Background RemoverAI Video Watermark RemoverSora Link Watermark RemoverSora 2 Video GeneratorAI Photo DanceAI Motion ControlAI Talking PhotoAI Lip SyncAI Subtitle GeneratorAI Video UpscalerKling AI Video GeneratorPixVerse AI Video GeneratorHailuo AI Video GeneratorMiniMax H3 AI Video GeneratorGrok Video GeneratorSora 2 AI Video GeneratorWan AI Video GeneratorWan 3.0 AI Video GeneratorSeedance 2.0 AI Video GeneratorSeedance 2.5 AI Video GeneratorSeedance AI Video GeneratorMidjourney Video GeneratorVidu AI Video GeneratorVeo 3.1 AI Video GeneratorKling 3.0 AI Video GeneratorSkyReels AI Video GeneratorHappyHorse AI ModelRunway AI Video Generator
Image documentation 24AI Photo Face SwapAI Head SwapAI Multiple Face SwapAI Text to ImageAI Image to ImageAI Girl GeneratorAI Hairstyle ChangerAI Clothes ChangerAI Object RemoverAI Image Watermark RemoverAI Image UpscalerGPT Image 2 Image to ImageAI GIF Face SwapMidjourney AI Image GeneratorGrok AI Image GeneratorNano Banana AI Image GeneratorGPT Image GeneratorSeedream AI Image GeneratorZ-Image AI ModelWan Image GeneratorQwen Image GeneratorQwen 3.0 Image GeneratorGPT Image 2 GeneratorGPT Image 2.5 Generator
Audio documentation 3AI Voice CloneAI Voice DesignAI Text to Music
3d documentation 3AI Image to 3DAI Four-View to 3DAI Text to 3D

Seedance 2.5 AI Video Generator API documentation

Generate videos with Seedance 2.5 AI Video Generator (ByteDance). Supports both text and image input modes. The reference mode accepts image, video, audio inputs.

On this page01 / 09
01Endpoints02Parameters and input rules03text to video04image to video05multimodal video06Example request07Task results and recovery08Credits09Integration guides

Endpoints

Contract itemValue
Capabilityseedance-2-5-ai-video-generator
SubmitPOST https://vidmage.ai/api/v1/seedance-2-5-ai-video-generator/submit
QueryPOST https://vidmage.ai/api/v1/seedance-2-5-ai-video-generator/query
Task identifiertaskId
Result fieldvideoUrl

Authenticate with Authorization: Bearer YOUR_API_KEY. Save the task identifier and query the same capability. Use a stable Idempotency-Key for submission retries.

Product guide: Seedance 2.5 API

Parameters and input rules

FieldTypeRequiredDefaultMeaning and limits
promptstringNoNot specifiedText prompt describing the video to generate (max 20480 chars). Optional only in provider modes whose image input fully defines the generation.
Maximum characters: 20480
imageUrlstringNoNot specifiedOptional input image URL. When provided, the task runs in image-to-video mode.
imageUrlsstring[]NoNot specifiedOptional multimodal reference images. Public URLs only; 50 MB per file.
Maximum items: 30
videoUrlsstring[]NoNot specifiedOptional multimodal reference videos. Each video is 4–30 seconds and 50 MB max.
Maximum items: 10
audioUrlsstring[]NoNot specifiedOptional multimodal reference audio. Each audio is 2–30 seconds and 50 MB max.
Maximum items: 10
lastFrameUrlstringNoNot specifiedOptional public URL for the final frame in image-to-video mode.
durationstringNo"5"Video duration in seconds.
Values: "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30"
aspectRatiostringNo"adaptive"Output aspect ratio.
Values: "adaptive", "16:9", "4:3", "1:1", "3:4", "9:16", "21:9"
resolutionstringNo"720p"Output resolution tier.
Values: "480p", "720p", "1080p", "2k", "4k"
soundbooleanNotrueGenerate synchronized audio along with the video. No separate sound surcharge is configured.
webSearchbooleanNofalseEnable web-search enhancement for text-to-video generation.
returnLastFramebooleanNofalseReturn the generated video's last frame as an additional output.
bitrateModestringNo"standard"Output bitrate. High mode produces a file approximately 3–5 times larger than standard.
Values: "standard", "high"
seedintegerNo-1Seed for reproducible generation. Use -1 for a random seed.
Minimum: -1
Maximum: 2147483647
Multiple of: 1
outputFormatstringNo"mp4"Output video format. MP4 offers broad compatibility; MOV preserves higher color precision for editing.
Values: "mp4", "mov"
realPersonModebooleanNotrueAllow the provider to convert supported real-person references into generation assets.
conversionSlotsstring[]No["all"]Choose which image slots should be converted into real-person assets.
Maximum items: 41
Item values: "all", "firstFrameUrl", "lastFrameUrl", "image1", "image2", "image3", "image4", "image5", "image6", "image7", "image8", "image9", "image10", "image11", "image12", "image13", "image14", "image15", "image16", "image17", "image18", "image19", "image20", "image21", "image22", "image23", "image24", "image25", "image26", "image27", "image28", "image29", "image30", "video1", "video2", "video3", "video4", "video5", "video6", "video7", "video8", "video9", "video10"
omniReferenceTaskTypestringNo"auto"Fixed-duration reference generation. Video editing and extension are temporarily unavailable.
Values: "auto", "reference"

text to video

These are public VidMage field names. The server maps them to provider fields. Input media selects the mode; use its limits together with the parameter table.

ControlMode-specific rule
promptRequired; 1–20480 characters.
durationJSON string. Values: "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30". Default: 5.
aspectRatioValues: "adaptive", "16:9", "4:3", "1:1", "3:4", "9:16", "21:9". Default: adaptive.
resolutionValues: "480p", "720p", "1080p", "2k", "4k". Default: 720p.
soundBoolean. Default: true.
webSearchEnable web-search enhancement for text-to-video generation.
Default: false
returnLastFrameReturn the generated video's last frame as an additional output.
Default: false
bitrateModeOutput bitrate. High mode produces a file approximately 3–5 times larger than standard.
Values: "standard", "high"
Default: "standard"
seedSeed for reproducible generation. Use -1 for a random seed.
Minimum: -1
Maximum: 2147483647
Multiple of: 1
Default: -1
outputFormatOutput video format. MP4 offers broad compatibility; MOV preserves higher color precision for editing.
Values: "mp4", "mov"
Default: "mp4"

image to video

These are public VidMage field names. The server maps them to provider fields. Input media selects the mode; use its limits together with the parameter table.

ControlMode-specific rule
promptOptional; 0–20480 characters.
durationJSON string. Values: "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30". Default: 5.
aspectRatioValues: "adaptive". Default: adaptive.
resolutionValues: "480p", "720p", "1080p", "2k", "4k". Default: 720p.
soundBoolean. Default: true.
imageUrlFormats: jpg, jpeg, png, webp, bmp, tiff, gif, heic, heif.
lastFrameUrlOptional final-frame image.
returnLastFrameReturn the generated video's last frame as an additional output.
Default: false
bitrateModeOutput bitrate. High mode produces a file approximately 3–5 times larger than standard.
Values: "standard", "high"
Default: "standard"
seedSeed for reproducible generation. Use -1 for a random seed.
Minimum: -1
Maximum: 2147483647
Multiple of: 1
Default: -1
outputFormatOutput video format. MP4 offers broad compatibility; MOV preserves higher color precision for editing.
Values: "mp4", "mov"
Default: "mp4"
realPersonModeAllow the provider to convert supported real-person references into generation assets.
Default: true
conversionSlotsChoose which image slots should be converted into real-person assets.
Maximum items: 3
Item values: "all", "firstFrameUrl", "lastFrameUrl"
Default: ["all"]

multimodal video

These are public VidMage field names. The server maps them to provider fields. Input media selects the mode; use its limits together with the parameter table.

ControlMode-specific rule
promptRequired; 1–20480 characters.
durationJSON string. Values: "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30". Default: 25.
aspectRatioValues: "adaptive", "16:9", "4:3", "1:1", "3:4", "9:16", "21:9". Default: adaptive.
resolutionValues: "480p", "720p", "1080p", "2k", "4k". Default: 720p.
soundBoolean. Default: true.
imageUrlsUp to 30 files. Maximum 50 MB per file. Formats: jpg, jpeg, png, webp, bmp, tiff, gif, heic, heif.
videoUrlsUp to 10 files. Maximum 50 MB per file. Formats: mp4, mov. 4–30 seconds per file. Maximum total duration: 30 seconds.
audioUrlsUp to 10 files. Maximum 50 MB per file. Formats: mp3, wav. 2–30 seconds per file. Maximum total duration: 30 seconds.
returnLastFrameReturn the generated video's last frame as an additional output.
Default: false
bitrateModeOutput bitrate. High mode produces a file approximately 3–5 times larger than standard.
Values: "standard", "high"
Default: "standard"
seedSeed for reproducible generation. Use -1 for a random seed.
Minimum: -1
Maximum: 2147483647
Multiple of: 1
Default: -1
outputFormatOutput video format. MP4 offers broad compatibility; MOV preserves higher color precision for editing.
Values: "mp4", "mov"
Default: "mp4"
realPersonModeAllow the provider to convert supported real-person references into generation assets.
Default: true
conversionSlotsChoose which multimodal reference slots should be converted into real-person assets.
Maximum items: 41
Item values: "all", "image1", "image2", "image3", "image4", "image5", "image6", "image7", "image8", "image9", "image10", "image11", "image12", "image13", "image14", "image15", "image16", "image17", "image18", "image19", "image20", "image21", "image22", "image23", "image24", "image25", "image26", "image27", "image28", "image29", "image30", "video1", "video2", "video3", "video4", "video5", "video6", "video7", "video8", "video9", "video10"
Default: ["all"]
omniReferenceTaskTypeFixed-duration reference generation. Video editing and extension are temporarily unavailable.
Values: "auto", "reference"
Default: "auto"

Example request

{
  "prompt": "A cinematic tea-garden commercial at dusk, with a slow camera drift and native audio for wind in the leaves",
  "duration": "5",
  "aspectRatio": "adaptive",
  "resolution": "720p",
  "sound": true,
  "webSearch": false,
  "returnLastFrame": false,
  "bitrateMode": "standard",
  "seed": -1,
  "outputFormat": "mp4"
}
# Set VIDMAGE_IDEMPOTENCY_KEY to a unique value for this task; preserve it for transport retries.
curl -X POST "https://vidmage.ai/api/v1/seedance-2-5-ai-video-generator/submit" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Idempotency-Key: ${VIDMAGE_IDEMPOTENCY_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"A cinematic tea-garden commercial at dusk, with a slow camera drift and native audio for wind in the leaves","duration":"5","aspectRatio":"adaptive","resolution":"720p","sound":true,"webSearch":false,"returnLastFrame":false,"bitrateMode":"standard","seed":-1,"outputFormat":"mp4"}'
# -> { "success": true, "taskId": "...", "creditsConsumed": ... }

Task results and recovery

URL of the generated video. When requested, query also returns the generated last frame as lastFrameUrl. Read videoUrl from the completed query response. Preserve taskId while the task is running.

curl -X POST "https://vidmage.ai/api/v1/seedance-2-5-ai-video-generator/query" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "taskId": "TASK_ID_FROM_SUBMIT" }'
# -> { "success": true, "data": { "status": "...", "videoUrl": "https://..." } }

Submission and task queries report the available task and usage information. A timeout is not a confirmed failure. Recover the existing task instead of resubmitting.

For face selection and error recovery, follow Task lifecycle. MCP uses the normalized taskId argument in get_task_result, including capabilities whose REST identifier is requestId.

Credits

Component / optionRateMinimum
480p30 credits / second—
720p60 credits / second—
1080p75 credits / second—
2k90 credits / second—
4k105 credits / second—

Base charge = duration × the selected resolution rate.

Use the Playground or the MCP credit estimator for your exact inputs. Credits and billing.

Integration guides

Authentication · File uploads · Task lifecycle · Error recovery · MCP

Reference generated from the current API contractDocumentation home ↗