Skip to main content

Wan 2.2 Spicy is an uncensored image-to-video endpoint that animates an opening frame into exactly 5 or 8 seconds at 480p or 720p. An optional closing frame pins the ending or closes a loop, and the request needs no content declaration.

From $0.019/s5% below the Spicy list price

Workbench

Input

Image to video
Required. Describe motion and camera only; restating the outfit that is already visible invites the model to redraw it. at least 1 characters
1/1

Drop files or media links, paste, or browse · 1 file · Max 10 MB · JPG · PNG · WEBP · GIF

  • 1
1 / 1 files
The opening frame, and the single biggest lever. Wardrobe, body, set, light direction and the clip's aspect ratio all come from it. at least 1 characters
Durationaffects price
58
Exactly 5 or 8. Anything else is a validation error rather than a rounded clip.
affects price
480p or 720p, default 480p. It moves both the price and how long the task takes to return.
Seed
0 to 2147483647. Hold it while you compare five seconds against eight, or 480p against 720p, from the same plate. no lower than 0 · no higher than 2147483647
0/1

Drop files or media links, paste, or browse · 1 file · Max 10 MB · JPG · PNG · WEBP · GIF

0 / 1 files
Optional closing frame. Point it at the opening still to close a loop, or at a different composition when the shot has to land somewhere specific. at least 1 characters
Prompt expansionaffects price
Off by default. When on, the prompt is rewritten before generation — useful for a one-line brief, unhelpful once the motion description is precise.
Safety checkerOff

SpicyAPI does not run a safety checker on this model. Your prompt and media go to the model as written, and the model itself decides what comes back.

Checking your account before enabling submission and pricing.

Output

Ready for a new run
Example result

Related models and next tasks

Missing the model you need?

Tell us what to add and where you would use it. Requests go to the people who decide what gets onboarded next.

These previews show selected examples. Try your own prompt and settings in the Playground.

Two clip lengths and an optional closing frame

The Wan 2.2 Spicy image-to-video API turns one opening frame into 5 or 8 seconds of motion at 480p or 720p. It belongs to Alibaba's Wan 2.2 line and runs here with no platform content filter on top. An optional last_image_url pins the frame the clip has to land on, and enable_prompt_expansion rewrites a short brief before generation runs.

Open the playground
Two clip lengths and an optional closing frame
Duration
5 or 8 seconds — closed enum, default 5
Resolution
480p or 720p, default 480p
Required input
image_url (opening frame) and prompt
Closing frame
Optional last_image_url pins where the clip lands
Prompt expansion
enable_prompt_expansion, off by default, also affects price
Seed
0 to 2,147,483,647, optional
Duration
Five or eight seconds, chosen per callduration_seconds accepts 5 or 8, while the plain Wan 2.2 image-to-video endpoint in the same line has no duration field and renders exactly five seconds every time. Choosing 8 gives a gesture that needs an extra beat somewhere to land, at the same two resolution tiers as the shorter option.
Closing frame
The only Wan 2.2 endpoint here that takes onelast_image_url separates this endpoint from every other Wan 2.2 endpoint published here: plain Wan 2.2, Wan 2.2 LoRA, Wan 2.2 Animate and the Spicy LoRA family all leave the field out. Point it at a still and the motion has to resolve on that frame.
Pricing
Prompt expansion moves the priceenable_prompt_expansion is marked as price-affecting in this endpoint's schema, and switching it on adds a charge on top of the per-second rate. Left at its default of false, the bill comes from duration_seconds and the resolution tier alone, which is the cheaper way to run a prompt that is already precise.

What the Wan 2.2 Spicy API does well

Pick the clip length before anything else

Pick the clip length before anything else

duration_seconds takes 5 or 8 and nothing in between, so a value like 6 comes back as a validation error instead of a rounded clip. The plain Wan 2.2 image-to-video endpoint in the same line has no duration field at all and always returns five seconds, so moving a shot here is what buys the longer take.

last_image_url lands the shot on a frame you choose

last_image_url lands the shot on a frame you choose

Point it at a still that shows how the beat should resolve, and the clip has a target frame to reach. Chaining works off the same field: use that pinned still as the next call's image_url, and two clips meet on a frame they share, which keeps a multi-shot sequence from jumping at the cut.

  • Prompt expansion trades precision for convenience

    Turned on, a one-line brief is rewritten into a fuller shot description before generation starts. Turned off, which is the default, the exact wording submitted is what renders. The flag also moves the price, so it earns its place on a terse idea and gets in the way once the prompt already names the action, the camera and the light.

  • The opening frame decides the clip's shape

    There is no aspect_ratio field in the schema, so a 9:16 plate returns a 9:16 clip and a square one returns a square clip. Crop image_url to the delivery shape before uploading it, because no field in the request body changes the proportions afterwards and there is no padding or crop parameter.

  • Seed isolates one changed variable

    seed takes any integer from 0 to 2,147,483,647. Holding image_url, prompt, duration_seconds and resolution steady while the seed moves shows how much of a take comes down to the draw; holding the seed steady while one of the others moves shows what that parameter is worth. An identical seed does not promise an identical clip.

  • Three fields decide the bill

    Billing runs per second of delivered video, so duration_seconds is the first lever and the 480p or 720p tier is the second. enable_prompt_expansion is the third: it adds a charge when it is on. last_image_url and seed cost nothing, so pinning an ending or locking a draw is free.

