Wan 2.2 Animate combines a character image with a source video that supplies motion. In AKOOL's documented Character Swap API workflow, the image guides the character's appearance while the source MP4 provides the performance. The API response example identifies the underlying model as wavespeed-ai/wan-2.2/animate.
AKOOL exposes this through its Character Swap API. That is distinct from simply choosing a generic text-to-video model from a list of AI video tools.
TL;DR
- Appearance comes from the image: upload a PNG or JPEG character image.
- Motion comes from the video: provide an MP4 containing the performance you want to transfer.
- Animate and replace are different API modes:
animatetransfers motion to the character image, whilereplaceperforms the endpoint's documented face-replacement behavior. - Save the task ID: generation is asynchronous, so use the returned
_idto check status and download the finished video before its seven-day URL expires.
Table of Contents
- What is Wan Animate?
- How do animate and replace modes differ?
- How do you prepare a motion reference video?
- How do you use the Wan Animate API through AKOOL?
- Which prompts help character animation?
- Why does AI character motion transfer fail?
- How do you review and save the output?
- Frequently asked questions
What is Wan Animate?
Wan Animate is a reference-driven character animation workflow: one image defines the character's appearance, while a source video provides the motion to apply. In AKOOL's Character Swap API, the documented animate mode combines those inputs and can optionally use a short text prompt to guide the result.
The workflow is easier to understand as three assets:
| Input/output | Role |
|---|---|
| Character image | Defines the character you want to animate |
| Motion reference video | Supplies timing, body motion, and performance |
| Generated video | Combines the character appearance with the referenced motion |
AKOOL's create endpoint requires a character-image URL in PNG or JPEG and a source-video URL in MP4. The API response example identifies the model as wavespeed-ai/wan-2.2/animate, so that model name is supported as API-specific evidence. It should not be taken as proof that the public website exposes an identically named menu option.
How do animate and replace modes differ?
In AKOOL's documented endpoint, animate applies the motion from the source video to the character image. replace is a different mode that replaces faces in the source video using the supplied character image. These definitions apply to this AKOOL API endpoint, not every product that uses the Wan model family.
| Mode | Goal | Required inputs | What to review |
|---|---|---|---|
animate | Animate the supplied character using source-video motion | Character image + motion MP4 | Identity, body motion, clothing, hands, feet |
replace | Replace faces in the source video with the supplied character | Character image + source MP4 | Face match, tracking, pose changes, occlusion |
The endpoint defaults to animate when no mode is specified.
This distinction matters because animate vs replace describes two different transformations. If your goal is full AI character motion transfer, start with animate.
For a separate production workflow based on Kling, see AKOOL's guide to character swap with motion control. Kling 2.6 uses the same high-level idea of combining a character image with a reference performance, but it is a different model and workflow.
How do you prepare a motion reference video?
Use a clear source performance that matches the framing and body coverage of your character image. The cleaner the reference, the easier it is to judge whether errors came from the source material or from generation.
Match the framing
If your motion video shows a full-body walk, use a character image that also provides enough full-body information.
A tight portrait paired with running, dancing, or large leg movements forces the model to invent anatomy that the image never showed.
For stronger reference-led video consistency, AKOOL recommends clear subjects, visible identity details, and reference assets that define the elements you want to preserve.
Keep the performer visible
Choose a motion reference where the performer stays inside frame.
Avoid source clips where:
- feet repeatedly leave the frame,
- hands disappear behind the body,
- another person crosses the subject,
- the camera suddenly reframes,
- the performer becomes very small.
Reduce occlusion
Crossed arms, hidden hands, props covering the torso, and fast turns make performance transfer harder to review.
Better reference: full body visible, moderate movement, stable camera.
Harder reference: cropped feet, repeated spins, hands hidden behind props, multiple cuts.
How do you use the Wan Animate API through AKOOL?
Send a character image URL and source MP4 URL to AKOOL's Character Swap create endpoint, set mode to animate, optionally add a prompt, then save the returned _id. Use that identifier with the result endpoint until the task reaches completed.
The documented create endpoint is:
POST https://openapi.akool.com/api/open/v4/characterSwap/create
AKOOL accepts either an x-api-key header or Bearer authorization.
Use the official Character Swap API instructions for current authentication and endpoint details.
Redacted request example
curl --location 'https://openapi.akool.com/api/open/v4/characterSwap/create' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"image": "https://example.com/approved-character.png",
"video": "https://example.com/reference-motion.mp4",
"resolution": "720p",
"mode": "animate",
"prompt": "Follow the reference performance with smooth motion. Keep the character appearance and clothing consistent."
}'
The important fields are:
| Field | Purpose |
|---|---|
image | PNG/JPEG character-image URL |
video | MP4 motion-reference URL |
duration | Optional, 1 to 120 seconds; otherwise detected from source |
resolution | 480p, 720p, or 1080p |
mode | animate or replace |
prompt | Optional guidance, maximum 500 characters |
webhookurl | Optional completion callback |
These values are documented endpoint parameters, not general Wan limits across every platform. The response includes an _id. Save it.
To check the job:
GET https://openapi.akool.com/api/open/v3/content/video/infobymodelid?video_model_id=YOUR_TASK_ID
Task states are:
1: queueing2: processing3: completed4: failed
When status reaches 3, the generated URL appears in the video field.
Which prompts help character animation?
Treat text as guidance, not the source of the performance. The motion reference should define the action. Your prompt should reinforce identity, framing, and simplicity instead of demanding movement that conflicts with the source video.
1. Simple gesture
Apply the reference video's slow greeting gesture to the supplied character. Keep the same clothing and hair. Use smooth movement.
2. Presenter
Follow the reference performer's hand movement and pacing. Keep the character facing the camera. Avoid adding extra gestures.
3. Walking
Follow the supplied walk cycle. Maintain the character's proportions and outfit. Keep both feet visible.
4. Stylized character
Animate the supplied illustrated character using the reference timing. Retain its flat colors and drawn edges.
5. Repair prompt
Use the same character and a slower, uncropped reference clip. Keep the motion simple and the full body in frame.
Do not treat these as magic syntax. They are optional scope constraints around a performance already supplied by video.
Why does AI character motion transfer fail?
Most visible failures come from weak input alignment or motion that asks the model to reconstruct information missing from the character image. Fix the source pair before adding more prompt language.
| Symptom | Likely cause | First correction |
|---|---|---|
| Feet deform or disappear | Feet cropped in image/reference | Use full-body inputs |
| Hands look unstable | Hands hidden or crossing | Choose clearer hand motion |
| Body proportions drift | Image and performer builds differ strongly | Use a closer body/proportion match |
| Fast turn breaks identity | Large rotation or face occlusion | Slow the reference movement |
| Background shifts | Reference camera/background changes | Use a steadier source clip |
| Illustrated style softens | Motion reconstruction changes edges/textures | Simplify motion and inspect style drift |
A motion reference can reduce guesswork, but it cannot guarantee perfect character preservation. This is why input preparation matters as much as the prompt.
How do you review and save the output?
A completed API task only means generation finished. It does not mean the visual result passed your quality check. Review the beginning, middle, and end before accepting the clip.
Check:
- Face: Does identity remain recognizable?
- Hands: Do fingers survive gestures and crossings?
- Feet: Are both feet stable during walking or full-body movement?
- Clothing: Do colors, patterns, and silhouettes remain consistent?
- Background: Does it remain coherent with the motion?
AKOOL's result endpoint returns actual duration, resolution, deducted credits, final video URL, and failure reason where applicable.
Generated resources are valid for seven days, so download and archive approved outputs promptly.
Try the Workflow
If you need broad generation options beyond this API workflow, explore AKOOL's AI video tools.
For another reference-driven approach, read character swap with motion control. For guidance on preserving characters and visual identity across related clips, see reference-led video consistency.

