WaveSpeedAI APIWavespeed AIWan 2.2 Video Edit

Wan 2.2 Video Edit

Wan 2.2 Video Edit

Playground

Try it on WavespeedAI!

Wan 2.2 Video Edit lets you modify videos via text prompts (e.g., change clothing or characters). Powered by Wan 2.2, it supports 480p ($0.20/5s) and 720p ($0.40/5s), up to 120s. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

Wan 2.2 Video Edit

What is Wan 2.2 Video Edit?

Wan 2.2 Video Edit is a text-driven video editor: describe the change, and the model applies it directly to your footage. Swap identities, change outfits and props, recolor or restyle scenes, and adjust attributes—while keeping motion and continuity consistent across frames.

Pricing

OutputPrice per 5sMax Length
480p$0.20120 s
720p$0.40120 s

Designed for

  • Marketing & Brand – Quick wardrobe swaps, colorway tests, and on-brand variations without reshoots.
  • E-commerce & Fashion – Try new styles/prints on existing clips; localize looks per market.
  • Post/Studios – Fast previz and pickup fixes (outfit tweaks, minor character replacements).
  • Creators & Social Teams – Rapid A/B ideas for thumbnails, shorts, and trend edits.

How to Use

  1. Upload video (required) – the clip you want to edit.

  2. Write prompt (required) – clear edit intent, such as:

    • Change the woman’s vest to a bikini.
    • Replace the man with a teenage boy.
    • Turn the jacket red and add sunglasses.
  3. Set resolution – 480p or 720p.

  4. Set seed – use a fixed number to reproduce results.

  5. Generate – wait a moment, review, and iterate (adjust prompt or seed for variants).

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.2/video-edit" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "resolution": "480p",
    "seed": -1
}'

# 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
videostringYes-The video for generating the output.
promptstringYes-The positive prompt for the generation.
resolutionstringNo480p480p, 720pThe resolution of the output video.
seedintegerNo-1-1 ~ 2147483647The random seed to use for the generation. -1 means a random seed will be used.

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 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.outputsstringArray 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.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.