Skip to content

Wan VACE 14B

Integrate

Model id wan-vace-14b
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/wan-vace-14b?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Files like the example: $0.405 405 API credits your files are measured before the run Run it on this page

Get API key
Alibaba Video to Video Reference inputsup to 720p #image-to-video#video-to-video#text-to-video

General VACE 14B video model: pick a task (depth, pose, inpainting, outpainting, reframe) with many optional inputs

Made on Doitong

Public works made with Wan VACE 14B by the Doitong community. Reuse a prompt in one click.

Public works shown: 2
Create a realistic cinematic UGC-style commercial video, exactly 30 seconds long. The entire scen... Video

Create a realistic cinematic UGC-style commercial video, exactly 30 seconds long. The entire scene takes place inside a modern passenger airplane during a daytime flight. Natural smartphone-like cinematography, realistic airplane cabin, authentic passengers, natural lighting, realistic skin...

Реалистичная бытовая сцена в советской одесской квартире зимним вечером. Женщина находится на кух... Video

Реалистичная бытовая сцена в советской одесской квартире зимним вечером. Женщина находится на кухне, мужчина — в комнате и прихожей. Атмосфера обычной советской семьи перед приходом гостей. Голоса: все персонажи говорят по-русски с естественным, выразительным одесским говором. Характерная...

Build a request

Controls are generated from the model schema. The code and the price update as you change them.

•required

Text instructions that guide video generation.

resolution default auto

Resolution for the output video.

aspect_ratio default auto

Aspect ratio for the resulting video.

default 81

Output frame count, with an inclusive range of 81–241.

default 0

Interpolation count: 0 leaves the original frames uninterpolated; other values specify how many intermediate frames to generate between them.

Advanced negative_prompt · video · mask_video_url · mask_image_url · ref_image_urls · task · sampler · acceleration · video_quality · video_write_mode · interpolator_model · transparency_mode · image · end_image · frames_per_second · num_inference_steps · guidance_scale · shift · temporal_downsample_factor · auto_downsample_min_fps · seed · match_input_frames_per_second · enable_safety_checker · enable_prompt_expansion · preprocess · enable_auto_downsample · return_frames_zip
default letterboxing, borders...

Negative prompt applied when generating a video.

video_url
Drop a file, or

Video reference for the model, supplied as a URL pointing to the source file when provided.

Drop a file, or

Mask reference for the model, supplied as a URL pointing to the source file when provided.

Drop a file, or

Guiding mask supplied by file URL, taking precedence over the mask video URL when present. The model uses this mask to guide masked-video creation.

Drop a file, or

Optional source-image URLs that give the model reference images to use.

task default depth

Type of task the model performs.

sampler default unipc

Sampler used when generating video.

acceleration default regular

Inference acceleration setting, with a choice of 'none' or 'regular': accelerated processing offers a substantial speed improvement at the expense of a very small output change.

video_quality default high

Quality level for the resulting video.

video_write_mode default balanced

Write mode for the resulting video.

interpolator_model default film

Frame interpolation model selection: either 'rife' or 'film'.

transparency_mode default content_aware

Transparency handling for the starting and ending frames, determining how their transparent regions are filled.

first_frame_url

Optional first-frame reference supplied by URL for the model to use when processing the video.

last_frame_url

Optional last-frame reference supplied by URL for the model to use when processing the video.

default 16

Generated video frame rate, applied only when `match_input_frames_per_second` is not true; accepted values are 5–30 frames per second.

default 30

Sampling step count, trading longer processing time for better quality as the count increases.

default 5

Prompt-alignment strength controlled through classifier-free guidance; increasing the scale encourages generated images to follow the text more closely.

default 5

Shift setting applied when generating video.

default 0

Video frame-skipping factor, expressed as an integer, with automatic upsampling applied once for every downsampling factor. Use 0 to leave temporal downsampling disabled.

default 15

Minimum frame rate, in frames per second, permitted after downsampling. For low-motion footage, reducing this value allows greater downsampling and longer sequences; very fast motion may require a higher value, though the default suits most videos. Automatic downsampling uses this threshold to seek the lowest factor that preserves detail.

Seed that makes generation reproducible. Setting it to None selects a seed randomly.

POST /run/wan-vace-14b?wait=20 quote → $0.405
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/wan-vace-14b?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Run this request

Your key stays in this browser: it is sent only to the Doitong API and saved (localStorage) only if you tick Remember. Get an API key

About Wan VACE 14B

A multipurpose video generator and editor selected through `task`: depth, pose, inpainting, outpainting or reframe. Inputs include a source `video_url`, mask video or image, `ref_image_urls`, and first and last frame URLs. `num_frames` goes from 17 to 241 and `resolution` from 240p to 720p. Samplers unipc, dpm++ and euler are selectable.

Parameters

Send either the canonical name or the native name, not both. Canonical names

