seedance-2.0-sz / seedance-2.5-sz
seedance-2.0-sz, seedance-2.0-sz-fast, seedance-2.0-sz-mini and seedance-2.5-sz Creates asynchronous video task using /v1/videos in a single way. request parameters follow Volcengine Seedance The syntax of field for the official multimodular API; references[] for MoonApiX is recommended for new access Use the common reference format; the server converts it to the multimodal structure required by the model.
Volcengine official parameters compatible
All four SZ public models support the parameters for submitting Volcengine official shapes in POST /v1/videos. That is, Clients can continue to use content[], ratio, resolution, duration, generate_audio et al. field requires only that the model name be changed to the current open SZ model name of MoonApiX. references[] is the uniform formulation recommended by MoonApiX for new access and cross-SDK calls.
| Entry | Available Model Name | Annotations |
|---|---|---|
POST /v1/videos | seedance-2.0-sz, seedance-2.0-sz-fast, seedance-2.0-sz-mini, seedance-2.5-sz | MoonApiX unified entrance; compatible with the syntax of Volcengine official field and validated according to the capabilities of the selected SZ model. |
POST /api/v3/contents/generations/tasks | Use MoonApiX public model ID: seedance-2.0-sz, seedance-2.0-sz-fast, seedance-2.0-sz-mini, seedance-2.5-sz | The official Volcengine path is compatible with the shape of the parameter; only the request path is replaced, and model is still completed on this page ' s public model list. |
The following rules for the unification of field:
| MoonApiX Universal field | Volcengine official shape field | Treatment |
|---|---|---|
prompt | text Entry for content[] | Text entries are replaced by service-ends when prompt is passed only; text must be available for pure text-to-video. |
references[] | Media entry for content[] | Press media_type and role to convert to image_url, video_url or audio_url. |
size | resolution | Both must be consistent when they are imported. |
aspect_ratio | ratio | Both must be consistent when they are imported. |
first_frame / last_frame | Media entry role | first_frame, last_frame, cannot be used in a common mix of reference media assets. |
The following conflicts return 400 directly before creating task, and will not be silently discarded field:
contentappears withreferences.promptappears at the same time ascontent[].textbut does not match.sizeappears at the same time asresolution, oraspect_ratioandratiobut does not match the values.durationappears alongsideframes; the SZ model does not supportframesusingduration.
Visible false, 0, 0.0 and duration: -1 will be retained. service_tier in SZ default;flex does not support. priority, execution_expires_after, safety_identifier et al. field will still be verified in the official format of Volcengine, and the actual validity will be based on model capacity and account configuration.
Model Selection
| Models | Positioning | resolution | duration |
|---|---|---|---|
seedance-2.0-sz | Standard Multimodular Video Generation | 480P, 720P, 1080P, 4K | 4 - 15 seconds, or smart duration -1 |
seedance-2.0-sz-fast | Rapid Multimodular Video Generation | 480P, 720P | 4 - 15 seconds, or smart duration -1 |
seedance-2.0-sz-mini | Lightweight multimodular video generation | 480P, 720P | 4 - 15 seconds, or smart duration -1 |
seedance-2.5-sz | New generation multimodular video generation | 480P, 720P, 1080P | 4 - 30 seconds, or smart duration -1 |
Actual available models, resolution, duration and aspect ratio are based on GET /v1/models return capability and console.
Capacity boundaries
| Capacity | seedance-2.0-sz Series | seedance-2.5-sz |
|---|---|---|
| text-to-video | Support | Support |
| Picture reference | Up to 9 | Maximum 30 |
| Video reference | Up to 3 | Maximum 10 |
| Audio Reference | maximum 3; photo or video required | maximum 10; photo or video required |
| Mixed media assets | Up to 15 references media assets | Up to 50 references media assets |
| First / last frame | Support | Support |
| Video Edit / Extension | Support | Based on model capabilities |
| Realist reference. | Support; content security clearance still required | Support; content security clearance still required |
Audio cannot be entered separately. You can submit any legitimate combination of text, pictures, videos, audio, but at least one picture or video is required to submit audio references. media assets URLs must be a stable public media straight chain that can be downloaded without login, cookies or extra authentication Header.
request parameters
Parameters are divided into two columns. The two columns represent the same set of video capabilities: the common column is suitable for MoonApiX SDK and cross-model access, and the official column is suitable for the direct re-use of Volcengine content[] request. The two columns are not used in the same request.
| MoonApiX Unified Common Parameters | Volcengine-compatible compatible parameters |
|---|---|
model | model (Book still the MoonApiX public model ID) |
prompt | text entries in content[] |
references[]: media_type, role, url, alias | content[]: image_url, video_url, audio_url entries, and fill role, unique alias |
aspect_ratio | ratio |
size | resolution |
duration, generate_audio, watermark, seed, callback_url | Same official field; camera_fixed, return_last_frame, omni_reference_task_type, output_format etc. |
MoonApiX Unified Universal Video Parameters
| field | Type | Annotations |
|---|---|---|
model | string | It's gonna be filled. Four SZ public models. |
prompt | string | Video description, with @alias references references[] media assets. |
references[] | array | Harmonizes the media assets array; entries use media_type, role, url and optional alias. |
aspect_ratio | string | Video aspect ratio, e.g. 16:9, 9:16, 1:1 or adaptive. |
size | string | Common resolution field, mapped to the model's resolution by the server. |
duration | integer | 2.0 Support 4 - 15 sec, 2.5 Support 4 - 30 sec; -1 is smart duration. |
generate_audio | boolean | Whether or not to generate a track. |
watermark, seed, callback_url | boolean/integer/string | General control field, whether model capabilities are used. |
Volcengine-compatible compatible parameters
| field | Type | Annotations |
|---|---|---|
model | string | To fill in. Fill in the MoonApiX public model ID listed on this page. |
content[] | array | Multimodal entries of type text, image_url, video_url or audio_url. The 2.5 draft-to-final workflow uses a separate draft_task item described below. |
ratio | string | Compatible aspect ratio, such as 16:9, 9:16, 1:1, 21:9 or adaptive. |
resolution | string | Compatible resolution, such as 480p, 720p, 1080p or 4k. |
duration | integer | Target duration; SZ does not support frames. |
generate_audio, watermark, seed, callback_url | boolean/integer/string | Consistent with the semantic Volcengine-compatible, visible false, 0 will be retained. |
camera_fixed, return_last_frame, omni_reference_task_type, output_format | mixed | Use only when the SZ type is selected. |
draft | boolean | For a seedance-2.5-sz draft, set true and explicitly request resolution=480p. Omit it or set false for the final. See the full workflow below. |
generateAudio is a historical alias, semantics are the same as generate_audio, and the new client should use the underlined field. Visible false will not be discarded as default value.
Create Example
1. Text-only video generation
curl https://moonapix.com/v1/videos \
-H "Authorization: Bearer <MOONAPIX_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.0-sz-fast",
"prompt": "一只橘猫在窗边伸懒腰,镜头缓慢推近,午后自然光,写实风格。",
"duration": 4,
"ratio": "16:9",
"resolution": "480p",
"generate_audio": true,
"watermark": false
}'2. Single image image-to-video (Closure sound)
curl https://moonapix.com/v1/videos \
-H "Authorization: Bearer <MOONAPIX_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.0-sz-mini",
"prompt": "让人物自然转身并向镜头微笑,保持服装和脸部特征稳定。",
"duration": 4,
"aspect_ratio": "9:16",
"resolution": "480p",
"generate_audio": false,
"references": [
{
"media_type": "image",
"role": "reference_image",
"url": "https://example.com/person.png",
"alias": "人物"
}
]
}'3. Picture + Video + Audio Group (to generate audio video)
{
"model": "seedance-2.0-sz",
"prompt": "使用@人物的外观,参考@动作的运镜,并将@音乐作为背景音乐。",
"duration": 8,
"ratio": "16:9",
"resolution": "720p",
"generate_audio": true,
"references": [
{ "media_type": "image", "role": "reference_image", "url": "https://example.com/person.png", "alias": "人物" },
{ "media_type": "video", "role": "reference_video", "url": "https://example.com/motion.mp4", "alias": "动作" },
{ "media_type": "audio", "role": "reference_audio", "url": "https://example.com/music.mp3", "alias": "音乐" }
]
}4. 1 + 1 audio + 1 video (official content[] shape and Asset://)
Prepare three types of media assets first through /v1/assets/uploads mode=asset target model and confirm each media assets returns all generation_ready=true and preparation_status=ready. Three are still to be used when task is created References for visible writing request body:
{
"model": "seedance-2.5-sz",
"content": [
{
"type": "image_url",
"role": "reference_image",
"image_url": { "url": "Asset://asset_image_demo" }
},
{
"type": "audio_url",
"role": "reference_audio",
"audio_url": { "url": "Asset://asset_audio_demo" }
},
{
"type": "video_url",
"role": "reference_video",
"video_url": { "url": "Asset://asset_video_demo" }
}
],
"duration": 5,
"ratio": "16:9",
"resolution": "720P",
"generate_audio": true,
"watermark": false
}Audio reference must be submitted with a picture or video reference, and cannot be created as a separate audio input task. Three types of media assets can also Change to references[]; the same request does not submit content and references.
Multigraph + MultiVideo + Multi Audio (MoonApiX Unified Generic Parameters)
The same scene is expressed in a single references[] format, suitable for MoonApiX SDK and cross-model calls:
{
"model": "seedance-2.5-sz",
"prompt": "保持 @Image1、@Image2 的主体特征,参考 @Video1、@Video2 的动作,并融合 @Audio1、@Audio2 的声音氛围。",
"references": [
{ "media_type": "image", "role": "reference_image", "url": "https://example.com/image-1.png", "alias": "Image1" },
{ "media_type": "image", "role": "reference_image", "url": "https://example.com/image-2.png", "alias": "Image2" },
{ "media_type": "video", "role": "reference_video", "url": "https://example.com/video-1.mp4", "alias": "Video1" },
{ "media_type": "video", "role": "reference_video", "url": "https://example.com/video-2.mp4", "alias": "Video2" },
{ "media_type": "audio", "role": "reference_audio", "url": "https://example.com/audio-1.mp3", "alias": "Audio1" },
{ "media_type": "audio", "role": "reference_audio", "url": "https://example.com/audio-2.mp3", "alias": "Audio2" }
],
"duration": 8,
"aspect_ratio": "16:9",
"size": "720p",
"generate_audio": true
}5a. Multiple images + videos + audio (Volcengine-compatible parameters)
The Volcengine-compatible Seedance shape supports the combination of multiple pictures, videos and audio in the same request. The following example uses a combination of 2 + 2 + 2; please add or delete entries based on the capacity ceiling of the selected SZ model.
{
"model": "seedance-2.5-sz",
"content": [
{ "type": "text", "text": "保持 @Image1、@Image2 的主体特征,参考 @Video1、@Video2 的动作,并融合 @Audio1、@Audio2 的声音氛围。" },
{ "type": "image_url", "role": "reference_image", "image_url": { "url": "https://example.com/image-1.png" }, "alias": "Image1" },
{ "type": "image_url", "role": "reference_image", "image_url": { "url": "https://example.com/image-2.png" }, "alias": "Image2" },
{ "type": "video_url", "role": "reference_video", "video_url": { "url": "https://example.com/video-1.mp4" }, "alias": "Video1" },
{ "type": "video_url", "role": "reference_video", "video_url": { "url": "https://example.com/video-2.mp4" }, "alias": "Video2" },
{ "type": "audio_url", "role": "reference_audio", "audio_url": { "url": "https://example.com/audio-1.mp3" }, "alias": "Audio1" },
{ "type": "audio_url", "role": "reference_audio", "audio_url": { "url": "https://example.com/audio-2.mp3" }, "alias": "Audio2" }
],
"duration": 8,
"ratio": "16:9",
"resolution": "720P",
"generate_audio": true,
"output_format": "mp4"
}2.0 and 2.5 Use the same official content[] structure; only the number of duration, resolution and media assets are to be adjusted to model capabilities.
6. first frame + last frame
{
"model": "seedance-2.0-sz",
"prompt": "从室内平滑过渡到户外,保持主体和色彩连续。",
"duration": 6,
"ratio": "16:9",
"resolution": "1080p",
"generate_audio": false,
"content": [
{ "type": "image_url", "role": "first_frame", "image_url": { "url": "https://example.com/first.jpg" } },
{ "type": "image_url", "role": "last_frame", "image_url": { "url": "https://example.com/last.jpg" } }
]
}7. Text on content[] and use smart duration
{
"model": "seedance-2.5-sz",
"content": [
{ "type": "text", "text": "一段电影感的城市夜景航拍。" }
],
"duration": -1,
"ratio": "adaptive",
"resolution": "1080p",
"seed": 42,
"camera_fixed": false,
"generate_audio": true,
"watermark": false,
"callback_url": "https://example.com/webhooks/moonapix"
}8. Seedance 2.5 Video Edit and Output MOV
{
"model": "seedance-2.5-sz",
"prompt": "保留主体动作,调整为清晨自然光,并延续原视频的镜头节奏。",
"duration": -1,
"ratio": "adaptive",
"resolution": "1080p",
"omni_reference_task_type": "edit",
"output_format": "mov",
"generate_audio": true,
"references": [
{
"media_type": "video",
"role": "reference_video",
"url": "https://example.com/source.mp4",
"alias": "原视频"
}
]
}All four SZ public models use duration. Do not send frames or set unnecessary fields to null. 2.5 edit / extend requests must satisfy the table above. Even if creation succeeds, the task may fail asynchronously if references or prompts do not match the selected task type.
2.5 Draft Mode
Draft mode for seedance-2.5-sz has two stages: create a 480p draft, then use the successful draft's task ID to create a 1080p final with the same model. This section applies only to seedance-2.5-sz, not to SZ 2.0 or other models.
Create a 480p Draft
Use the same body with POST /v1/videos or POST /api/v3/contents/generations/tasks:
{
"model": "seedance-2.5-sz",
"content": [
{ "type": "text", "text": "Slowly move the camera toward the product on the display stand, keeping soft natural light and a stable composition." }
],
"draft": true,
"resolution": "480p",
"duration": 4,
"ratio": "16:9",
"generate_audio": false
}Drafts require explicit 480p. Do not request a generated last frame (return_last_frame=true) or use service_tier=flex. Image, video and audio references remain subject to this page's media and role limits. Poll the draft and confirm status=succeeded with no error before creating the final. Keep the MoonApiX public id / task_id returned on creation.
Create a 1080p Final From the Draft
content must be an array containing exactly one draft_task item. draft_task.id is one string: use the MoonApiX task_ public task ID from the previous step or an eligible cgt- draft ID as described below. Choose one ID. The example uses a placeholder:
{
"model": "seedance-2.5-sz",
"content": [
{ "type": "draft_task", "draft_task": { "id": "task_draft_example" } }
],
"resolution": "1080p"
}To use cgt-, change only the value of the same draft_task.id field, for example cgt-20261027000000-example. Do not add another field or submit both IDs. The format is cgt-, 14 digits, a hyphen and 1 to 64 ASCII letters or digits. It must identify exactly one known draft belonging to the current user, with the same public model and matching execution configuration. Unknown IDs, multiple matches, or a different owner or execution configuration are rejected; arbitrary external task IDs are not accepted. The final creation response continues to return a MoonApiX task_ public task ID. Use that ID for subsequent queries and downloads. This compatibility does not apply to other APIs or models.
Use the same public model and explicit 1080p; omit draft or set it to false. Do not resend prompt, text or media items, references, image/video/audio inputs, duration / seconds, ratio / aspect_ratio, seed, generate_audio, camera_fixed or omni_reference_task_type, even with the same values. The final inherits the draft's inputs and generation settings.
Both ID forms have the same eligibility rules: the draft must belong to the current user, use the same public model, have succeeded with 480p output, and be used within seven days of its original creation time. Deleted or expired tasks, changed execution configuration, missing trusted task or original billing facts, unsuccessful or non-draft tasks, and another user's tasks are rejected. The top-level draft_task_id field belongs to other model workflows; SZ 2.5 uses content[].draft_task.id as shown here.
Draft and final are separate tasks and are billed independently by actual token usage. A draft uses the ordinary 480p billing category. The final's video-input category depends on whether the original draft inputs included a reference video. The quota reservation is estimated from that category and the draft's verified output duration and aspect ratio; final settlement uses the final task's actual token usage. The model reuses the original reference-video duration without MoonApiX resending it. This does not mean the reservation precisely accounts for reference-video duration. The generated draft video is not counted as a new reference video. Read current amounts from the console, pricing API and actual billing records.
Reference media assets role
role | Purpose |
|---|---|
reference_image | Normal Picture Reference |
first_frame | Picture of first frame |
last_frame | Picture of last frame |
reference_video | Actions, images or mirror reference video |
reference_audio | Audio reference; must be submitted with pictures or videos |
@alias in prompt is used only to describe the semantics of media assets, and the service is still based on the structured role of references[] or content[]. When strict first and last frames is required, first_frame/last_frame should be used in a visible manner.
Use anonymously accessible URLs from your own storage or ready MoonApiX Asset://asset_xxx references. Public URLs do not require /v1/assets/uploads; use the asset API when hosting, reuse or managed asset lifecycles are needed. Both methods remain subject to format, duration, size and content checks.
Query task and Download Results
Save returned id or task_id, query status after surrender, read result address only if status is succeeded and no error:
curl https://moonapix.com/v1/videos/<TASK_ID> \
-H "Authorization: Bearer <MOONAPIX_API_KEY>"Successful response may return the result address in result_url, video_url, url, output.url, output[].url or content.video_url. Please use the complete URL that API actually returns; it may be either an approved direct media address or a media address managed by MoonApiX. Do not collage, replace or delete signature parameters.
Only successful response can download with compatible content API invert when URLs are not available:
curl -L https://moonapix.com/v1/videos/<TASK_ID>/content \
-H "Authorization: Bearer <MOONAPIX_API_KEY>" \
-o result.mp4Do not read a URL for pending, submitted, running, failed or cancelled. Read error after failure. Result URLs may contain temporary signatures and expire; download or archive successful results promptly.
billing Method
This family is billed by Seedance token usage: the model's token price multiplied by task token usage. Tasks containing video references use the video-input billing category; other tasks use the category without video input. Check the model list, console and billing records for current prices.