Wan 2.2 A14B Turbo API Integration
Use Wan 2.2 A14B Turbo through Rivya Public API v1 with model id wan-2-2-a14b-turbo, supported inputs, parameters, Files API rules, credits, and response examples.
wan-2-2-a14b-turbo
text, file
Required for reference modes
12
Video
FIXED
5000 characters
Request contract
Send the model id at the top level. Model-specific controls belong in params.
| Key | Type | Required | Default | Description |
|---|---|---|---|---|
| model | string | Yes | wan-2-2-a14b-turbo | Use the wan-2-2-a14b-turbo API model id. |
| prompt | string | Yes | - | Maximum 5000 characters for this model. |
| params | object | No | - | Model-specific parameter object. Use the rows below for allowed keys. |
| client_request_id | string | No | - | Optional client-side id for tracing requests in your system. |
Model parameters
| Key | Type | Required | Default | Range | Options | Description |
|---|---|---|---|---|---|---|
| resolution | select | No | 720p | - | 480p, 580p, 720p | Text and image runs currently stay on `480p / 720p`, while the image-plus-audio-driven path also exposes `580p`. Rivya filters unsupported tiers automatically based on the current mode. |
| aspect_ratio | select | No | 16:9 | - | 16:9, 9:16 | This stays available only in text-to-video because the current public image and image-plus-audio-driven endpoints do not expose a stable `aspect_ratio` field. |
| enable_prompt_expansion | select | No | false | - | false, true | Turn this on when you want the upstream service to expand a rough text prompt before generation. It stays limited to text and image runs. |
| seed | number | No | - | min 0 / max 2147483647 | - | Leave it empty for a new random result each time. Reusing the same integer makes it easier to reproduce or fine-tune a previous result. It stays closer only when the prompt and other key settings also remain similar, and it is not a guaranteed 1:1 match. |
| acceleration | select | No | none | - | none, regular | A lighter acceleration control that remains limited to the public text and image modes. |
| num_frames | number | No | 80 | min 40 / max 120 / step 1 | - | Image-plus-audio-driven only. Valid values are 40 to 120, and the number must be divisible by 4. A typical starting point is 80. |
| frames_per_second | number | No | 16 | min 4 / max 60 / step 1 | - | Image-plus-audio-driven only. Valid values are 4 to 60. Higher FPS usually feels smoother, but also raises generation pressure. |
| negative_prompt | text | No | - | - | - | Image-plus-audio-driven only. Use it to describe motion failures, unwanted artifacts, or visual elements you want to avoid. |
| num_inference_steps | number | No | 27 | min 2 / max 40 / step 1 | - | Image-plus-audio-driven only. Valid values are 2 to 40. Higher steps can improve quality, but they also increase runtime. |
| guidance_scale | number | No | 3.5 | min 1 / max 10 / step 0.1 | - | Image-plus-audio-driven only. Valid values are 1 to 10. Higher values follow the prompt more closely, but can also make motion feel stiffer. |
| shift | number | No | 5 | min 1 / max 10 / step 0.1 | - | Image-plus-audio-driven only. Valid values are 1 to 10. It changes the temporal offset feel of the generation, so it is safest to start near the default. |
| enable_safety_checker | select | No | true | - | true, false | Image-plus-audio-driven only. Turn it on to run safety checks before generation, or turn it off when you need less filtering and accept the trade-off. |
Upload policy
Upload reference files first, then place the returned URL and duration token inside params.referenceMediaItems.
Reference media: Upload up to 2 assets. Text mode needs none, image-to-video uses 1 image, and the image-plus-audio-driven path uses 1 image plus 1 audio clip.
2
image, audio
Video and audio references should carry durationToken from /api/v1/files when duration verification is required.
| kind | Max size | MIME types |
|---|---|---|
| image | 10 MB | image/jpeg, image/png, image/webp |
| audio | 10 MB | audio/mpeg, audio/mp4, audio/wav, audio/x-wav, audio/aac, audio/ogg, audio/flac, audio/x-ms-wma |
Minimal request
{
"model": "wan-2-2-a14b-turbo",
"prompt": "A cinematic product reveal with smooth camera movement",
"params": {
"resolution": "720p",
"aspect_ratio": "16:9",
"enable_prompt_expansion": "false",
"seed": 0,
"acceleration": "none",
"num_frames": 80,
"frames_per_second": 16,
"negative_prompt": "Optional exclusions or failure modes to avoid.",
"num_inference_steps": 27,
"guidance_scale": 3.5,
"shift": 5,
"enable_safety_checker": "true"
}
}Reference-file request
{
"model": "wan-2-2-a14b-turbo",
"prompt": "A cinematic product reveal with smooth camera movement",
"params": {
"resolution": "720p",
"aspect_ratio": "16:9",
"enable_prompt_expansion": "false",
"seed": 0,
"acceleration": "none",
"num_frames": 80,
"frames_per_second": 16,
"negative_prompt": "Optional exclusions or failure modes to avoid.",
"num_inference_steps": 27,
"guidance_scale": 3.5,
"shift": 5,
"enable_safety_checker": "true",
"referenceMediaItems": [
{
"url": "https://cdn.example.com/reference-image.png",
"kind": "image",
"name": "reference-image.png",
"mimeType": "image/png"
}
]
}
}Create response
The create endpoint returns a public task id. Poll the status endpoint until the task succeeds or fails.
{
"id": "task_wan_2_2_a14b_turbo_example",
"status": "queued",
"model": "wan-2-2-a14b-turbo",
"reserved_credits": 12,
"final_credits": 0,
"created_at": "2026-05-11T00:00:00.000Z",
"updated_at": "2026-05-11T00:00:00.000Z",
"result": null,
"error": null
}Common errors
validation_failed, insufficient_credits, idempotency_conflict, rate_limited, not_found
Some modes require Files API reference uploads.