Model API

Wan 3.0

Wan 3.0 for video generation with optional input media.

Model id

Use this in every request
wan-3-0

This model has other modes with their own ids: alibaba/wan-3.0/image-to-video, alibaba/wan-3.0/reference-to-video.

Run it

Quote the input, start the generation with the quote, then poll the job. Set RAYWAKE_API_KEY first; see Authentication.

# 1. Price the exact input (quotes are valid for up to 10 minutes)
curl -s https://api.raywake.com/v1/quotes \
  -H "Authorization: Bearer $RAYWAKE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "wan-3-0",
  "input": {
    "prompt": "A red ceramic cup on a wooden table, soft morning light"
  }
}'

# 2. Start the generation with the quote_id from step 1
curl -s https://api.raywake.com/v1/generate \
  -H "Authorization: Bearer $RAYWAKE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"model": "wan-3-0", "quote_id": "QUOTE_ID", "input": {"prompt":"A red ceramic cup on a wooden table, soft morning light"}}'

# 3. Poll until the status is terminal
curl -s https://api.raywake.com/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $RAYWAKE_API_KEY"

Input

Input fields for wan-3-0
NameTypeDescription
inputImagearray of image URLs
Optional. First frame of the video. Leave empty to generate from the prompt alone. JPEG/JPG/PNG (no transparency)/BMP/WEBP, 240-8000px, ratio up to 8:1, max 20MB.

Default: []

promptrequiredstring
Required. The prompt to generate the video.
durationstring (enum)
Required. Total duration of the generated video (in seconds)

Default: 5

One of: 5, 10, 15, 20, 25, 30

resolutionstring (enum)
Required. Quality tier for the generated video

Default: 480P

One of: 480P, 720P, 1080P

ratiostring (enum)
Optional. Aspect ratio of the output. Adaptive derives it from the prompt and the input images.

Default: adaptive

One of: adaptive, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16

inputImageLastarray of image URLs
Optional. Last frame of the video. Same format limits as the first frame.

Default: []

audioEnabledstring (enum)
Optional. Whether the output carries an audio track. The price is the same either way.

Default: false

One of: false, true

promptExtendstring (enum)
Optional. Rewrites and expands the prompt for better detail, with slightly longer latency. Useful for short prompts.

Default: false

One of: false, true

seedinteger
Optional. Random seed for reproducibility (0-2147483647).

Output

A succeeded job lists its results under outputs, stored on our side. See Jobs for every field.

Job excerpt
"outputs": [
  { "type": "video", "url": "https://…", "mime_type": "video/mp4", "thumbnail_url": "https://…" }
]

Pricing

  • 480P · 5 s$0.40/ video
  • 480P · 10 s$0.80/ video
  • 480P · 15 s$1.19/ video
  • 480P · 20 s$1.59/ video
  • 480P · 25 s$1.99/ video
  • 480P · 30 s$2.38/ video
  • 720P · 5 s$0.80/ video
  • 720P · 10 s$1.59/ video
  • 720P · 15 s$2.38/ video
  • 720P · 20 s$3.17/ video
  • 720P · 25 s$3.97/ video
  • 720P · 30 s$4.76/ video
  • 1080P · 5 s$1.59/ video
  • 1080P · 10 s$3.17/ video
  • 1080P · 15 s$4.76/ video
  • 1080P · 20 s$6.34/ video
  • 1080P · 25 s$7.93/ video
  • 1080P · 30 s$9.51/ video

The exact charge for your input comes from a quote. How charges settle