WaveSpeedAI APIWan 2.1 14b Vace

Wan 2.1 14b Vace

Wan 2.1 14b Vace

Playground

Try it on WavespeedAI!

VACE is an all-in-one model designed for video creation and editing. It encompasses various tasks, including reference-to-video generation (R2V), video-to-video editing (V2V), and masked video-to-video editing (MV2V), allowing users to compose these tasks freely. This functionality enables users to explore diverse possibilities and streamlines their workflows effectively, offering a range of capabilities, such as Move-Anything, Swap-Anything, Reference-Anything, Expand-Anything, Animate-Anything, and more.

Features

Wan2.1 VACE: Three Core Capabilities Analysis

Multi-modal Information Input,Making video generation more controllable.

Traditional video generation workflows, once completed, make it difficult to adjust character postures, actions, scene transitions, and other details. Wan2.1 VACE provides powerful controllable capabilities, supporting generation based on human poses, motion flow, structural preservation, spatial movement, camera angles, and other controls, while also supporting video generation based on themes and background references.

The core technology behind this is Wan VACE’s multi-modal input mechanism. Unlike traditional models that rely solely on text prompts, Wan VACE(Wan2.1 VACE) has built a unified input system that integrates text, images, videos, masks, and control signals.

For image input, Wan VACE (Wan 2.1 VACE) supports object reference images or video frames. For video input, users can use Wan VACE to regenerate content through operations such as erasing and local expansion. For local regions, users can specify editing areas through binary 0/1 signals. For control signals, Wan VACE (Wan2.1 VACE) supports depth maps, optical flow, layouts, grayscale, line drawings, and pose estimation.

Unified Single Model - One-Stop Solution for Multiple Tasks

Wan VACE (Wan2.1 VACE) supports content replacement, addition, or deletion operations in specified areas within videos. In terms of time dimension, Wan VACE can arbitrarily extend the video length at the beginning or end. In terms of spatial dimension, it supports progressive generation of backgrounds or specific regions, such as background replacement - under the premise of preserving the main subject, the background environment can be changed according to prompts.

Free Combination of Multiple Tasks - Unleashing AI Creative Boundaries

Wan VACE(Wan2.1 VACE) also supports the free combination of various single-task capabilities, breaking through the limitations of traditional expert models that work in isolation. As a unified model, it can naturally integrate capabilities such as video generation, pose control, background replacement, and local region editing. There’s no need to train new models for single-function tasks separately.

Authentication

For authentication details, please refer to the Authentication Guide.

API Endpoints

Submit Task & Query Result


# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/wavespeed-ai/wan-2.1-14b-vace" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "images": [
        "https://d3gnftk2yhz9lr.wavespeed.ai/media/f82c31a9020c49459ec9e57f26d0a22f/images/1747909398229595025_hWgc952Y.png",
        "https://d3gnftk2yhz9lr.wavespeed.ai/media/dd703f8dc97646268d372cdd689fdccc/images/1748410400501789821_GO6eFJKL.png"
    ],
    "video": "",
    "task": "depth",
    "prompt": "The elegant lady carefully selects bags in the boutique, and she shows the charm of a mature woman in a black slim dress with a pearl necklace, as well as her pretty face. Holding a vintage-inspired blue leather half-moon handbag, she is carefully observing its craftsmanship and texture. The interior of the store is a haven of sophistication and luxury. Soft, ambient lighting casts a warm glow over the polished wooden floors",
    "negative_prompt": "",
    "duration": 5,
    "size": "832*480",
    "num_inference_steps": 30,
    "guidance_scale": 5,
    "flow_shift": 16,
    "context_scale": 1,
    "seed": -1,
    "enable_safety_checker": true
}'

# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"

Parameters

Task Submission Parameters

Request Parameters

ParameterTypeRequiredDefaultRangeDescription
imagesarrayNohttps://d3gnftk2yhz9lr.wavespeed.ai/media/f82c31a9020c49459ec9e57f26d0a22f/images/1747909398229595025_hWgc952Y.pnghttps://d3gnftk2yhz9lr.wavespeed.ai/media/dd703f8dc97646268d372cdd689fdccc/images/1748410400501789821_GO6eFJKL.png-URL of ref images to use while generating the video.
videostringNo-The video for generating the output.
taskstringNodepth-Extract control information from the provided video to guide video generation.
promptstringYes-
negative_promptstringNo-The negative prompt for generating the output.
mask_videostringNo--URL of the mask video.
mask_imagestringNo-URL of the mask image.
first_imagestringNo--URL of the first image.
last_imagestringNo--URL of the last image.
durationintegerNo55 ~ 10The duration of the generated media in seconds.
sizestringNo832*480832*480, 480*832, 1280*720, 720*1280The size of the generated media in pixels (width*height).
num_inference_stepsintegerNo301 ~ 40The number of inference steps to perform.
guidance_scalenumberNo50.0 ~ 20.0The guidance scale to use for the generation.
flow_shiftnumberNo160.0 ~ 30.0The shift value for the timestep schedule for flow matching.
context_scalenumberNo10.0 ~ 2.0Controls how close you want the model to stick to the reference context.
seedintegerNo-1-1 ~ 2147483647The random seed to use for the generation. -1 means a random seed will be used.
enable_safety_checkerbooleanNotrue-If set to true, the safety checker will be enabled.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.has_nsfw_contentsarrayArray of boolean values indicating NSFW detection for each output
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Query Parameters

Result Request Parameters

ParameterTypeRequiredDefaultDescription
idstringYes-Task ID

Result Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
dataobjectThe prediction data object containing all details
data.idstringUnique identifier for the prediction, the ID of the prediction to get
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.has_nsfw_contentsarrayArray of boolean values indicating NSFW detection for each output
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds
© 2025 WaveSpeedAI. All rights reserved.