Skip to main content
AlibabaMediumHigh

Wan 3.0

Alibaba's Wan 3.0 generates video from a text prompt or a starting image, with cinematic motion and support for 480p, 720p, and 1080p output up to 30 seconds.

2270 credits
per 5s 1080p video โ€” billed per second (480p 116/s, 720p 233/s, 1080p 465/s)
Text-to-video and image-to-video in one model
Long clips โ€” 2 to 30 seconds in a single generation
Three resolutions: 480p, 720p, 1080p
Adaptive aspect ratio โ€” the model picks the best framing, or set one of five ratios explicitly
Automatic prompt expansion for short prompts, seed support for reproducibility

Run it right now

Test this model instantly in the Console Playground โ€” no code required

Sign in to try

Use with AI Assistant

Copy usage instructions for Claude, ChatGPT, or other AI

Quick Start

curl -X POST "https://api.core.today/v1/predictions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: cdt_your_api_key" \
  -d '{
  "model": "alibaba/wan-3",
  "input": {
    "prompt": "a turtle swimming through a library, 35mm film",
    "duration": 5,
    "resolution": "1080p",
    "aspect_ratio": "adaptive"
  }
}'

Parameters

ParameterTypeRequiredDefaultDescription
promptstringYes-Text prompt for video generation
imagestringNo-Optional first-frame image to animate (jpg/png/bmp/webp, โ‰ค10MB). When provided, the video is generated from this image guided by the prompt
resolutionstringNo1080pOutput resolution. 480p bills 116 credits/sec, 720p 233/sec, 1080p 465/sec
480p720p1080p
aspect_ratiostringNoadaptive'adaptive' lets the model choose the best ratio for the prompt. Ignored when an image is provided (the image's ratio is used)
adaptive16:99:161:14:33:4
durationintegerNo5Video duration in seconds (2-30). Billed per second of output
negative_promptstringNo-Content that should not appear in the video
enable_prompt_expansionbooleanNotrueAutomatically expand and optimize the prompt. Improves quality for short prompts but increases latency
seedintegerNo-Random seed for reproducible generation (0-2147483647)

How to Provide File Input

There are 3 ways to provide files for the image parameter:

Recommended

Image URL

Pass a publicly accessible URL directly. With the Storage API (POST /v1/files/upload-url) the file uploads straight to S3 (50MB per file) and you pass the returned file_url.

{
  "model": "alibaba/wan-3",
  "input": {
    "prompt": "your prompt here",
    "image": "https://example.com/image.jpg"
  }
}

Direct Upload (Multipart)

Attach files directly to POST /v1/predictions/upload. No separate upload step, but the bytes pass through the API server so the whole request is capped at 10MB.

curl -X POST "https://api.core.today/v1/predictions/upload" \
  -H "X-API-Key: cdt_your_api_key" \
  -F "model=alibaba/wan-3" \
  -F 'input={"prompt":"your prompt here"}' \
  -F "file:image=@your_file.png"
See the File Upload docs for more upload methods including Presigned URLs.

Common Parameters

Common parameters used when calling POST /v1/predictions.

ParameterTypeRequiredDefaultDescription
modelstringYes-Model identifier
inputobjectYes-Object containing the model-specific parameters from the table above
output_folderstringNo-Folder path for output files (max 256 chars, '..' not allowed)
webhook_urlstringNo-Webhook URL to call on completion
is_publicbooleanNofalseIf true, output files are also available via permanent public URLs

Examples

Cinematic Text-to-Video

Generate a stylized video from a text prompt alone

curl -X POST "https://api.core.today/v1/predictions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: cdt_your_api_key" \
  -d '{
  "model": "alibaba/wan-3",
  "input": {
    "prompt": "a turtle swimming through a library, 35mm film",
    "duration": 5,
    "resolution": "1080p",
    "aspect_ratio": "adaptive"
  }
}'

Image-to-Video Animation

Animate a first-frame image guided by the prompt

curl -X POST "https://api.core.today/v1/predictions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: cdt_your_api_key" \
  -d '{
  "model": "alibaba/wan-3",
  "input": {
    "prompt": "The camera slowly pulls back as gentle snow begins to fall",
    "image": "https://example.com/first-frame.jpg",
    "duration": 8,
    "resolution": "720p"
  }
}'

Tips & Best Practices

1Billing is per second of output โ€” a 30s clip costs 6x a 5s one, so draft short and extend only when the motion works
2Iterate at 480p (a quarter of the 1080p rate), then re-render the final at 1080p
3Leave aspect_ratio on 'adaptive' for text-to-video unless you need a fixed frame; it is ignored with an input image anyway
4enable_prompt_expansion helps short prompts but adds latency โ€” turn it off for long, detailed prompts you have already refined
5Use the seed parameter to reproduce a result while tweaking the prompt

Use Cases

Long-form (up to 30s) narrative clips without stitching
Animating a first-frame image into a guided video
Cost-efficient 480p drafts before a 1080p final render
Vertical (9:16) short-form content for social media
Cinematic b-roll from a text description