Introduction
Wan 2.2 LoRA Text to video renders a five or eight second clip from a written prompt on Alibaba's Wan 2.2 A14B model, with your own LoRA weights loaded on top. Choose landscape 16:9 or portrait 9:16 at 480p or 720p, add a negative prompt, and attach up to three LoRAs to each of three slots. The platform adds no content filter to the prompt, the weights or the clip.
Choose a mode by starting material
| What you have | Mode |
|---|---|
| a written description | Wan 2.2 LoRA Text to video |
| an opening frame to animate | Wan 2.2 LoRA Image to video |
Key features & highlights
Two experts, three LoRA slots
Wan 2.2 A14B splits denoising between a high-noise expert, which sets layout and motion, and a low-noise expert, which refines detail. high_noise_loras and low_noise_loras target one expert each and loras targets both. Most Wan 2.2 LoRAs on Hugging Face and Civitai are published as a matching pair of high-noise and low-noise files, and the two slots take them as they come.
Landscape or portrait, rendered natively
16:9 comes back at 832×480 or 1280×720 and 9:16 at 480×832 or 720×1280. A vertical clip is composed for the phone rather than cropped out of a wide shot.
Comparable runs
With the same seed and inputs we got the identical clip back, byte for byte. That makes LoRA strength sweeps honest: change one scale, keep everything else, and the difference you see is the LoRA.
A negative prompt
Unlike the image-to-video endpoint, this one accepts negative_prompt for what must stay out of the shot, such as blur, extra fingers or stray lettering.
Request parameters
| Parameter | Required | Description |
|---|---|---|
prompt | Yes | Required. Describe the people, the action and the camera move in plain sentences, and state ages for anyone in the shot. at least 1 characters |
negative_prompt | No | Things to keep out of the clip, such as blur, extra fingers, text or watermarks. Optional; leave it empty to let the prompt alone decide. |
aspect_ratio | No | 16:9 (default) or 9:16. Both are rendered natively; there is no square or other ratio. |
resolution | No | 480p (default) or 720p. 720p costs more per second and takes about twice as long. |
duration_seconds | No | Exactly 5 or 8. Any other value is rejected rather than rounded. |
loras | No | Up to three {path, scale} entries applied to both experts; scale 0 to 4, default 1. Use this slot for a single-file LoRA. Default: |
high_noise_loras | No | Up to three LoRAs on the high-noise expert, where composition and motion are decided. The high-noise file of a paired Wan 2.2 LoRA goes here. Default: |
low_noise_loras | No | Up to three LoRAs on the low-noise expert, where detail and texture resolve. The low-noise file of a paired Wan 2.2 LoRA goes here. Default: |
seed | No | 0 to 2147483647. The same seed with the same inputs returned an identical clip in our tests; hold it fixed while you sweep a LoRA's scale. |
Pricing
Billed per second of video at the chosen resolution; 720p costs more per second than 480p. The aspect ratio does not change the price, and loading LoRAs adds no separate charge.
| Specification | Price |
|---|---|
| $0.048 / second |
| $0.084 / second |
Use cases
A series in one look
Load a style LoRA and write a list of scenes. Each clip is a new shot, but the rendering stays the same across the set.
Vertical clips for feeds
Render 9:16 at 720p for short-video platforms without reframing a landscape clip.
Uncensored concepts with your own weights
Neither the prompt nor the LoRA files are reviewed. In our tests the Mild and Moderate levels came back as written, while the strongest requests came back toned down rather than refused.
Prompt guide & pro tips
Subject, action, light, camera
Plain sentences work well. Say who is in the shot and how old they are, what they do from start to finish, where it happens and in what light, and finish with one camera move. This is the prompt behind the fireside example, run at 720p, 16:9, five seconds with the Vintage Cinematic LoRA in loras at scale 1; the first three words are that LoRA's trigger:
Vintage Cinematic Color. Night in a mountain log cabin during a thunderstorm. An adult woman in her early thirties with dark tousled hair sits on a sheepskin rug in front of a roaring stone fireplace, in an oversized flannel shirt worn open over a cream silk camisole, knees drawn up, a glass of red wine in her hand. Lightning flashes blue-white through the dark doorway behind her while the firelight paints her face amber; she pulls the slipping shirt back onto her shoulder, turns her head and gives the camera a slow, smouldering look. Warm brown tones, deep shadows, slow push-in, 35mm, film grain, shallow depth of field.
Check that a LoRA matches the base
A LoRA trained for another model is accepted without an error and changes nothing. Before a sweep, run the same prompt and seed with and without the LoRA; if the clips are identical, the file does not fit Wan 2.2.
Link the file, not the page
The path must point at the .safetensors file itself. A repository page, or a file that needs a login, fails the run.
Draft small
A five-second 480p clip took about a minute in our tests and a 720p clip about two. Settle the prompt and LoRA scales at 480p, then re-render at 720p or eight seconds.
API quick start
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "alibaba/wan-2.2-lora/text-to-video",
"input": {
"aspect_ratio": "16:9",
"duration_seconds": 5,
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "480p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
See the API reference for authentication, the complete schema, polling, and error handling.





















