Wan 3.0 Pro Prime · Image To Video
The expensive tier, and when it earns it
- image_url
- last_image_url
- video
- task id
Pro Prime is the top of the Wan 3.0 ladder in this pack: $0.234/s at 1080p, $0.252/s at 2k, $0.279/s at 4k. Put a number on that before getting excited. A 5-second 1080p clip is $1.17. A 10-second 4K clip is $2.79. Five takes of that and you've spent fourteen dollars on a decision you'll probably reverse. The node is genuinely better than the Pro tier on motion and prompt adherence - that's what the premium buys - but it's a tier to reach for on purpose, not by default.
Same schema as Pro, higher rate
The inputs are identical to Wan 3.0 Pro image-to-video, which is convenient: you can prototype cheaply and then swap the node.
- prompt - subject, motion, camera. The video is anchored to your still, so keep it about movement and framing.
- image_url - the opening frame; uploaded for you at run time and cached by content hash for 12 hours.
- resolution - 1080p (default), 2k, 4k. Per the author's tooltip, a native Wan 3.0 Prime render tops out at 1080p and the higher tiers are enlargements of it. Paying Pro Prime rates for an enlarged 4K is the least efficient thing you can do with this node - render at 1080p and upscale locally if you need the pixels.
- aspect_ratio -
adaptiveby default; the clip follows the source image unless you force a ratio, in which case the image gets cropped. - duration_seconds - default 5, or
-1for smart duration so the model chooses the length. - generate_audio, enable_prompt_expansion (on by default here), seed.
- Optional last_image_url to pin the final frame. Two keyframes plus one sentence is a remarkably controllable shot, and it's the cheapest way to stop wasting Pro Prime money on endings you don't like.
Outputs are video - wire it to Save Video - and task id, the string you quote to support when something goes wrong.
The workflow it belongs in
Because the resolution ladder is a lie above 1080p, the sensible Pro Prime pipeline is: generate the keyframe with an image model, render 5 seconds at 1080p here, then hand the clip to a local upscaler or a video upscaler endpoint. Same for audio: leave generate_audio on only if you want the model's own sound design, because most people end up replacing it anyway. Roughly: use Pro Prime for the hero shot, the base tier for everything around it.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi
Or Manager → SpicyAPI. Restart ComfyUI, then Settings > SpicyAPI → paste a key from spicyapi.ai/console/keys, and restart again so the node list reflects your account's catalogue. SPICY_API_KEY is the option for headless servers. No weights to download, no dependencies to install (the pack's dependency list is empty; it uses what ComfyUI already ships), Python 3.10+ and the V3 node API required.
Guardrails, because the numbers bite
Set Max cost per run in the SpicyAPI settings. The node quotes the request first and stops before charging if the worst case exceeds your ceiling - for a tier this expensive that's not optional. Seeds default to fixed, so queueing the same graph twice reuses a cached result instead of buying another one; flip control after generate to randomize when you want a new take. And when you hit cancel, remember the task keeps rendering server-side and is billed if it succeeds.
Error codes you'll actually see: No SpicyAPI key is set, 40310 (verify your email), 40004 (no deployment serves that combination - change the option named in the message), and anything with a request_id in it, which is support-ready as-is.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Describe the subject, motion and camera. | |
| image_url | IMAGE | Opening frame image. | |
| resolution | COMBO | 1080p | Output resolution tier. A native Wan 3.0 Prime render tops out at 1080p; 2k and 4k are enlarged from that render, not rendered natively. |
| aspect_ratio | COMBO | adaptive | Output aspect ratio; adaptive follows the input media and the intent. |
| duration_seconds | COMBO | 5 | Output duration in seconds. Pass -1 for smart duration: the model picks the length from the prompt and any input media instead of a fixed number. |
| generate_audio | BOOLEAN | true | Include an audio track in the output. |
| enable_prompt_expansion | BOOLEAN | true | Expand the prompt before generation. |
| seed | INT | 00–2147483647 | Same seed and settings, same result. Set 'control after generate' to randomize to get a new result on every run; every run is billed. |
| last_image_urlopt | IMAGE | Optional last frame: the clip ends exactly on this image. Requires image_url. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| task id | STRING | The SpicyAPI task id, for the console logs or support. |