NameType DefaultAllowed Description
promptrequired
Typestring
Text instructions that guide video generation.
negative_promptoptional
Typestring
Defaultletterboxing, borders, black bars, bright colors, overexposed, static, blurred details, subtitles, style, artwork, painting, picture, still, overall gray, worst quality, low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured, malformed limbs, fused fingers, still picture, cluttered background, three legs, many people in the background, walking backwards
Negative prompt applied when generating a video.
match_input_num_framesoptional
Typeboolean
Defaultfalse
Source of the generated video's frame count: false uses `num_frames`, while true copies the input video's frame count.
num_framesoptional
Typeinteger
Default81
17 – 241
Output frame count, with an inclusive range of 81–241.
match_input_frames_per_secondoptional
Typeboolean
Defaultfalse
Source of the generated video's frame rate: false uses `frames_per_second`, while true copies the input video's frame rate.
frames_per_secondoptional
Typeinteger | null
Default16
5 – 30
Generated video frame rate, applied only when `match_input_frames_per_second` is not true; accepted values are 5–30 frames per second.
taskoptional
Typeenum
Defaultdepth
depthposeinpaintingoutpaintingreframe
Type of task the model performs.
seedoptional
Typeinteger | null
Seed that makes generation reproducible. Setting it to None selects a seed randomly.
resolutionoptional
Typeenum
Defaultauto
auto240p360p480p580p720p
Resolution for the output video.
aspect_ratiooptional
Typeenum
Defaultauto
auto16:91:19:16
Aspect ratio for the resulting video.
num_inference_stepsoptional
Typeinteger
Default30
2 – 50
Sampling step count, trading longer processing time for better quality as the count increases.
guidance_scaleoptional
Typenumber
Default5
1 – 10
Prompt-alignment strength controlled through classifier-free guidance; increasing the scale encourages generated images to follow the text more closely.
sampleroptional
Typeenum
Defaultunipc
unipcdpm++euler
Sampler used when generating video.
shiftoptional
Typenumber
Default5
1 – 15
Shift setting applied when generating video.
video_urloptional video
Typeurl · video
Video reference for the model, supplied as a URL pointing to the source file when provided.
mask_video_urloptional
Typeurl · video
Mask reference for the model, supplied as a URL pointing to the source file when provided.
mask_image_urloptional
Typeurl · image
Guiding mask supplied by file URL, taking precedence over the mask video URL when present. The model uses this mask to guide masked-video creation.
ref_image_urlsoptional
Typeurl[] · image
Optional source-image URLs that give the model reference images to use.
first_frame_urloptional image
Typestring | null
Optional first-frame reference supplied by URL for the model to use when processing the video.
last_frame_urloptional end_image
Typestring | null
Optional last-frame reference supplied by URL for the model to use when processing the video.
enable_safety_checkeroptional
Typeboolean
Defaultfalse
Safety-checking switch whose off setting requires account authorization. Without that authorization, every request is checked regardless of the setting; true enables the checker.
enable_prompt_expansionoptional
Typeboolean
Defaultfalse
Controls whether prompt expansion is enabled.
preprocessoptional
Typeboolean
Defaultfalse
Controls preprocessing of the input video.
accelerationoptional
Typeenum
Defaultregular
nonelowregular
Inference acceleration setting, with a choice of 'none' or 'regular': accelerated processing offers a substantial speed improvement at the expense of a very small output change.
video_qualityoptional
Typeenum
Defaulthigh
lowmediumhighmaximum
Quality level for the resulting video.
video_write_modeoptional
Typeenum
Defaultbalanced
fastbalancedsmall
Write mode for the resulting video.
num_interpolated_framesoptional
Typeinteger
Default0
0 – 5
Interpolation count: 0 leaves the original frames uninterpolated; other values specify how many intermediate frames to generate between them.
temporal_downsample_factoroptional
Typeinteger
Default0
0 – 5
Video frame-skipping factor, expressed as an integer, with automatic upsampling applied once for every downsampling factor. Use 0 to leave temporal downsampling disabled.
enable_auto_downsampleoptional
Typeboolean
Defaultfalse
Automatic frame-count adaptation: enabling this lets the model process a temporally downsampled video of a suitable length, with interpolation afterward restoring the original frame count.
auto_downsample_min_fpsoptional
Typenumber
Default15
1 – 60
Minimum frame rate, in frames per second, permitted after downsampling. For low-motion footage, reducing this value allows greater downsampling and longer sequences; very fast motion may require a higher value, though the default suits most videos. Automatic downsampling uses this threshold to seek the lowest factor that preserves detail.
interpolator_modeloptional
Typeenum
Defaultfilm
rifefilm
Frame interpolation model selection: either 'rife' or 'film'.
transparency_modeoptional
Typeenum
Defaultcontent_aware
content_awarewhiteblack
Transparency handling for the starting and ending frames, determining how their transparent regions are filled.
return_frames_zipoptional
Typeboolean
Defaultfalse
Controls whether a ZIP archive containing every generated frame is also returned; enabled when true.
required Canonical name, also accepted

File parameters take a public https:// URL, a data: URI up to 10 MB, or the file_url of an upload. Files

Output

GET /requests/req_8k2m4q7x1z9c3v5b6n0p2r4t
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "wan-vace-14b",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 405,
    "usd": "0.405",
    "charged": 405,
    "refunded": 0
  },
  "input": {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  },
  "output": {
    "video": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_name": "0-output.mp4",
      "file_size": 1843200,
      "width": 1024,
      "height": 768,
      "fps": 1.0,
      "duration": 5,
      "num_frames": 1
    },
    "prompt": "string",
    "seed": 42,
    "frames_zip": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_name": "0-output.mp4",
      "file_size": 1843200
    }
  },
  "outputs": [
    {
      "type": "video",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_size": 1843200,
      "width": 1280,
      "height": 720,
      "duration": 5,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
Your files, your choiceEvery outputs[].url is a copy on our storage: kept forever (paid per GB-month) or 7 days for free, by your account setting or ?storage=.
Same shape on every modeltype, url, content_type, width, height and duration, for images, video and audio alike. output is the model’s own result object.
Fields of output
video
object {url, content_type, file_name, file_size, width, height, fps, duration, num_frames}Video file produced by generation.
prompt
stringPrompt that was used to generate the output.
seed
integerSeed value applied during generation.
frames_zip
object {url, content_type, file_name, file_size} | nullZIP archive containing every video frame, returned when requested.

More models: Video to Video

For AI agents: this page as Markdown is at https://doitong.com/developers/models/wan-vace-14b.md. All models and guides: https://doitong.com/developers/llms.txt