Skip to main content
POST
Create WAN 3.0 — Reference To Video

Overview

Alibaba WAN 3.0 all-in-one video with native audio; 2–30s, 480p/720p/1080p. Optimized for reference to video via apisale.
Docs = API contract + Try it (snapshot). Explore = browser playground. Model page = product examples.

Endpoint

Pricing

From $0.035/sec apisale price is 30% below the vendor’s official list price.
Official price = vendor list price. apisale price = what you pay through apisale.

Request

Parameters

Fields marked * are required. Use Authorization: Key YOUR_API_KEY for REST.
number
Optional random seed for reproducibility. Range: 0 – 2147483647
boolean
Include generated audio. Default: true
string
Text prompt directing how the reference media is used; address media positionally, e.g. the subject in Image 1 walks past Video 1.
string
Public webpage URL to base the video on; requires enable_thinking=true.
number
Output duration in seconds (2-30). Default: 5 Range: 2 – 30
string
Document URL to base the video on; requires enable_thinking=true.
string
Default: 1080p Values: 480p, 720p, 1080p
string
Default: adaptive Values: adaptive, 16:9, 4:3, 1:1, 3:4, 9:16
boolean
Enhanced reasoning before generation; required for file_url / web_url inputs. Default: false
array
Up to 5 reference audio clips totaling at most 15 seconds.
array
Up to 10 reference image URLs.
array
Up to 5 reference videos totaling at most 15 seconds; each clip at least 16 fps.
boolean
Content moderation on input and output. Default: true
boolean
Intelligent prompt rewriting; disabling saves ~20-60s latency but may degrade quality. Default: true
string
Optional HTTPS webhook when the run reaches a terminal state.
boolean
Block until completion (same Run response shape).

Submit response

Returns a Run with run_id. Poll with GET /v1/runs/{run_id} or use Try it above.
string
required
Unique run ID — save for polling and webhooks.
string
required
queued (async) or terminal state for sync runs.
object
Result when status is succeeded — see Output schema below.

Example (async submit)

Full lifecycle: Runs lifecycle.

Output

When status is succeeded, output follows this schema:

Example

Authorizations

Authorization
string
header
required

Key sk-... (native REST) or Bearer sk-... (vendor SDKs)

Body

application/json
input
object
required
Example:
webhook_url
string<uri>
sync
boolean
default:false

Response

201 - application/json

Run accepted

run_id
string
required

Unique run identifier

endpoint
string
required

Model slug

model
string
required
capability
string
required
mode
string
required
status
enum<string>
required
Available options:
queued,
processing,
succeeded,
failed,
timeout,
cancelled
created_at
string<date-time>
required
output
object | null
error
object | null
billing
object | null
started_at
string<date-time> | null
completed_at
string<date-time> | null
elapsed_ms
number | null