Who Wan 2.2 Spicy is for

  • A gesture that needs more room to read

    Teams outgrowing a fixed five seconds

    A gesture that needs more room to read

    A slow reveal or a full turn toward camera does not always finish inside five seconds, and the plain Wan 2.2 endpoint has no way to ask for more. duration_seconds set to 8 buys three extra seconds at the same 480p and 720p tiers, which usually beats stitching two short takes together.

  • Pin the ending with a second still

    Sequence builders

    Pin the ending with a second still

    Give last_image_url a frame that shows exactly how the beat resolves, then open the next call on that same still. The sequence keeps the person, the wardrobe and the room across the cut, and each beat's prompt only has to describe what moves in between.

  • Choosing between Spicy, Spicy LoRA and plain Wan 2.2

    Teams comparing the Wan 2.2 endpoints

    Choosing between Spicy, Spicy LoRA and plain Wan 2.2

    Wan 2.2 Spicy sits between the other two: it has the duration choice and the closing frame that plain Wan 2.2 lacks, and it has no loras field, which is the whole reason to take the Spicy LoRA family. Pick this endpoint when the job needs flexible timing but no custom weights.

  • Turn expansion on only for a terse brief

    Iterative prompt writers

    Turn expansion on only for a terse brief

    A one-line idea gains from enable_prompt_expansion rewriting it into a full shot description before the render starts. A prompt that already states subject, action, camera and light renders closer to plan with the flag off, and the off position is also the cheaper one.

How to call the Wan 2.2 Spicy API

  1. Pick 5 or 8 seconds before writing the prompt

    duration_seconds decides how much motion the clip has room for. An eight-second brief needs a second beat and a word that links the two, while a five-second brief needs one action, so settle the length first and write to it.

  2. Crop the plate before you upload it

    image_url sets the clip's proportions, since the schema has no ratio field. Crop a 9:16 plate for feeds or a 16:9 plate for a wide frame before uploading, and check that the frame already shows the wardrobe, the set and the light direction you want kept.

  3. Decide what last_image_url should pin

    Leave it out when the prompt alone can land the motion. Set it to a still of the final pose when the beat has to end somewhere specific, or when the next clip in the sequence will open on that frame.

  4. Leave prompt expansion off once the prompt is precise

    enable_prompt_expansion helps a one-line idea and works against a prompt that already names the action, the camera and the light. It also changes what the call costs, so treat it as a deliberate choice on every request.

  5. Draft at 480p, hold the seed, re-render at 720p

    Find the take at the cheaper tier first. Once a seed and prompt pairing is worth keeping, resubmit the identical values with resolution set to 720p, then compare the two files side by side before paying for further passes.

  6. Store the task id with the payload that produced it

    Send an Idempotency-Key with the create call and keep the returned task id next to the exact image_url, seed, duration and resolution you sent. After a network timeout, query the stored id before resubmitting; the same record makes a clip reproducible weeks later.

Wan 2.2 Spicy worked examples

  • Pin a specific ending with a second frame

    last_image_url does not have to match the opening frame. Pointing it at a different composition lands the clip on a chosen final pose, which is what lets the next shot in a sequence open cleanly on the same still.

    She steps back from the window and settles onto the edge of the bed, catching the last low light across her shoulder as the curtain drifts still behind her
  • An eight-second beat the shorter tier can't hold

    A multi-part gesture, crossing the room and pausing at the door, needs duration_seconds set to 8 to read as one continuous action. The same prompt at five seconds arrives rushed, with the pause clipped off the end.

    He crosses the room slowly, unbuttoning his shirt one button at a time, and pauses at the doorway to glance back before the light dims to amber
  • Compare 480p against 720p from one seed

    The same image, prompt and seed submitted twice with only resolution changed is the fair way to tell whether a shot needs the sharper tier. Budget the 720p pass for the takes that survive the 480p round.

    She leans into the mirror to wipe the steam away, robe slipping off one shoulder, then turns toward the camera as the bathroom light warms behind her

Wan 2.2 Spicy API questions

Write the prompt to the duration you picked. Five seconds holds one continuous action and one camera behavior; eight seconds holds two, and the second one only lands if the sentence links them (she does this, then that). When last_image_url is set, describe the pose it shows in words as well, so the prompt and the pinned frame are asking for the same ending.

All Wan models22

Video models18