alibaba/wan-vace
Wan Vace by Alibaba - AI-powered video editing and transformation. Apply style transfer, motion control, lip-sync, and visual effects to existing videos with natural language instructions.
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum each
Example output — click Run to generate your own
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
https://api.sandbase.ai/v1/runalibaba/wan-vaceInput Schema
14 parameters · 1 required · 13 optional
| Parameter | Type | Required | Description |
|---|---|---|---|
prompt | string | Required | The text prompt to guide video generation. |
mask | string | Optional | URL to the guiding mask file. If provided, the model will use this mask as a reference to create masked video. If provided mask video url will be ignored. |
seed | integer | Optional | Random seed for reproducibility. If None, a random seed is chosen. |
task | string | Optional | Task type for the model. · Options: depth, inpainting · Default: "depth" depthinpainting |
shift | number | Optional | Shift parameter for video generation. · Min: 1 · Max: 10 · Default: 5 |
video | string | Optional | URL to the source video file. If provided, the model will use this video as a reference. |
num_frames | integer | Optional | Number of frames to generate. Must be between 81 to 100 (inclusive). Works only with only reference images as input if source video or mask video is provided output len would be same as source up to 241 frames · Min: 81 · Max: 240 · Default: 81 |
preprocess | boolean | Optional | Whether to preprocess the input video. · Default: false |
resolution | string | Optional | Resolution of the generated video (480p,580p, or 720p). · Options: 480p, 580p, 720p · Default: "720p" 480p580p720p |
aspect_ratio | string | Optional | The aspect ratio of the generated image. · Options: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16 21:916:93:24:35:41:14:53:42:39:16 |
mask_video_url | string | Optional | URL to the source mask file. If provided, the model will use this mask as a reference. |
ref_image_urls | string[] | Optional | Urls to source reference image. If provided, the model will use this image as reference. |
frames_per_second | integer | Optional | Frames per second of the generated video. Must be between 5 to 24. · Min: 5 · Max: 24 · Default: 16 |
num_inference_steps | integer | Optional | Number of inference steps for sampling. Higher values give better quality but take longer. · Min: 2 · Max: 40 · Default: 30 |
Output Schema
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the generation task |
status | string | Task status: pending, running, completed, failed, timeout |
model | string | Model used for the generation |
outputs | array | Array of output items |
outputs[].url | string | URL of the generated artifact |
outputs[].content_type | string | MIME type (e.g. image/png, video/mp4) |
error | object | null | Error details if failed, null on success |
error.type | string | Machine-readable error type code |
error.message | string | Human-readable error description |
Async Workflow
This model uses asynchronous execution. Submit a request and poll for the result.
- Submit — POST to /v1/run, receive an
id - Poll — GET /v1/run/{id} until status is
completed,failed, ortimeout - Retrieve — Read
outputsfrom the completed response
Code Examples
Ready-to-run snippets
# Step 1: Submit
curl -X POST https://api.sandbase.ai/v1/run \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "alibaba/wan-vace",
"task": "depth",
"shift": 5,
"video": "https://static.sandbase.ai/examples/alibaba/wan-vace/input_video_0.mp4",
"prompt": "The video shows a man riding a horse on a vast grassland. He has long lavender hair and wears a traditional dress of a white top and black pants. The animation style makes him look like he is doing some kind of outdoor activity or performing. The background is a spectacular mountain range and cloud sky, giving a sense of tranquility and vastness. The entire video is shot from a fixed angle, focusing on the rider and his horse.",
"num_frames": 81,
"preprocess": false,
"resolution": "720p",
"mask_video_url": "https://static.sandbase.ai/examples/alibaba/wan-vace/input_mask_video_url_2.mp4",
"ref_image_urls": [
"https://static.sandbase.ai/examples/alibaba/wan-vace/input_ref_image_urls_1.png"
],
"frames_per_second": 16,
"num_inference_steps": 30
}'
# Step 2: Poll result (replace <id>)
curl https://api.sandbase.ai/v1/run/<id> \
-H "Authorization: Bearer YOUR_API_KEY"API README
Vace
Vace is the Wan Wan workflow for unified conditioned video. It models visual appearance and time together so the route’s written direction, source imagery, speech, masks, or structural conditions influence one coherent result rather than a collection of disconnected frames or a generic endpoint response.
Choose this exact route when the available assets and deliverable specifically call for unified conditioned video. Identify every subject and source, state the desired action or transformation, then describe camera behavior, pacing, environment, lighting, atmosphere, and preservation requirements; local schema fields handle resolution, duration, seed, and delivery separately from the creative brief.
Highlights
- Wan Composable video conditions. Combines reference, mask, structural, and written guidance.
- Wan Unified generation and editing. Supports creation and revision tasks through one temporal framework.
- Wan Cross-frame consistency. Maintains conditions and visual logic over time.
- Wan Reference-aware synthesis. Preserves specified subjects, geometry, or regions while generating new content.
Pricing
| Configuration | Billing unit | Price |
|---|---|---|
| Base generation | Per request | $0.2 |
When to Use
| ✅ Good fit | ❌ Consider alternatives |
|---|---|
| The project needs this exact named workflow | The intended task belongs to another media route |
| All required reference or control media is available | Necessary assets or rights are unavailable |
| The brief can state transformation and preservation goals | Output must be deterministic at pixel or frame level |
| Supported duration, resolution, and format fit delivery | Final placement requires unsupported specifications |
| An asynchronous generated result fits production | A live frame-synchronous response is mandatory |
Prompt Guide
Identify the primary subject and every source or condition, state the intended transformation or action, then describe composition, camera or viewpoint, lighting, materials, pacing, atmosphere, and exact preservation requirements. Refer to multiple inputs in their schema order.
{
"prompt": "A precisely directed composition with explicit subject, transformation, camera or viewpoint, lighting, material, and preservation requirements",
"mask": "https://example.com/reference.png",
"seed": 1,
"task": "depth"
}
Technical Specs
| Spec | Value |
|---|---|
| Model ID | alibaba/wan-vace |
| Input fields | mask (string)<br>seed (integer)<br>task (string; depth, inpainting)<br>shift (number)<br>video (string)<br>prompt (string)<br>num_frames (integer)<br>preprocess (boolean)<br>resolution (string; 480p, 580p, 720p)<br>aspect_ratio (string; 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16)<br>mask_video_url (string)<br>ref_image_urls (array)<br>frames_per_second (integer)<br>num_inference_steps (integer) |
| Required input | prompt |
| Output fields | url, content_type |
| Execution | Asynchronous job |
Related Models
alibaba/wan/2.1/text-to-videoalibaba/wan/2.1/image-to-videoalibaba/wan/2.1/vace

