# Wan API — full specifications, prices and documentation
> Explore Wan 3.0, Wan 3.0 Prime and Pro video models. Compare model specifications, reference inputs and resolution pricing for your next video integration.
[Site text index](https://wanapi.app/llms.txt)
## About Wan API
Wan API is a developer platform for the Wan video model family. Compare Wan 3.0, Prime and Pro specifications and prices, then prepare a request in the preview playground.
Content maintained by Wan API. Updated: 2026-10-13.
## Service availability
Video generation is not available yet. Prepare your settings and copy the request here.
Native request-body preview. Model selection is separate; the Wan API endpoint and authentication details will be published when access opens.
Documented reference identifier. See the integration guide for Wan API model IDs.
Keep your key on your server and handle video generation as a task. The integration guide covers preparation; production endpoints and key access details will be published there when access opens.
[Integration guide](https://wanapi.app/docs/integration)
## Pricing
Current rates are in USD. Official list prices are shown for comparison.
Price/specification check: 2026-10-13. USD / billable second.
| Model | Resolution | Official list price | Wan API | 5-second output |
| --- | --- | ---: | ---: | ---: |
| Wan 3.0 | 480p | $0.050 | $0.0275 | $0.1375 |
| Wan 3.0 | 720p | $0.100 | $0.055 | $0.275 |
| Wan 3.0 | 1080p | $0.200 | $0.110 | $0.550 |
| Wan 3.0 Prime | 480p | $0.068 | $0.0374 | $0.187 |
| Wan 3.0 Prime | 720p | $0.140 | $0.077 | $0.385 |
| Wan 3.0 Prime | 1080p | $0.280 | $0.154 | $0.770 |
| Wan 3.0 Pro | 1080p | $0.180 | $0.099 | $0.495 |
| Wan 3.0 Pro | 2K | $0.200 | $0.110 | $0.550 |
| Wan 3.0 Pro | 4K | $0.230 | $0.1265 | $0.6325 |
| Wan 3.0 Prime Pro | 1080p | $0.260 | $0.143 | $0.715 |
| Wan 3.0 Prime Pro | 2K | $0.280 | $0.154 | $0.770 |
| Wan 3.0 Prime Pro | 4K | $0.310 | $0.1705 | $0.8525 |
Billable seconds = reference video input seconds + generated output seconds. Text and image inputs add no video seconds. Disabling generated audio does not lower the per-second rate.
The 5-second example uses no reference video. A 5-second video reference plus a 5-second output is billed as 10 seconds.
Per-second model rates; no monthly video API package is listed here.
# Wan 3.0
Source: https://wanapi.app/models/wan-3-0
Wan 3.0 turns text, images and multimodal references into video with generated sound. Create clips up to 30 seconds, choose output up to 1080p and plan each generation with current per-second rates.
## Specifications
- Documented model ID: `wan3.0-video`. Documented reference identifier. See the integration guide for Wan API model IDs.
- Video duration: 2–30 seconds; Auto is also supported.
- Output resolution: 480p, 720p, 1080p.
- Aspect ratio: adaptive, 16:9, 4:3, 1:1, 3:4, 9:16.
- Generated audio: On by default.
- Starting material: Text, images, references.
- Wan 3.0 supports 2–30 seconds of output. When you supply reference video, its duration and the generated output must total no more than 30 seconds.
- Reference video and reference audio are each limited to 15 seconds in total. The documented maximum is 10 reference images, 5 video clips and 5 audio clips.
- First/last-frame inputs and multimodal reference inputs are separate modes. Choose one mode for a request. A document file and a web link also cannot be submitted together.
- Review generated lettering, speech and visual details before publishing. Reference material guides a generation; it does not guarantee exact reproduction of every feature.
Use public media URLs; images also accept data URIs or Base64. Reference video and audio are each limited to 15 seconds total. Video input plus output cannot exceed 30 seconds. Use a document up to 100 MB or a web link, not both. The 50-page limit applies to PDF/DOC/DOCX/PPT/PPTX/KEY/PAGES files.
## Native request preparation
Native request-body preview. Model selection is separate; the Wan API endpoint and authentication details will be published when access opens.
Documented input parameters for the selected model. The production endpoint will be published in the integration guide.
| Native field | Type | Default | Constraint |
| --- | --- | --- | --- |
| `prompt` | string or null | `null` | At least a prompt or one media input is required. The preview caps prompts at 20,000 characters; longer native prompts may be truncated. |
| `first_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `last_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `reference_images` | string array or null | `null` | Up to 10 image values; URL, data URI and Base64 may be mixed. |
| `reference_videos` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `reference_audios` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `file` | URL string or null | `null` | One document; cannot coexist with link. |
| `link` | URL string or null | `null` | One public webpage that requires no authentication; cannot coexist with file. |
| `resolution` | string | `1080p` | 480p, 720p, 1080p. Native values are case-insensitive; the preview exports lowercase. |
| `ratio` | string | `adaptive` | adaptive, 16:9, 4:3, 1:1, 3:4, 9:16 |
| `duration` | integer | `5` | 2–30 inclusive, or -1 for automatic model-selected duration. |
| `audio` | boolean | `true` | Whether the output includes generated audio. False does not lower the rate. |
| `seed` | integer or null | `null` | 0–2147483647 inclusive. Null or omission selects a seed automatically; zero is valid. |
| `prompt_extend` | boolean | `true` | Whether the prompt is expanded. |
The native body is a flat object with these 14 fields and no additional properties. Model selection is separate; there is no model, input, content or parameters wrapper. The preview omits unprovided optional fields instead of sending null.
Prompt-only input selects text-to-video. First and/or last frame selects keyframe mode; keyframes cannot coexist with reference images, videos, audio, file or link. Reference inputs select reference mode. The document file and webpage link are mutually exclusive.
### Documented media constraints
- Images: JPEG/JPG, PNG without alpha, BMP or WEBP; maximum 20 MB; each side 240–8000 px; aspect ratio at most 8:1.
- Videos: MP4 or MOV; maximum 100 MB; each side 240–4096 px; aspect ratio at most 8:1. Each reference clip is 1–15 seconds; total reference video duration is at most 15 seconds.
- Audio: WAV or MP3; maximum 15 MB. Each clip is 1–15 seconds; total reference audio duration is at most 15 seconds. Public HTTP(S) URLs only; Base64 is not supported.
- Documents: DOCX, DOC, XLSX, XLS, PPTX, PPT, PDF, TXT, KEY, PAGES, NUMBERS or MD; maximum 100 MB. PDF, DOCX, DOC, PPTX, PPT, KEY and PAGES have a 50-page limit.
- Reference input video plus generated output must not exceed 30 seconds. Both successful reference video input seconds and generated output seconds are billable.
These are documented model constraints. The request preview does not fetch or decode media, so it cannot verify remote file size, format, dimensions, duration or page count. It validates request values and input combinations without submitting a generation task.
## What is Wan 3.0?
Wan 3.0 is a video generation model for working from the material you already have. Describe a scene from scratch, animate a still image or use reference media to guide the result. A written brief can establish the action; a photograph can establish the subject and composition. Choose the starting point that gives the scene the clearest direction.
Use Wan 3.0 for product shots, short narratives and visual concepts that benefit from motion and sound together. Its documented inputs also include a document or public web link, useful when the idea starts as a written brief. A focused scene makes a better first test than a full campaign: establish the subject, describe what changes and decide how the camera should move.
## What you can create
### Write the scene
Describe the subject, action and camera movement in a prompt. Wan 3.0 can build the shot from text alone, so you can explore a visual idea before arranging a shoot or preparing reference artwork.
### Give a photograph motion
Use an image as the first frame and, when needed, supply a last frame. Tell Wan 3.0 what should move while identifying details that should remain consistent, such as a product’s silhouette or a character’s clothing.
### Direct with references
Use images, video and audio to explain the appearance, movement or sound you want. Wan 3.0 also documents file and link inputs for turning a brief into video; choose a small, relevant section for your first attempt.
## Put it to work
### Product demonstrations
Start with a clear photograph of one product. Ask Wan 3.0 for a slow reveal or a simple camera orbit, then inspect shape, reflections and labels before using the clip in a campaign.
### Story and mood studies
Test the opening moment of a scene before building a longer sequence. A short Wan 3.0 clip can help you decide whether the lighting, camera direction and pace communicate the mood you intended.
### A brief brought to life
Turn a concise document or public page into a visual starting point. Give Wan 3.0 a target audience and one message to communicate, then refine the generated scene around that message.
## Plan your first video
1. Choose one scene: Give Wan 3.0 one subject and one main action. Choose a duration that leaves time for the movement to read clearly.
2. Prepare the starting material: Choose text, a first frame or references for your Wan 3.0 shot. Keep each reference relevant and explain its role in the scene.
3. Set the output and check cost: Select the Wan 3.0 resolution you need. Add reference video seconds to the output duration when estimating cost, and keep the first test short.
4. Review before expanding: Check the Wan 3.0 clip for stable subjects, readable motion and appropriate sound. Adjust one part of the brief at a time.
## Compare the Wan family
Wan 3.0 covers 480p through 1080p at the standard model’s rates. Prime is a separate model with different pricing. If your deliverable needs 2K or 4K, compare the Pro pages instead of assuming that a higher resolution is available on this model.
## Sample attribution
A sunlit classroom scene generated with Wan 3.0.
Play the sample to explore the visual style. Changes to your settings update the request preview; they do not regenerate this clip.
[Sample video](https://wanapi.app/videos/wan/hero.mp4)
## Questions and answers
### What can I make with Wan 3.0?
Wan 3.0 creates short videos from text, images or references. Try a product reveal, a character action or a scene opening. Start with one subject and one camera move, then judge the result against your brief.
### Does Wan 3.0 support 1080p output?
Yes. Wan 3.0 lists 480p, 720p and 1080p. Match the setting to your final placement. Keep resolution and duration fixed when comparing results across models.
### Can Wan 3.0 use images and video references?
Yes. Wan 3.0 supports first/last-frame images or a separate reference mode with up to 10 images, 5 video clips and 5 audio clips. Choose one mode per request; video and audio references each have a 15-second total limit.
### Is Wan 3.0 free to use?
Wan 3.0 is a paid model. Current USD rates are shown in the pricing table. Resolution and billable seconds determine cost, including reference video duration.
### Does Wan 3.0 require a monthly subscription?
Wan 3.0 uses per-second rates; this page does not offer a monthly video package. Check the integration guide for service access and billing options. A website account alone does not grant video generation access.
### How do I get an API key for Wan 3.0?
Key access and production endpoints will be published in the integration guide when access opens. Prepare your Wan 3.0 brief and media now; check the accepted model ID and fields before sending a paid request.
### Does Wan 3.0 generate audio?
Yes. Wan 3.0 enables generated audio by default and lets you turn it off. Disabling audio does not change the per-second rate. Review speech, ambience and timing alongside the picture before using the clip.
[Model guide](https://wanapi.app/blog/wan-3-api-guide)
[Integration guide](https://wanapi.app/docs/integration)
# Wan 3.0 Prime
Source: https://wanapi.app/models/wan-3-0-prime
Wan 3.0 Prime creates video with sound from a prompt, an image or multimodal references. Work with clips up to 30 seconds and output up to 1080p, with a separate price table for the Prime model.
## Specifications
- Documented model ID: `wan3.0-video-prime`. Documented reference identifier. See the integration guide for Wan API model IDs.
- Video duration: 2–30 seconds; Auto is also supported.
- Output resolution: 480p, 720p, 1080p.
- Aspect ratio: adaptive, 16:9, 4:3, 1:1, 3:4, 9:16.
- Generated audio: On by default.
- Starting material: Text, images, references.
- Wan 3.0 Prime supports 2–30 seconds of output. When you supply reference video, its duration and the generated output must total no more than 30 seconds.
- Reference video and reference audio are each limited to 15 seconds in total. The documented maximum is 10 reference images, 5 video clips and 5 audio clips.
- First/last-frame inputs and multimodal reference inputs are separate modes. Choose one mode for a request. A document file and a web link also cannot be submitted together.
- Review generated lettering, speech and visual details before publishing. Reference material guides a generation; it does not guarantee exact reproduction of every feature.
Use public media URLs; images also accept data URIs or Base64. Reference video and audio are each limited to 15 seconds total. Video input plus output cannot exceed 30 seconds. Use a document up to 100 MB or a web link, not both. The 50-page limit applies to PDF/DOC/DOCX/PPT/PPTX/KEY/PAGES files.
## Native request preparation
Native request-body preview. Model selection is separate; the Wan API endpoint and authentication details will be published when access opens.
Documented input parameters for the selected model. The production endpoint will be published in the integration guide.
| Native field | Type | Default | Constraint |
| --- | --- | --- | --- |
| `prompt` | string or null | `null` | At least a prompt or one media input is required. The preview caps prompts at 20,000 characters; longer native prompts may be truncated. |
| `first_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `last_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `reference_images` | string array or null | `null` | Up to 10 image values; URL, data URI and Base64 may be mixed. |
| `reference_videos` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `reference_audios` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `file` | URL string or null | `null` | One document; cannot coexist with link. |
| `link` | URL string or null | `null` | One public webpage that requires no authentication; cannot coexist with file. |
| `resolution` | string | `1080p` | 480p, 720p, 1080p. Native values are case-insensitive; the preview exports lowercase. |
| `ratio` | string | `adaptive` | adaptive, 16:9, 4:3, 1:1, 3:4, 9:16 |
| `duration` | integer | `5` | 2–30 inclusive, or -1 for automatic model-selected duration. |
| `audio` | boolean | `true` | Whether the output includes generated audio. False does not lower the rate. |
| `seed` | integer or null | `null` | 0–2147483647 inclusive. Null or omission selects a seed automatically; zero is valid. |
| `prompt_extend` | boolean | `true` | Whether the prompt is expanded. |
The native body is a flat object with these 14 fields and no additional properties. Model selection is separate; there is no model, input, content or parameters wrapper. The preview omits unprovided optional fields instead of sending null.
Prompt-only input selects text-to-video. First and/or last frame selects keyframe mode; keyframes cannot coexist with reference images, videos, audio, file or link. Reference inputs select reference mode. The document file and webpage link are mutually exclusive.
### Documented media constraints
- Images: JPEG/JPG, PNG without alpha, BMP or WEBP; maximum 20 MB; each side 240–8000 px; aspect ratio at most 8:1.
- Videos: MP4 or MOV; maximum 100 MB; each side 240–4096 px; aspect ratio at most 8:1. Each reference clip is 1–15 seconds; total reference video duration is at most 15 seconds.
- Audio: WAV or MP3; maximum 15 MB. Each clip is 1–15 seconds; total reference audio duration is at most 15 seconds. Public HTTP(S) URLs only; Base64 is not supported.
- Documents: DOCX, DOC, XLSX, XLS, PPTX, PPT, PDF, TXT, KEY, PAGES, NUMBERS or MD; maximum 100 MB. PDF, DOCX, DOC, PPTX, PPT, KEY and PAGES have a 50-page limit.
- Reference input video plus generated output must not exceed 30 seconds. Both successful reference video input seconds and generated output seconds are billable.
These are documented model constraints. The request preview does not fetch or decode media, so it cannot verify remote file size, format, dimensions, duration or page count. It validates request values and input combinations without submitting a generation task.
## What is Wan 3.0 Prime?
Wan 3.0 Prime is a distinct video model in the Wan family. It supports text-led scenes, first-frame animation and generation guided by reference media. Choose it as a separate creative option and evaluate the output against the same brief you would use for standard Wan 3.0. The useful comparison is the finished shot: its motion, subject consistency and fit with your edit.
A Wan 3.0 Prime request can start with a detailed product image or a simple written scene. Reference video can describe movement, while reference audio can help communicate the intended sound. Keep the direction specific enough to judge the result. For a product reveal, for example, ask for a single camera move and check that the object’s shape stays consistent throughout the clip.
## What you can create
### Build a shot from text
Write a short scene with a clear subject and one main action. Wan 3.0 Prime can generate the video and sound together, making it useful for testing how a visual idea feels in motion.
### Animate a defined composition
Give Wan 3.0 Prime a first frame when the subject and framing are already decided. An optional last frame provides a destination for the shot; your prompt describes the movement between those visual anchors.
### Bring visual and audio direction
Reference media let you describe more than a written prompt alone. Assign each input a clear purpose when working with Wan 3.0 Prime, such as product appearance, camera movement or the sound that accompanies a scene.
## Put it to work
### Product reveal variations
Generate alternative camera moves around the same product. Review Wan 3.0 Prime results for readable contours and stable reflections, then choose the version that fits your presentation rather than relying on the model name.
### Character-led short scenes
Use a reference image to establish a character’s appearance and describe one simple action. Wan 3.0 Prime can help you explore an entrance, a reaction or a transition before combining separate shots in an editor.
### Matched model comparisons
Send the same brief and source material to Wan 3.0 Prime and standard Wan 3.0 at matching settings. Compare usable output and total cost, keeping duration and resolution fixed so the comparison remains meaningful.
## Plan your first video
1. Choose one scene: Give Wan 3.0 Prime one subject and one main action. Choose a duration that leaves time for the movement to read clearly.
2. Prepare the starting material: Choose text, a first frame or references for your Wan 3.0 Prime shot. Keep each reference relevant and explain its role in the scene.
3. Set the output and check cost: Select the Wan 3.0 Prime resolution you need. Add reference video seconds to the output duration when estimating cost, and keep the first test short.
4. Review before expanding: Check the Wan 3.0 Prime clip for stable subjects, readable motion and appropriate sound. Adjust one part of the brief at a time.
## Compare the Wan family
Wan 3.0 Prime offers 480p, 720p and 1080p. It is separate from Wan 3.0 Prime Pro, whose documented outputs include 2K and 4K. Prime and Pro are not interchangeable names, and choosing Prime alone does not select a higher-resolution output.
## Sample attribution
A blue glass perfume bottle from a recorded Wan 3.0 Prime generation.
Play the sample to explore the visual style. Changes to your settings update the request preview; they do not regenerate this clip.
[Sample video](https://wanapi.app/videos/wan/prime.mp4)
## Questions and answers
### What can I make with Wan 3.0 Prime?
Wan 3.0 Prime creates short videos from text, images or references. Try a product reveal, a character action or a scene opening. Start with one subject and one camera move, then judge the result against your brief.
### Does Wan 3.0 Prime support 1080p output?
Yes. Wan 3.0 Prime lists 480p, 720p and 1080p. Match the setting to your final placement. Keep resolution and duration fixed when comparing results across models.
### Can Wan 3.0 Prime use images and video references?
Yes. Wan 3.0 Prime supports first/last-frame images or a separate reference mode with up to 10 images, 5 video clips and 5 audio clips. Choose one mode per request; video and audio references each have a 15-second total limit.
### Is Wan 3.0 Prime free to use?
Wan 3.0 Prime is a paid model. Current USD rates are shown in the pricing table. Resolution and billable seconds determine cost, including reference video duration.
### Does Wan 3.0 Prime require a monthly subscription?
Wan 3.0 Prime uses per-second rates; this page does not offer a monthly video package. Check the integration guide for service access and billing options. A website account alone does not grant video generation access.
### How do I get an API key for Wan 3.0 Prime?
Key access and production endpoints will be published in the integration guide when access opens. Prepare your Wan 3.0 Prime brief and media now; check the accepted model ID and fields before sending a paid request.
### Does Wan 3.0 Prime generate audio?
Yes. Wan 3.0 Prime enables generated audio by default and lets you turn it off. Disabling audio does not change the per-second rate. Review speech, ambience and timing alongside the picture before using the clip.
[Model guide](https://wanapi.app/blog/wan-3-api-guide)
[Integration guide](https://wanapi.app/docs/integration)
# Wan 3.0 Pro
Source: https://wanapi.app/models/wan-3-0-pro
Wan 3.0 Pro adds 2K and 4K output options alongside 1080p. Start with text, a first frame or multimodal references, then choose the resolution your final video needs.
## Specifications
- Documented model ID: `w3.0-video-pro`. Documented reference identifier. See the integration guide for Wan API model IDs.
- Video duration: 2–30 seconds; Auto is also supported.
- Output resolution: 1080p, 2K, 4K.
- Aspect ratio: adaptive, 16:9, 4:3, 1:1, 3:4, 9:16.
- Generated audio: On by default.
- Starting material: Text, images, references.
- Wan 3.0 Pro supports 2–30 seconds of output. When you supply reference video, its duration and the generated output must total no more than 30 seconds.
- Reference video and reference audio are each limited to 15 seconds in total. The documented maximum is 10 reference images, 5 video clips and 5 audio clips.
- First/last-frame inputs and multimodal reference inputs are separate modes. Choose one mode for a request. A document file and a web link also cannot be submitted together.
- Review generated lettering, speech and visual details before publishing. Reference material guides a generation; it does not guarantee exact reproduction of every feature.
Use public media URLs; images also accept data URIs or Base64. Reference video and audio are each limited to 15 seconds total. Video input plus output cannot exceed 30 seconds. Use a document up to 100 MB or a web link, not both. The 50-page limit applies to PDF/DOC/DOCX/PPT/PPTX/KEY/PAGES files.
## Native request preparation
Native request-body preview. Model selection is separate; the Wan API endpoint and authentication details will be published when access opens.
Documented input parameters for the selected model. The production endpoint will be published in the integration guide.
| Native field | Type | Default | Constraint |
| --- | --- | --- | --- |
| `prompt` | string or null | `null` | At least a prompt or one media input is required. The preview caps prompts at 20,000 characters; longer native prompts may be truncated. |
| `first_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `last_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `reference_images` | string array or null | `null` | Up to 10 image values; URL, data URI and Base64 may be mixed. |
| `reference_videos` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `reference_audios` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `file` | URL string or null | `null` | One document; cannot coexist with link. |
| `link` | URL string or null | `null` | One public webpage that requires no authentication; cannot coexist with file. |
| `resolution` | string | `1080p` | 1080p, 2k, 4k. Native values are case-insensitive; the preview exports lowercase. |
| `ratio` | string | `adaptive` | adaptive, 16:9, 4:3, 1:1, 3:4, 9:16 |
| `duration` | integer | `5` | 2–30 inclusive, or -1 for automatic model-selected duration. |
| `audio` | boolean | `true` | Whether the output includes generated audio. False does not lower the rate. |
| `seed` | integer or null | `null` | 0–2147483647 inclusive. Null or omission selects a seed automatically; zero is valid. |
| `prompt_extend` | boolean | `true` | Whether the prompt is expanded. |
The native body is a flat object with these 14 fields and no additional properties. Model selection is separate; there is no model, input, content or parameters wrapper. The preview omits unprovided optional fields instead of sending null.
Prompt-only input selects text-to-video. First and/or last frame selects keyframe mode; keyframes cannot coexist with reference images, videos, audio, file or link. Reference inputs select reference mode. The document file and webpage link are mutually exclusive.
### Documented media constraints
- Images: JPEG/JPG, PNG without alpha, BMP or WEBP; maximum 20 MB; each side 240–8000 px; aspect ratio at most 8:1.
- Videos: MP4 or MOV; maximum 100 MB; each side 240–4096 px; aspect ratio at most 8:1. Each reference clip is 1–15 seconds; total reference video duration is at most 15 seconds.
- Audio: WAV or MP3; maximum 15 MB. Each clip is 1–15 seconds; total reference audio duration is at most 15 seconds. Public HTTP(S) URLs only; Base64 is not supported.
- Documents: DOCX, DOC, XLSX, XLS, PPTX, PPT, PDF, TXT, KEY, PAGES, NUMBERS or MD; maximum 100 MB. PDF, DOCX, DOC, PPTX, PPT, KEY and PAGES have a 50-page limit.
- Reference input video plus generated output must not exceed 30 seconds. Both successful reference video input seconds and generated output seconds are billable.
These are documented model constraints. The request preview does not fetch or decode media, so it cannot verify remote file size, format, dimensions, duration or page count. It validates request values and input combinations without submitting a generation task.
## What is Wan 3.0 Pro?
Wan 3.0 Pro is the Pro option listed for video workflows that need output beyond 1080p. Its documented resolution choices include 1080p, 2K and 4K, while keeping text, image and reference-led generation. That makes output size a practical reason to consider this version when planning a large presentation, a detailed product shot or a clip you intend to crop during editing.
Choose Wan 3.0 Pro by the requirements of the finished video. A larger frame gives an editor more pixels to work with, but it does not remove the need to check motion or subject consistency. Start with a short, clearly directed scene, review the result at the intended viewing size and reserve your larger-resolution generations for shots whose composition you want to keep.
## What you can create
### Choose a larger output
Wan 3.0 Pro lists 2K and 4K alongside 1080p. Match the setting to your delivery format, especially when the video will be shown on a large screen or cropped for several placements.
### Start from the right frame
Use a first-frame image to establish the composition before adding motion. With Wan 3.0 Pro, a clear source image and a focused camera direction help make the requested shot easier to evaluate at its final size.
### Combine a brief with references
Guide Wan 3.0 Pro with visual or audio references when a prompt alone leaves too much to interpretation. Its documented workflows also include file and public-link inputs for briefs that begin as written material.
## Put it to work
### Large-format product visuals
Plan a product close-up for a presentation or display. Use Wan 3.0 Pro to request the needed output resolution, then inspect edges, material texture and lettering in the actual generated video.
### Room for reframing
A higher-resolution source can give your editor room to crop for different placements. Keep the subject away from the edges in your Wan 3.0 Pro brief, and check the intended crops before approving the shot.
### Detailed scene planning
Test the composition of a short environment or architectural scene. Wan 3.0 Pro can produce a larger output frame for review, while your prompt controls the camera direction and the action within it.
## Plan your first video
1. Choose one scene: Give Wan 3.0 Pro one subject and one main action. Choose a duration that leaves time for the movement to read clearly.
2. Prepare the starting material: Choose text, a first frame or references for your Wan 3.0 Pro shot. Keep each reference relevant and explain its role in the scene.
3. Set the output and check cost: Select the Wan 3.0 Pro resolution you need. Add reference video seconds to the output duration when estimating cost, and keep the first test short.
4. Review before expanding: Check the Wan 3.0 Pro clip for stable subjects, readable motion and appropriate sound. Adjust one part of the brief at a time.
## Compare the Wan family
Wan 3.0 Pro lists 1080p, 2K and 4K, whereas standard Wan 3.0 lists 480p, 720p and 1080p. Compare the shared 1080p setting if you want to evaluate the models independently of output size. Compare their current rates in the pricing table.
## Sample attribution
Shared Wan family sample · Generated with Wan 3.0.
Play the sample to explore the visual style. Changes to your settings update the request preview; they do not regenerate this clip.
[Sample video](https://wanapi.app/videos/wan/hero.mp4)
## Questions and answers
### What can I make with Wan 3.0 Pro?
Wan 3.0 Pro creates short videos from text, images or references. Try a product reveal, a character action or a scene opening. Start with one subject and one camera move, then judge the result against your brief.
### Does Wan 3.0 Pro support 4K output?
Yes. Wan 3.0 Pro lists 1080p, 2K and 4K. Match the setting to your final placement. Keep resolution and duration fixed when comparing results across models.
### Can Wan 3.0 Pro use images and video references?
Yes. Wan 3.0 Pro supports first/last-frame images or a separate reference mode with up to 10 images, 5 video clips and 5 audio clips. Choose one mode per request; video and audio references each have a 15-second total limit.
### Is Wan 3.0 Pro free to use?
Wan 3.0 Pro is a paid model. Current USD rates are shown in the pricing table. Resolution and billable seconds determine cost, including reference video duration.
### Does Wan 3.0 Pro require a monthly subscription?
Wan 3.0 Pro uses per-second rates; this page does not offer a monthly video package. Check the integration guide for service access and billing options. A website account alone does not grant video generation access.
### How do I get an API key for Wan 3.0 Pro?
Key access and production endpoints will be published in the integration guide when access opens. Prepare your Wan 3.0 Pro brief and media now; check the accepted model ID and fields before sending a paid request.
### Does Wan 3.0 Pro generate audio?
Yes. Wan 3.0 Pro enables generated audio by default and lets you turn it off. Disabling audio does not change the per-second rate. Review speech, ambience and timing alongside the picture before using the clip.
[Model guide](https://wanapi.app/blog/wan-3-api-guide)
[Integration guide](https://wanapi.app/docs/integration)
# Wan 3.0 Prime Pro
Source: https://wanapi.app/models/wan-3-0-prime-pro
Wan 3.0 Prime Pro combines the Prime variant with documented 1080p, 2K and 4K output choices. Build a scene from text, animate a still image or guide the video with visual and audio references.
## Specifications
- Documented model ID: `w3.0-video-prime-pro`. Documented reference identifier. See the integration guide for Wan API model IDs.
- Video duration: 2–30 seconds; Auto is also supported.
- Output resolution: 1080p, 2K, 4K.
- Aspect ratio: adaptive, 16:9, 4:3, 1:1, 3:4, 9:16.
- Generated audio: On by default.
- Starting material: Text, images, references.
- Wan 3.0 Prime Pro supports 2–30 seconds of output. When you supply reference video, its duration and the generated output must total no more than 30 seconds.
- Reference video and reference audio are each limited to 15 seconds in total. The documented maximum is 10 reference images, 5 video clips and 5 audio clips.
- First/last-frame inputs and multimodal reference inputs are separate modes. Choose one mode for a request. A document file and a web link also cannot be submitted together.
- Review generated lettering, speech and visual details before publishing. Reference material guides a generation; it does not guarantee exact reproduction of every feature.
Use public media URLs; images also accept data URIs or Base64. Reference video and audio are each limited to 15 seconds total. Video input plus output cannot exceed 30 seconds. Use a document up to 100 MB or a web link, not both. The 50-page limit applies to PDF/DOC/DOCX/PPT/PPTX/KEY/PAGES files.
## Native request preparation
Native request-body preview. Model selection is separate; the Wan API endpoint and authentication details will be published when access opens.
Documented input parameters for the selected model. The production endpoint will be published in the integration guide.
| Native field | Type | Default | Constraint |
| --- | --- | --- | --- |
| `prompt` | string or null | `null` | At least a prompt or one media input is required. The preview caps prompts at 20,000 characters; longer native prompts may be truncated. |
| `first_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `last_frame` | string or null | `null` | One image URL, data URI or Base64. |
| `reference_images` | string array or null | `null` | Up to 10 image values; URL, data URI and Base64 may be mixed. |
| `reference_videos` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `reference_audios` | URL array or null | `null` | Up to 5 public HTTP(S) URLs; each clip 1–15 seconds, at most 15 seconds total. |
| `file` | URL string or null | `null` | One document; cannot coexist with link. |
| `link` | URL string or null | `null` | One public webpage that requires no authentication; cannot coexist with file. |
| `resolution` | string | `1080p` | 1080p, 2k, 4k. Native values are case-insensitive; the preview exports lowercase. |
| `ratio` | string | `adaptive` | adaptive, 16:9, 4:3, 1:1, 3:4, 9:16 |
| `duration` | integer | `5` | 2–30 inclusive, or -1 for automatic model-selected duration. |
| `audio` | boolean | `true` | Whether the output includes generated audio. False does not lower the rate. |
| `seed` | integer or null | `null` | 0–2147483647 inclusive. Null or omission selects a seed automatically; zero is valid. |
| `prompt_extend` | boolean | `true` | Whether the prompt is expanded. |
The native body is a flat object with these 14 fields and no additional properties. Model selection is separate; there is no model, input, content or parameters wrapper. The preview omits unprovided optional fields instead of sending null.
Prompt-only input selects text-to-video. First and/or last frame selects keyframe mode; keyframes cannot coexist with reference images, videos, audio, file or link. Reference inputs select reference mode. The document file and webpage link are mutually exclusive.
### Documented media constraints
- Images: JPEG/JPG, PNG without alpha, BMP or WEBP; maximum 20 MB; each side 240–8000 px; aspect ratio at most 8:1.
- Videos: MP4 or MOV; maximum 100 MB; each side 240–4096 px; aspect ratio at most 8:1. Each reference clip is 1–15 seconds; total reference video duration is at most 15 seconds.
- Audio: WAV or MP3; maximum 15 MB. Each clip is 1–15 seconds; total reference audio duration is at most 15 seconds. Public HTTP(S) URLs only; Base64 is not supported.
- Documents: DOCX, DOC, XLSX, XLS, PPTX, PPT, PDF, TXT, KEY, PAGES, NUMBERS or MD; maximum 100 MB. PDF, DOCX, DOC, PPTX, PPT, KEY and PAGES have a 50-page limit.
- Reference input video plus generated output must not exceed 30 seconds. Both successful reference video input seconds and generated output seconds are billable.
These are documented model constraints. The request preview does not fetch or decode media, so it cannot verify remote file size, format, dimensions, duration or page count. It validates request values and input combinations without submitting a generation task.
## What is Wan 3.0 Prime Pro?
Wan 3.0 Prime Pro is a separate entry from Wan 3.0 Prime. The difference to check first is resolution: this version lists 2K and 4K as well as 1080p. It accepts the familiar text, image and multimodal reference workflows, so you can start with a written scene or carry an existing visual direction into a larger video frame.
Use Wan 3.0 Prime Pro when you want to evaluate the Prime option at a resolution beyond 1080p. Build a small test around the material you actually plan to use, with a specific action and camera move. Review the result for consistency and suitability at its delivery size. The Pro name identifies an output option; your own scene determines whether the result earns a place in the final edit.
## What you can create
### Prime with larger output choices
Select 1080p, 2K or 4K for Wan 3.0 Prime Pro according to the final placement. Compare the actual clip at that size before committing to a series of generations for the same project.
### Keep visual anchors in the brief
A first frame establishes the subject and composition for Wan 3.0 Prime Pro. Add a last frame when the shot needs a defined ending, and describe the movement that connects the two.
### Carry direction across media
Use reference images, video and audio to explain a scene’s visual identity and motion. Keep each Wan 3.0 Prime Pro reference relevant to the shot so competing visual directions do not obscure the brief.
## Put it to work
### High-resolution creative variations
Explore a few versions of a short product or character scene. Wan 3.0 Prime Pro lets you evaluate those variations at a larger output size, where small visual inconsistencies are easier to inspect.
### Campaign footage with crop options
Plan a centered composition for several placements. A Wan 3.0 Prime Pro output at 2K or 4K can provide more pixels for the editor, while the final crops still need a check for framing and subject detail.
### A controlled Pro comparison
Compare Wan 3.0 Prime Pro with Wan 3.0 Pro using the same references and output settings. Judge motion, visual consistency and cost together; no model name guarantees the better result for every scene.
## Plan your first video
1. Choose one scene: Give Wan 3.0 Prime Pro one subject and one main action. Choose a duration that leaves time for the movement to read clearly.
2. Prepare the starting material: Choose text, a first frame or references for your Wan 3.0 Prime Pro shot. Keep each reference relevant and explain its role in the scene.
3. Set the output and check cost: Select the Wan 3.0 Prime Pro resolution you need. Add reference video seconds to the output duration when estimating cost, and keep the first test short.
4. Review before expanding: Check the Wan 3.0 Prime Pro clip for stable subjects, readable motion and appropriate sound. Adjust one part of the brief at a time.
## Compare the Wan family
Wan 3.0 Prime Pro and Wan 3.0 Pro both list 1080p, 2K and 4K. Standard Prime stops at 1080p in its documented resolution choices. Use this page’s separate rates and specifications when planning a Prime Pro request; do not carry over the standard Prime price.
## Sample attribution
Shared Wan family sample · Generated with Wan 3.0 Prime.
Play the sample to explore the visual style. Changes to your settings update the request preview; they do not regenerate this clip.
[Sample video](https://wanapi.app/videos/wan/prime.mp4)
## Questions and answers
### What can I make with Wan 3.0 Prime Pro?
Wan 3.0 Prime Pro creates short videos from text, images or references. Try a product reveal, a character action or a scene opening. Start with one subject and one camera move, then judge the result against your brief.
### Does Wan 3.0 Prime Pro support 4K output?
Yes. Wan 3.0 Prime Pro lists 1080p, 2K and 4K. Match the setting to your final placement. Keep resolution and duration fixed when comparing results across models.
### Can Wan 3.0 Prime Pro use images and video references?
Yes. Wan 3.0 Prime Pro supports first/last-frame images or a separate reference mode with up to 10 images, 5 video clips and 5 audio clips. Choose one mode per request; video and audio references each have a 15-second total limit.
### Is Wan 3.0 Prime Pro free to use?
Wan 3.0 Prime Pro is a paid model. Current USD rates are shown in the pricing table. Resolution and billable seconds determine cost, including reference video duration.
### Does Wan 3.0 Prime Pro require a monthly subscription?
Wan 3.0 Prime Pro uses per-second rates; this page does not offer a monthly video package. Check the integration guide for service access and billing options. A website account alone does not grant video generation access.
### How do I get an API key for Wan 3.0 Prime Pro?
Key access and production endpoints will be published in the integration guide when access opens. Prepare your Wan 3.0 Prime Pro brief and media now; check the accepted model ID and fields before sending a paid request.
### Does Wan 3.0 Prime Pro generate audio?
Yes. Wan 3.0 Prime Pro enables generated audio by default and lets you turn it off. Disabling audio does not change the per-second rate. Review speech, ambience and timing alongside the picture before using the clip.
[Model guide](https://wanapi.app/blog/wan-3-api-guide)
[Integration guide](https://wanapi.app/docs/integration)
# Complete English documentation and published guides
---
# Wan API overview
Source: https://wanapi.app/docs
Wan API focuses on the **Wan video model family**, including **Wan 3.0**, **Wan 3.0 Prime**, **Wan 3.0 Pro** and **Wan 3.0 Prime Pro**.
## Models [#models]
| Model | Integration focus |
| ---------------------------------------------- | ---------------------------------------------------------------------------------- |
| [Wan 3.0](https://wanapi.app/models/wan-3-0) | Text, images and multimodal references for video generation |
| [Wan 3.0 Prime](https://wanapi.app/models/wan-3-0-prime) | The Prime variant shares the same 14 request fields; output at 480p, 720p or 1080p |
| [Wan 3.0 Pro](https://wanapi.app/models/wan-3-0-pro) | Video generation with 1080p, 2K and 4K output choices |
| [Wan 3.0 Prime Pro](https://wanapi.app/models/wan-3-0-prime-pro) | The Prime Pro variant with its own specifications and pricing |
See the [model overview](https://wanapi.app/models) and [Wan 3.0 API guide](https://wanapi.app/blog/wan-3-api-guide) for model names, inputs and source documentation.
## Before your first request [#before-your-first-request]
The public API endpoint, authentication details and callable model IDs for this website **have not yet been published**. The [pricing page](https://wanapi.app/pricing) lists current rates for all four models. A website account does not currently imply access to a video generation endpoint.
Once service access opens, use the published reference to confirm:
1. The API base URL and authentication header.
2. The model ID and fields accepted by that model.
3. Supported input formats, duration and output options.
4. Task status handling, result retrieval and error responses.
5. Pricing and the billable units for each request.
[Plan your integration](https://wanapi.app/docs/integration).
## About the service [#about-the-service]
Wan API is an independent API website. It is not affiliated with Alibaba or the Wan model team. Provider model capabilities and this website's available API features are separate; use the published service documentation to confirm what you can call.
---
# Wan API integration guide
Source: https://wanapi.app/docs/integration
## Connect to Wan API [#connect-to-wan-api]
Use `https://api.wanapi.app` as the API base URL. Create a key in [API key settings](https://wanapi.app/settings/apikeys) and send it as `Authorization: Bearer YOUR_API_KEY`. Keep keys on your server. Playground uses your website session and charges the same account balance; it does not require pasting a key into the browser.
Access requires an enabled account with sufficient balance. See [pricing](https://wanapi.app/pricing) for current rates. Each model has its own endpoint and [model page](https://wanapi.app/models).
`GET /v1/models` lists the models available to your key. Choosing a higher resolution does not automatically change your model.
| Model | Model ID in the URL | Resolution values |
| -------------------------------------------- | ---------------------- | ----------------------- |
| [Wan 3.0](https://wanapi.app/docs/wan-3-0) | `wan3.0-video` | `480p`, `720p`, `1080p` |
| [Wan 3.0 Prime](https://wanapi.app/docs/wan-3-0-prime) | `wan3.0-video-prime` | `480p`, `720p`, `1080p` |
| [Wan 3.0 Pro](https://wanapi.app/docs/wan-3-0-pro) | `w3.0-video-pro` | `1080p`, `2k`, `4k` |
| [Wan 3.0 Prime Pro](https://wanapi.app/docs/wan-3-0-prime-pro) | `w3.0-video-prime-pro` | `1080p`, `2k`, `4k` |
## Request fields [#request-fields]
All four models share these 14 native fields. Provide a prompt or at least one media input. Frames cannot be combined with reference inputs, `file` or `link`; `file` and `link` are mutually exclusive.
| Field | Type | Contract |
| ------------------ | --------- | --------------------------------------------------------------------------------------------- |
| `prompt` | string | Up to 20,000 characters. |
| `first_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `last_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `reference_images` | string\[] | Up to 10 images, using the same forms as a frame. |
| `reference_videos` | string\[] | Up to 5 public MP4/MOV URLs; 1–15 seconds per clip and at most 15 reference seconds in total. |
| `reference_audios` | string\[] | Up to 5 audio HTTP(S) URLs. |
| `file` | string | Public document URL. |
| `link` | string | Public web page URL. |
| `resolution` | string | See the model table. Default: `1080p`. |
| `ratio` | string | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`. Default: `adaptive`. |
| `duration` | integer | 2–30 output seconds, or `-1` for automatic duration. Default: `5`. |
| `audio` | boolean | Generate audio. Default: `true`. Disabling it does not reduce the rate. |
| `seed` | integer | 0–2147483647. Omit for random generation. |
| `prompt_extend` | boolean | Expand the prompt. Default: `true`. |
Use stable, directly accessible media URLs that stay available until the task finishes. Video duration checks use bounded HTTP range reads; video servers must support those reads and expose readable MP4/MOV duration metadata. Redirects are not followed by duration checks. Private network URLs are not supported. The combined reference and output duration must not exceed 30 seconds. Playground accepts a JSON request body up to 32 MiB; use URLs for larger inputs.
## Poll and download the video [#poll-and-download-the-video]
Every model's submit endpoint returns a public task ID. Save it before doing anything else.
```json
{
"task_info": {
"id": "task_EXAMPLE",
"status": "pending"
}
}
```
Use the query example in the matching model chapter. Start with a five-second interval and increase the delay after temporary errors. Keep each task's model ID together with its task ID; do not query it through a different model endpoint.
The native statuses are `pending`, `processing`, `completed` and `failed`. A completed response includes `videos`, an array containing a complete signed Bunny CDN URL.
```json
{
"task_info": { "id": "task_EXAMPLE", "status": "completed" },
"videos": ["https://reapiflexible.b-cdn.net/flexible/v1/expires/2026-11/20261113T06/wanapi-task_EXAMPLE/video.mp4?token=HS256_SIGNATURE&expires=1794550071"]
}
```
Use the returned URL directly for playback or download; no API key or Authorization header is required for that URL. Files follow the existing storage retention policy. Querying a task does not generate another video, charge again or extend file availability. Save files you want to keep to your own storage. Task queries require your API key and only return tasks owned by your account.
## Synchronous and background Responses [#synchronous-and-background-responses]
For clients using the Responses API, `POST /v1/responses` accepts a model ID, a string `input` and the same native generation fields. Use `input` instead of `prompt`. Native media fields such as `reference_images` remain top-level fields.
```json
{
"model": "wan3.0-video",
"input": "A blue ball rolls across a white table.",
"resolution": "480p",
"duration": 2,
"background": true
}
```
With `background: true`, save the response ID and poll `GET /v1/responses/{response_id}`. Without `background`, the HTTP request waits for completion. `stream: true` uses server-sent events while waiting. The final assistant output contains a signed video URL; treat it as a private capability link and do not publish it accidentally. Native task submission and background Responses are recommended for long generations and restrictive proxy timeouts.
A disconnected or timed-out synchronous request does not cancel generation. The task remains on the server. Do not automatically submit the same generation again.
## Billing and failure handling [#billing-and-failure-handling]
The price is the model's resolution rate multiplied by billable seconds. Reference video seconds and output seconds both count; text, images and audio inputs do not add video seconds. Fixed-duration requests without reference video reserve the requested output duration. Automatic duration and reference-video requests reserve up to 30 billable seconds, then settle to measured usage and return the unused reservation. Generation failures release the reservation. Polling does not create another generation or charge again.
* **Invalid parameters:** correct the request before resubmitting. Unknown native fields are rejected.
* **Insufficient balance:** add funds before a new paid request. A key's limit does not grant account credit.
* **Rate limits or temporary polling failures:** retry only the query, with backoff and a maximum waiting period.
* **Submission timeout, network interruption or missing task ID:** the outcome may be unknown. Do not automatically repeat the POST; it could create a second paid task.
* **Task failure:** show the failed state separately from an unavailable status query.
* **Download failure:** retry downloading the existing completed task before starting another generation.
Generation submissions are not automatically retried or switched to another model. There is no advertised cancellation, webhook or idempotency-key contract. Keep the task ID and contact [support](https://wanapi.app/contact) when an uncertain submission needs investigation.
---
# Wan 3.0
Source: https://wanapi.app/docs/wan-3-0
Wan 3.0 supports text, images and reference media, with output at 480p, 720p or 1080p. Use this endpoint for the standard model; selecting 1080p does not switch it to Pro. [Model details and Playground](https://wanapi.app/models/wan-3-0).
## Connect to Wan API [#connect-to-wan-api]
Use `https://api.wanapi.app` as the API base URL. Create a key in [API key settings](https://wanapi.app/settings/apikeys) and send it as `Authorization: Bearer YOUR_API_KEY`. Keep keys on your server. Playground uses your website session and charges the same account balance; it does not require pasting a key into the browser.
Access requires an enabled account with sufficient balance. See [pricing](https://wanapi.app/pricing) for current rates. Each model has its own endpoint and [model page](https://wanapi.app/models).
`GET /v1/models` lists the models available to your key. Choosing a higher resolution does not automatically change your model.
| Setting | Wan 3.0 |
| ------------ | --------------------------------------------------------------------- |
| Model ID | `wan3.0-video` |
| `resolution` | `480p`, `720p`, `1080p`; default: `1080p`. |
| `duration` | 2–30 output seconds, or `-1` for automatic duration; default: `5`. |
| `ratio` | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`; default: `adaptive`. |
| `audio` | `true` by default. `false` does not reduce the rate. |
The [shared request fields](https://wanapi.app/docs/wan-3-0#request-fields) describe all 14 native fields, media limits and input combinations. This model uses `wan3.0-video` in the URL for native requests and as the `model` value in [Responses requests](https://wanapi.app/docs/wan-3-0#synchronous-and-background-responses).
## Submit a Wan 3.0 task [#submit-a-wan-30-task]
This is a two-second text-to-video request at this model's lowest resolution. Set `WAN_API_KEY` to your key on the server. The model is selected by the URL; do not add a `model` field to this native JSON body.
```bash
curl https://api.wanapi.app/wan/v1/wan3.0-video/generation \
-H "Authorization: Bearer $WAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A blue ball rolls across a white table. Static camera.",
"duration": 2,
"resolution": "480p",
"ratio": "16:9",
"audio": false,
"prompt_extend": false
}'
```
## Query a Wan 3.0 task [#query-a-wan-30-task]
Save the returned `task_info.id` as `TASK_ID`, then query the same model endpoint. The submit response is a task receipt, not a completed video. Begin polling every five seconds; see [task statuses and downloads](https://wanapi.app/docs/wan-3-0#poll-and-download-the-video).
```bash
curl "https://api.wanapi.app/wan/v1/wan3.0-video/generation/$TASK_ID" \
-H "Authorization: Bearer $WAN_API_KEY"
```
## Wan 3.0 pricing [#wan-30-pricing]
The table shows current USD rates per billable second. Reference video input seconds and generated output seconds both count. The five-second example assumes no reference video. See [billing and failure handling](https://wanapi.app/docs/wan-3-0#billing-and-failure-handling) for reservations and settlement.
[View Wan 3.0 pricing](https://wanapi.app/models/wan-3-0#pricing).
## Request fields [#request-fields]
All four models share these 14 native fields. Provide a prompt or at least one media input. Frames cannot be combined with reference inputs, `file` or `link`; `file` and `link` are mutually exclusive.
| Field | Type | Contract |
| ------------------ | --------- | --------------------------------------------------------------------------------------------- |
| `prompt` | string | Up to 20,000 characters. |
| `first_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `last_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `reference_images` | string\[] | Up to 10 images, using the same forms as a frame. |
| `reference_videos` | string\[] | Up to 5 public MP4/MOV URLs; 1–15 seconds per clip and at most 15 reference seconds in total. |
| `reference_audios` | string\[] | Up to 5 audio HTTP(S) URLs. |
| `file` | string | Public document URL. |
| `link` | string | Public web page URL. |
| `resolution` | string | See the model table. Default: `1080p`. |
| `ratio` | string | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`. Default: `adaptive`. |
| `duration` | integer | 2–30 output seconds, or `-1` for automatic duration. Default: `5`. |
| `audio` | boolean | Generate audio. Default: `true`. Disabling it does not reduce the rate. |
| `seed` | integer | 0–2147483647. Omit for random generation. |
| `prompt_extend` | boolean | Expand the prompt. Default: `true`. |
Use stable, directly accessible media URLs that stay available until the task finishes. Video duration checks use bounded HTTP range reads; video servers must support those reads and expose readable MP4/MOV duration metadata. Redirects are not followed by duration checks. Private network URLs are not supported. The combined reference and output duration must not exceed 30 seconds. Playground accepts a JSON request body up to 32 MiB; use URLs for larger inputs.
## Poll and download the video [#poll-and-download-the-video]
Every model's submit endpoint returns a public task ID. Save it before doing anything else.
```json
{
"task_info": {
"id": "task_EXAMPLE",
"status": "pending"
}
}
```
Use the query example in the matching model chapter. Start with a five-second interval and increase the delay after temporary errors. Keep each task's model ID together with its task ID; do not query it through a different model endpoint.
The native statuses are `pending`, `processing`, `completed` and `failed`. A completed response includes `videos`, an array containing a complete signed Bunny CDN URL.
```json
{
"task_info": { "id": "task_EXAMPLE", "status": "completed" },
"videos": ["https://reapiflexible.b-cdn.net/flexible/v1/expires/2026-11/20261113T06/wanapi-task_EXAMPLE/video.mp4?token=HS256_SIGNATURE&expires=1794550071"]
}
```
Use the returned URL directly for playback or download; no API key or Authorization header is required for that URL. Files follow the existing storage retention policy. Querying a task does not generate another video, charge again or extend file availability. Save files you want to keep to your own storage. Task queries require your API key and only return tasks owned by your account.
## Synchronous and background Responses [#synchronous-and-background-responses]
For clients using the Responses API, `POST /v1/responses` accepts a model ID, a string `input` and the same native generation fields. Use `input` instead of `prompt`. Native media fields such as `reference_images` remain top-level fields.
```json
{
"model": "wan3.0-video",
"input": "A blue ball rolls across a white table.",
"resolution": "480p",
"duration": 2,
"background": true
}
```
With `background: true`, save the response ID and poll `GET /v1/responses/{response_id}`. Without `background`, the HTTP request waits for completion. `stream: true` uses server-sent events while waiting. The final assistant output contains a signed video URL; treat it as a private capability link and do not publish it accidentally. Native task submission and background Responses are recommended for long generations and restrictive proxy timeouts.
A disconnected or timed-out synchronous request does not cancel generation. The task remains on the server. Do not automatically submit the same generation again.
## Billing and failure handling [#billing-and-failure-handling]
The price is the model's resolution rate multiplied by billable seconds. Reference video seconds and output seconds both count; text, images and audio inputs do not add video seconds. Fixed-duration requests without reference video reserve the requested output duration. Automatic duration and reference-video requests reserve up to 30 billable seconds, then settle to measured usage and return the unused reservation. Generation failures release the reservation. Polling does not create another generation or charge again.
* **Invalid parameters:** correct the request before resubmitting. Unknown native fields are rejected.
* **Insufficient balance:** add funds before a new paid request. A key's limit does not grant account credit.
* **Rate limits or temporary polling failures:** retry only the query, with backoff and a maximum waiting period.
* **Submission timeout, network interruption or missing task ID:** the outcome may be unknown. Do not automatically repeat the POST; it could create a second paid task.
* **Task failure:** show the failed state separately from an unavailable status query.
* **Download failure:** retry downloading the existing completed task before starting another generation.
Generation submissions are not automatically retried or switched to another model. There is no advertised cancellation, webhook or idempotency-key contract. Keep the task ID and contact [support](https://wanapi.app/contact) when an uncertain submission needs investigation.
---
# Wan 3.0 Prime
Source: https://wanapi.app/docs/wan-3-0-prime
Wan 3.0 Prime uses a separate model ID and price schedule, with the same 480p, 720p and 1080p resolution choices. It accepts text, images and reference media. [Model details and Playground](https://wanapi.app/models/wan-3-0-prime).
## Connect to Wan API [#connect-to-wan-api]
Use `https://api.wanapi.app` as the API base URL. Create a key in [API key settings](https://wanapi.app/settings/apikeys) and send it as `Authorization: Bearer YOUR_API_KEY`. Keep keys on your server. Playground uses your website session and charges the same account balance; it does not require pasting a key into the browser.
Access requires an enabled account with sufficient balance. See [pricing](https://wanapi.app/pricing) for current rates. Each model has its own endpoint and [model page](https://wanapi.app/models).
`GET /v1/models` lists the models available to your key. Choosing a higher resolution does not automatically change your model.
| Setting | Wan 3.0 Prime |
| ------------ | --------------------------------------------------------------------- |
| Model ID | `wan3.0-video-prime` |
| `resolution` | `480p`, `720p`, `1080p`; default: `1080p`. |
| `duration` | 2–30 output seconds, or `-1` for automatic duration; default: `5`. |
| `ratio` | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`; default: `adaptive`. |
| `audio` | `true` by default. `false` does not reduce the rate. |
The [shared request fields](https://wanapi.app/docs/wan-3-0-prime#request-fields) describe all 14 native fields, media limits and input combinations. This model uses `wan3.0-video-prime` in the URL for native requests and as the `model` value in [Responses requests](https://wanapi.app/docs/wan-3-0-prime#synchronous-and-background-responses).
## Submit a Wan 3.0 Prime task [#submit-a-wan-30-prime-task]
This is a two-second text-to-video request at this model's lowest resolution. Set `WAN_API_KEY` to your key on the server. The model is selected by the URL; do not add a `model` field to this native JSON body.
```bash
curl https://api.wanapi.app/wan/v1/wan3.0-video-prime/generation \
-H "Authorization: Bearer $WAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A blue glass bottle turns slowly on a white pedestal. Static camera.",
"duration": 2,
"resolution": "480p",
"ratio": "16:9",
"audio": false,
"prompt_extend": false
}'
```
## Query a Wan 3.0 Prime task [#query-a-wan-30-prime-task]
Save the returned `task_info.id` as `TASK_ID`, then query the same model endpoint. The submit response is a task receipt, not a completed video. Begin polling every five seconds; see [task statuses and downloads](https://wanapi.app/docs/wan-3-0-prime#poll-and-download-the-video).
```bash
curl "https://api.wanapi.app/wan/v1/wan3.0-video-prime/generation/$TASK_ID" \
-H "Authorization: Bearer $WAN_API_KEY"
```
## Wan 3.0 Prime pricing [#wan-30-prime-pricing]
The table shows current USD rates per billable second. Reference video input seconds and generated output seconds both count. The five-second example assumes no reference video. See [billing and failure handling](https://wanapi.app/docs/wan-3-0-prime#billing-and-failure-handling) for reservations and settlement.
[View Wan 3.0 Prime pricing](https://wanapi.app/models/wan-3-0-prime#pricing).
## Request fields [#request-fields]
All four models share these 14 native fields. Provide a prompt or at least one media input. Frames cannot be combined with reference inputs, `file` or `link`; `file` and `link` are mutually exclusive.
| Field | Type | Contract |
| ------------------ | --------- | --------------------------------------------------------------------------------------------- |
| `prompt` | string | Up to 20,000 characters. |
| `first_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `last_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `reference_images` | string\[] | Up to 10 images, using the same forms as a frame. |
| `reference_videos` | string\[] | Up to 5 public MP4/MOV URLs; 1–15 seconds per clip and at most 15 reference seconds in total. |
| `reference_audios` | string\[] | Up to 5 audio HTTP(S) URLs. |
| `file` | string | Public document URL. |
| `link` | string | Public web page URL. |
| `resolution` | string | See the model table. Default: `1080p`. |
| `ratio` | string | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`. Default: `adaptive`. |
| `duration` | integer | 2–30 output seconds, or `-1` for automatic duration. Default: `5`. |
| `audio` | boolean | Generate audio. Default: `true`. Disabling it does not reduce the rate. |
| `seed` | integer | 0–2147483647. Omit for random generation. |
| `prompt_extend` | boolean | Expand the prompt. Default: `true`. |
Use stable, directly accessible media URLs that stay available until the task finishes. Video duration checks use bounded HTTP range reads; video servers must support those reads and expose readable MP4/MOV duration metadata. Redirects are not followed by duration checks. Private network URLs are not supported. The combined reference and output duration must not exceed 30 seconds. Playground accepts a JSON request body up to 32 MiB; use URLs for larger inputs.
## Poll and download the video [#poll-and-download-the-video]
Every model's submit endpoint returns a public task ID. Save it before doing anything else.
```json
{
"task_info": {
"id": "task_EXAMPLE",
"status": "pending"
}
}
```
Use the query example in the matching model chapter. Start with a five-second interval and increase the delay after temporary errors. Keep each task's model ID together with its task ID; do not query it through a different model endpoint.
The native statuses are `pending`, `processing`, `completed` and `failed`. A completed response includes `videos`, an array containing a complete signed Bunny CDN URL.
```json
{
"task_info": { "id": "task_EXAMPLE", "status": "completed" },
"videos": ["https://reapiflexible.b-cdn.net/flexible/v1/expires/2026-11/20261113T06/wanapi-task_EXAMPLE/video.mp4?token=HS256_SIGNATURE&expires=1794550071"]
}
```
Use the returned URL directly for playback or download; no API key or Authorization header is required for that URL. Files follow the existing storage retention policy. Querying a task does not generate another video, charge again or extend file availability. Save files you want to keep to your own storage. Task queries require your API key and only return tasks owned by your account.
## Synchronous and background Responses [#synchronous-and-background-responses]
For clients using the Responses API, `POST /v1/responses` accepts a model ID, a string `input` and the same native generation fields. Use `input` instead of `prompt`. Native media fields such as `reference_images` remain top-level fields.
```json
{
"model": "wan3.0-video-prime",
"input": "A blue ball rolls across a white table.",
"resolution": "480p",
"duration": 2,
"background": true
}
```
With `background: true`, save the response ID and poll `GET /v1/responses/{response_id}`. Without `background`, the HTTP request waits for completion. `stream: true` uses server-sent events while waiting. The final assistant output contains a signed video URL; treat it as a private capability link and do not publish it accidentally. Native task submission and background Responses are recommended for long generations and restrictive proxy timeouts.
A disconnected or timed-out synchronous request does not cancel generation. The task remains on the server. Do not automatically submit the same generation again.
## Billing and failure handling [#billing-and-failure-handling]
The price is the model's resolution rate multiplied by billable seconds. Reference video seconds and output seconds both count; text, images and audio inputs do not add video seconds. Fixed-duration requests without reference video reserve the requested output duration. Automatic duration and reference-video requests reserve up to 30 billable seconds, then settle to measured usage and return the unused reservation. Generation failures release the reservation. Polling does not create another generation or charge again.
* **Invalid parameters:** correct the request before resubmitting. Unknown native fields are rejected.
* **Insufficient balance:** add funds before a new paid request. A key's limit does not grant account credit.
* **Rate limits or temporary polling failures:** retry only the query, with backoff and a maximum waiting period.
* **Submission timeout, network interruption or missing task ID:** the outcome may be unknown. Do not automatically repeat the POST; it could create a second paid task.
* **Task failure:** show the failed state separately from an unavailable status query.
* **Download failure:** retry downloading the existing completed task before starting another generation.
Generation submissions are not automatically retried or switched to another model. There is no advertised cancellation, webhook or idempotency-key contract. Keep the task ID and contact [support](https://wanapi.app/contact) when an uncertain submission needs investigation.
---
# Wan 3.0 Prime Pro
Source: https://wanapi.app/docs/wan-3-0-prime-pro
Wan 3.0 Prime Pro has its own model ID and rates, with 1080p, 2K and 4K output. It accepts text, images and reference media. It is a separate endpoint from Prime; requesting 4K on the Prime endpoint does not select Prime Pro. [Model details and Playground](https://wanapi.app/models/wan-3-0-prime-pro).
## Connect to Wan API [#connect-to-wan-api]
Use `https://api.wanapi.app` as the API base URL. Create a key in [API key settings](https://wanapi.app/settings/apikeys) and send it as `Authorization: Bearer YOUR_API_KEY`. Keep keys on your server. Playground uses your website session and charges the same account balance; it does not require pasting a key into the browser.
Access requires an enabled account with sufficient balance. See [pricing](https://wanapi.app/pricing) for current rates. Each model has its own endpoint and [model page](https://wanapi.app/models).
`GET /v1/models` lists the models available to your key. Choosing a higher resolution does not automatically change your model.
| Setting | Wan 3.0 Prime Pro |
| ------------ | --------------------------------------------------------------------- |
| Model ID | `w3.0-video-prime-pro` |
| `resolution` | `1080p`, `2k`, `4k`; default: `1080p`. |
| `duration` | 2–30 output seconds, or `-1` for automatic duration; default: `5`. |
| `ratio` | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`; default: `adaptive`. |
| `audio` | `true` by default. `false` does not reduce the rate. |
The [shared request fields](https://wanapi.app/docs/wan-3-0-prime-pro#request-fields) describe all 14 native fields, media limits and input combinations. This model uses `w3.0-video-prime-pro` in the URL for native requests and as the `model` value in [Responses requests](https://wanapi.app/docs/wan-3-0-prime-pro#synchronous-and-background-responses).
## Submit a Wan 3.0 Prime Pro task [#submit-a-wan-30-prime-pro-task]
This is a two-second text-to-video request at this model's lowest resolution. Set `WAN_API_KEY` to your key on the server. The model is selected by the URL; do not add a `model` field to this native JSON body.
```bash
curl https://api.wanapi.app/wan/v1/w3.0-video-prime-pro/generation \
-H "Authorization: Bearer $WAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A camera glides past sunlit coastal cliffs above a calm sea.",
"duration": 2,
"resolution": "1080p",
"ratio": "16:9",
"audio": false,
"prompt_extend": false
}'
```
## Query a Wan 3.0 Prime Pro task [#query-a-wan-30-prime-pro-task]
Save the returned `task_info.id` as `TASK_ID`, then query the same model endpoint. The submit response is a task receipt, not a completed video. Begin polling every five seconds; see [task statuses and downloads](https://wanapi.app/docs/wan-3-0-prime-pro#poll-and-download-the-video).
```bash
curl "https://api.wanapi.app/wan/v1/w3.0-video-prime-pro/generation/$TASK_ID" \
-H "Authorization: Bearer $WAN_API_KEY"
```
## Wan 3.0 Prime Pro pricing [#wan-30-prime-pro-pricing]
The table shows current USD rates per billable second. Reference video input seconds and generated output seconds both count. The five-second example assumes no reference video. See [billing and failure handling](https://wanapi.app/docs/wan-3-0-prime-pro#billing-and-failure-handling) for reservations and settlement.
[View Wan 3.0 Prime Pro pricing](https://wanapi.app/models/wan-3-0-prime-pro#pricing).
## Request fields [#request-fields]
All four models share these 14 native fields. Provide a prompt or at least one media input. Frames cannot be combined with reference inputs, `file` or `link`; `file` and `link` are mutually exclusive.
| Field | Type | Contract |
| ------------------ | --------- | --------------------------------------------------------------------------------------------- |
| `prompt` | string | Up to 20,000 characters. |
| `first_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `last_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `reference_images` | string\[] | Up to 10 images, using the same forms as a frame. |
| `reference_videos` | string\[] | Up to 5 public MP4/MOV URLs; 1–15 seconds per clip and at most 15 reference seconds in total. |
| `reference_audios` | string\[] | Up to 5 audio HTTP(S) URLs. |
| `file` | string | Public document URL. |
| `link` | string | Public web page URL. |
| `resolution` | string | See the model table. Default: `1080p`. |
| `ratio` | string | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`. Default: `adaptive`. |
| `duration` | integer | 2–30 output seconds, or `-1` for automatic duration. Default: `5`. |
| `audio` | boolean | Generate audio. Default: `true`. Disabling it does not reduce the rate. |
| `seed` | integer | 0–2147483647. Omit for random generation. |
| `prompt_extend` | boolean | Expand the prompt. Default: `true`. |
Use stable, directly accessible media URLs that stay available until the task finishes. Video duration checks use bounded HTTP range reads; video servers must support those reads and expose readable MP4/MOV duration metadata. Redirects are not followed by duration checks. Private network URLs are not supported. The combined reference and output duration must not exceed 30 seconds. Playground accepts a JSON request body up to 32 MiB; use URLs for larger inputs.
## Poll and download the video [#poll-and-download-the-video]
Every model's submit endpoint returns a public task ID. Save it before doing anything else.
```json
{
"task_info": {
"id": "task_EXAMPLE",
"status": "pending"
}
}
```
Use the query example in the matching model chapter. Start with a five-second interval and increase the delay after temporary errors. Keep each task's model ID together with its task ID; do not query it through a different model endpoint.
The native statuses are `pending`, `processing`, `completed` and `failed`. A completed response includes `videos`, an array containing a complete signed Bunny CDN URL.
```json
{
"task_info": { "id": "task_EXAMPLE", "status": "completed" },
"videos": ["https://reapiflexible.b-cdn.net/flexible/v1/expires/2026-11/20261113T06/wanapi-task_EXAMPLE/video.mp4?token=HS256_SIGNATURE&expires=1794550071"]
}
```
Use the returned URL directly for playback or download; no API key or Authorization header is required for that URL. Files follow the existing storage retention policy. Querying a task does not generate another video, charge again or extend file availability. Save files you want to keep to your own storage. Task queries require your API key and only return tasks owned by your account.
## Synchronous and background Responses [#synchronous-and-background-responses]
For clients using the Responses API, `POST /v1/responses` accepts a model ID, a string `input` and the same native generation fields. Use `input` instead of `prompt`. Native media fields such as `reference_images` remain top-level fields.
```json
{
"model": "w3.0-video-prime-pro",
"input": "A blue ball rolls across a white table.",
"resolution": "1080p",
"duration": 2,
"background": true
}
```
With `background: true`, save the response ID and poll `GET /v1/responses/{response_id}`. Without `background`, the HTTP request waits for completion. `stream: true` uses server-sent events while waiting. The final assistant output contains a signed video URL; treat it as a private capability link and do not publish it accidentally. Native task submission and background Responses are recommended for long generations and restrictive proxy timeouts.
A disconnected or timed-out synchronous request does not cancel generation. The task remains on the server. Do not automatically submit the same generation again.
## Billing and failure handling [#billing-and-failure-handling]
The price is the model's resolution rate multiplied by billable seconds. Reference video seconds and output seconds both count; text, images and audio inputs do not add video seconds. Fixed-duration requests without reference video reserve the requested output duration. Automatic duration and reference-video requests reserve up to 30 billable seconds, then settle to measured usage and return the unused reservation. Generation failures release the reservation. Polling does not create another generation or charge again.
* **Invalid parameters:** correct the request before resubmitting. Unknown native fields are rejected.
* **Insufficient balance:** add funds before a new paid request. A key's limit does not grant account credit.
* **Rate limits or temporary polling failures:** retry only the query, with backoff and a maximum waiting period.
* **Submission timeout, network interruption or missing task ID:** the outcome may be unknown. Do not automatically repeat the POST; it could create a second paid task.
* **Task failure:** show the failed state separately from an unavailable status query.
* **Download failure:** retry downloading the existing completed task before starting another generation.
Generation submissions are not automatically retried or switched to another model. There is no advertised cancellation, webhook or idempotency-key contract. Keep the task ID and contact [support](https://wanapi.app/contact) when an uncertain submission needs investigation.
---
# Wan 3.0 Pro
Source: https://wanapi.app/docs/wan-3-0-pro
Wan 3.0 Pro accepts text, images and reference media and outputs at 1080p, 2K or 4K. Use the Pro endpoint for these resolution choices; 480p and 720p are not supported. [Model details and Playground](https://wanapi.app/models/wan-3-0-pro).
## Connect to Wan API [#connect-to-wan-api]
Use `https://api.wanapi.app` as the API base URL. Create a key in [API key settings](https://wanapi.app/settings/apikeys) and send it as `Authorization: Bearer YOUR_API_KEY`. Keep keys on your server. Playground uses your website session and charges the same account balance; it does not require pasting a key into the browser.
Access requires an enabled account with sufficient balance. See [pricing](https://wanapi.app/pricing) for current rates. Each model has its own endpoint and [model page](https://wanapi.app/models).
`GET /v1/models` lists the models available to your key. Choosing a higher resolution does not automatically change your model.
| Setting | Wan 3.0 Pro |
| ------------ | --------------------------------------------------------------------- |
| Model ID | `w3.0-video-pro` |
| `resolution` | `1080p`, `2k`, `4k`; default: `1080p`. |
| `duration` | 2–30 output seconds, or `-1` for automatic duration; default: `5`. |
| `ratio` | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`; default: `adaptive`. |
| `audio` | `true` by default. `false` does not reduce the rate. |
The [shared request fields](https://wanapi.app/docs/wan-3-0-pro#request-fields) describe all 14 native fields, media limits and input combinations. This model uses `w3.0-video-pro` in the URL for native requests and as the `model` value in [Responses requests](https://wanapi.app/docs/wan-3-0-pro#synchronous-and-background-responses).
## Submit a Wan 3.0 Pro task [#submit-a-wan-30-pro-task]
This is a two-second text-to-video request at this model's lowest resolution. Set `WAN_API_KEY` to your key on the server. The model is selected by the URL; do not add a `model` field to this native JSON body.
```bash
curl https://api.wanapi.app/wan/v1/w3.0-video-pro/generation \
-H "Authorization: Bearer $WAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A camera moves slowly along a quiet waterfront at sunrise.",
"duration": 2,
"resolution": "1080p",
"ratio": "16:9",
"audio": false,
"prompt_extend": false
}'
```
## Query a Wan 3.0 Pro task [#query-a-wan-30-pro-task]
Save the returned `task_info.id` as `TASK_ID`, then query the same model endpoint. The submit response is a task receipt, not a completed video. Begin polling every five seconds; see [task statuses and downloads](https://wanapi.app/docs/wan-3-0-pro#poll-and-download-the-video).
```bash
curl "https://api.wanapi.app/wan/v1/w3.0-video-pro/generation/$TASK_ID" \
-H "Authorization: Bearer $WAN_API_KEY"
```
## Wan 3.0 Pro pricing [#wan-30-pro-pricing]
The table shows current USD rates per billable second. Reference video input seconds and generated output seconds both count. The five-second example assumes no reference video. See [billing and failure handling](https://wanapi.app/docs/wan-3-0-pro#billing-and-failure-handling) for reservations and settlement.
[View Wan 3.0 Pro pricing](https://wanapi.app/models/wan-3-0-pro#pricing).
## Request fields [#request-fields]
All four models share these 14 native fields. Provide a prompt or at least one media input. Frames cannot be combined with reference inputs, `file` or `link`; `file` and `link` are mutually exclusive.
| Field | Type | Contract |
| ------------------ | --------- | --------------------------------------------------------------------------------------------- |
| `prompt` | string | Up to 20,000 characters. |
| `first_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `last_frame` | string | Image HTTP(S) URL, image data URI or Base64. |
| `reference_images` | string\[] | Up to 10 images, using the same forms as a frame. |
| `reference_videos` | string\[] | Up to 5 public MP4/MOV URLs; 1–15 seconds per clip and at most 15 reference seconds in total. |
| `reference_audios` | string\[] | Up to 5 audio HTTP(S) URLs. |
| `file` | string | Public document URL. |
| `link` | string | Public web page URL. |
| `resolution` | string | See the model table. Default: `1080p`. |
| `ratio` | string | `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`. Default: `adaptive`. |
| `duration` | integer | 2–30 output seconds, or `-1` for automatic duration. Default: `5`. |
| `audio` | boolean | Generate audio. Default: `true`. Disabling it does not reduce the rate. |
| `seed` | integer | 0–2147483647. Omit for random generation. |
| `prompt_extend` | boolean | Expand the prompt. Default: `true`. |
Use stable, directly accessible media URLs that stay available until the task finishes. Video duration checks use bounded HTTP range reads; video servers must support those reads and expose readable MP4/MOV duration metadata. Redirects are not followed by duration checks. Private network URLs are not supported. The combined reference and output duration must not exceed 30 seconds. Playground accepts a JSON request body up to 32 MiB; use URLs for larger inputs.
## Poll and download the video [#poll-and-download-the-video]
Every model's submit endpoint returns a public task ID. Save it before doing anything else.
```json
{
"task_info": {
"id": "task_EXAMPLE",
"status": "pending"
}
}
```
Use the query example in the matching model chapter. Start with a five-second interval and increase the delay after temporary errors. Keep each task's model ID together with its task ID; do not query it through a different model endpoint.
The native statuses are `pending`, `processing`, `completed` and `failed`. A completed response includes `videos`, an array containing a complete signed Bunny CDN URL.
```json
{
"task_info": { "id": "task_EXAMPLE", "status": "completed" },
"videos": ["https://reapiflexible.b-cdn.net/flexible/v1/expires/2026-11/20261113T06/wanapi-task_EXAMPLE/video.mp4?token=HS256_SIGNATURE&expires=1794550071"]
}
```
Use the returned URL directly for playback or download; no API key or Authorization header is required for that URL. Files follow the existing storage retention policy. Querying a task does not generate another video, charge again or extend file availability. Save files you want to keep to your own storage. Task queries require your API key and only return tasks owned by your account.
## Synchronous and background Responses [#synchronous-and-background-responses]
For clients using the Responses API, `POST /v1/responses` accepts a model ID, a string `input` and the same native generation fields. Use `input` instead of `prompt`. Native media fields such as `reference_images` remain top-level fields.
```json
{
"model": "w3.0-video-pro",
"input": "A blue ball rolls across a white table.",
"resolution": "1080p",
"duration": 2,
"background": true
}
```
With `background: true`, save the response ID and poll `GET /v1/responses/{response_id}`. Without `background`, the HTTP request waits for completion. `stream: true` uses server-sent events while waiting. The final assistant output contains a signed video URL; treat it as a private capability link and do not publish it accidentally. Native task submission and background Responses are recommended for long generations and restrictive proxy timeouts.
A disconnected or timed-out synchronous request does not cancel generation. The task remains on the server. Do not automatically submit the same generation again.
## Billing and failure handling [#billing-and-failure-handling]
The price is the model's resolution rate multiplied by billable seconds. Reference video seconds and output seconds both count; text, images and audio inputs do not add video seconds. Fixed-duration requests without reference video reserve the requested output duration. Automatic duration and reference-video requests reserve up to 30 billable seconds, then settle to measured usage and return the unused reservation. Generation failures release the reservation. Polling does not create another generation or charge again.
* **Invalid parameters:** correct the request before resubmitting. Unknown native fields are rejected.
* **Insufficient balance:** add funds before a new paid request. A key's limit does not grant account credit.
* **Rate limits or temporary polling failures:** retry only the query, with backoff and a maximum waiting period.
* **Submission timeout, network interruption or missing task ID:** the outcome may be unknown. Do not automatically repeat the POST; it could create a second paid task.
* **Task failure:** show the failed state separately from an unavailable status query.
* **Download failure:** retry downloading the existing completed task before starting another generation.
Generation submissions are not automatically retried or switched to another model. There is no advertised cancellation, webhook or idempotency-key contract. Keep the task ID and contact [support](https://wanapi.app/contact) when an uncertain submission needs investigation.
---
# Wan 3.0 API guide: models, inputs, and your first video
Source: https://wanapi.app/blog/wan-3-api-guide
The first decision in a Wan 3.0 API integration is what you want the model to work from: a written scene, a starting image, or a set of references. Alibaba Cloud documents Wan 3.0 as a video model that can generate up to 30 seconds in one pass and accept text, images, audio, video, and documents. [1](https://wanapi.app/blog/wan-3-api-guide#ref-1)
This guide explains those choices and how to prepare a first test. It describes upstream capabilities; Wan API's production endpoint and key access details will be published in its integration documentation. Model rates are listed on the [pricing page](https://wanapi.app/pricing). Each model below has its own specifications page.
## Understand the model names [#understand-the-model-names]
Wan 3.0 is the model family. Comfy's official integration also lists `wan3.0-video-prime` as a selectable model. That confirms Prime is a distinct option, but a provider's model name alone does not establish its request schema, availability on another service, or the turnaround your application will get. [2](https://wanapi.app/blog/wan-3-api-guide#ref-2)
| Name | What to check before integrating |
| ---------------------------------------------- | ---------------------------------------------------------------- |
| [Wan 3.0](https://wanapi.app/models/wan-3-0) | Text, image and reference workflows; 480p, 720p and 1080p output |
| [Wan 3.0 Prime](https://wanapi.app/models/wan-3-0-prime) | A separate Prime model with its own rates; output up to 1080p |
| [Wan 3.0 Pro](https://wanapi.app/models/wan-3-0-pro) | The documented Pro option for 1080p, 2K and 4K output |
| [Wan 3.0 Prime Pro](https://wanapi.app/models/wan-3-0-prime-pro) | A separate Prime Pro option with 1080p, 2K and 4K settings |
Prime and Pro are distinct variants: compare the resolution options and exact model identifier before choosing. Wan 3.0 and Prime support output up to 1080p; Pro and Prime Pro add 2K and 4K options.
For a useful comparison, send the same prompt and references at the same duration and resolution. Record completion time, cost, and whether the result meets your brief. A model label is not a substitute for that test.
## Choose the input that matches your material [#choose-the-input-that-matches-your-material]
Comfy documents three Wan 3.0 workflows: text to video, image to video, and reference to video. Its image workflow accepts a first frame and an optional last frame. Its reference workflow uses images, video, and audio, with tags such as `@Image1`, `@Video1`, and `@Audio1` to describe each input's role. These names and tags belong to that integration; use your API provider's documented fields. [2](https://wanapi.app/blog/wan-3-api-guide#ref-2)
| Your starting material | A practical first test |
| -------------------------- | ------------------------------------------------------------------------ |
| A written scene | Describe one subject, one action, and one camera move |
| A product photograph | Explain the motion while identifying details that should stay consistent |
| Several references | Assign a role to each: identity, product appearance, movement, or sound |
| A presentation or document | Start with one short section and a clear audience and message |
Alibaba's document input supports one file or link, with files up to 100 MB. The 50-page limit applies to PDF, DOCX, DOC, PPTX, PPT, KEY and PAGES files. A gateway may expose fewer input modes, so verify document support before building an upload flow around it. [1](https://wanapi.app/blog/wan-3-api-guide#ref-1)
## Make the first test easy to evaluate [#make-the-first-test-easy-to-evaluate]
Start with a short clip and explicit output settings. For example, test a five-second product shot with a slow camera move and no spoken dialogue. This is a suggested test brief, not an API payload:
> A ceramic coffee cup sits beside a window in soft morning light. The camera moves slowly toward the cup as steam rises. Keep the cup's shape and color consistent. Use quiet room ambience, with no speech.
Set duration, resolution, aspect ratio, and audio intentionally wherever your provider exposes them. Comfy's current Wan workflow includes audio by default and offers 480p, 720p, and 1080p output. Those documented settings are a useful starting point, not a guarantee that every Wan endpoint exposes the same controls. [2](https://wanapi.app/blog/wan-3-api-guide#ref-2)
Review the result for the things your application actually needs: subject consistency, requested motion, audio, and usable composition. Alibaba identifies audio texture and accurate on-screen text as areas still being refined, so inspect generated speech and lettering before using a result in production. [1](https://wanapi.app/blog/wan-3-api-guide#ref-1)
## Check the API contract before building the workflow [#check-the-api-contract-before-building-the-workflow]
Before connecting a production application, confirm the exact model ID, authentication method, accepted media format, task submission and result retrieval flow, error behavior, and billing rules in the provider's documentation. Keep these details separate from the creative prompt.
For Wan API, start with the [model overview](https://wanapi.app/models). A successful authenticated request to the published endpoint should be your first integration milestone; the marketing page alone is not an API specification.
## Sources [#sources]
1. Alibaba Cloud, [Wan3.0: 30-Second AI Video Generation from Any Input](https://www.alibabacloud.com/blog/wan3-0-30-second-ai-video-generation-from-any-input_603452). Published August 13, 2026; checked October 13, 2026.
2. Comfy, [Wan 3.0 Video Generation in ComfyUI](https://docs.comfy.org/tutorials/partner-nodes/wan/wan3-0). Checked October 13, 2026. Settings cited here describe Comfy's integration.