# Alibaba | Wan | 3.0 | Prime | Text to Video Alibaba Wan 3.0 Prime Text-to-Video generates prompt-led AI video with aspect ratio, audio, seed, duration, and 480P-1080P output video controls. ## API Information - **Model Slug:** alibaba-wan-3-0-prime-text-to-video - **Branded URL:** https://www.eachlabs.ai/alibaba/wan-3-0/alibaba-wan-3-0-prime-text-to-video - **Provider:** Alibaba - **Category:** Text to Video - **Output Type:** video - **Status:** active - **Base Cost:** $0.068–$0.28 per second, depending on resolution - **Estimated Processing Time:** 200 seconds - **Interactive Demo:** https://www.eachlabs.ai/ai-models/alibaba-wan-3-0-prime-text-to-video ## Pricing - **Charge Type:** dynamic - **Estimate:** $0.068–$0.28 per second, depending on resolution - **Pricing Details:** 1080p: $0.28 - **Pricing Details:** 720p: $0.14 - **Pricing Details:** 480p: $0.068 ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | Yes | - | - | Text prompt describing the desired video. | | resolution | string | No | 1080P | 480P, 720P, 1080P | Output video resolution. | | ratio | string | No | adaptive | adaptive, 16:9, 9:16, 1:1, 4:3, 3:4 | Output video aspect ratio. Select adaptive to let the model choose a suitable ratio based on the prompt. | | duration | string | No | 5 | auto, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 | Generated video duration. Select Auto to let the model determine the duration automatically. | | audio | boolean | No | true | - | Whether to generate an audio track for the output video. | | prompt_extend | boolean | No | true | - | Enable automatic prompt rewriting. Enabled by default. Disabling it may reduce latency but can reduce generation quality. | | seed | integer | No | - | 0–2147483647 | Random seed for reproducibility. The same seed may produce similar, but not identical, results. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "alibaba-wan-3-0-prime-text-to-video", "input": { "prompt": "Scene 1 (0–8s). A woman lies asleep on her side in bed, face half buried in the pillow, soft morning light coming through the curtains. A large fat grey cat sits on the mattress beside her head. The cat lifts one front paw and taps her cheek. She doesn't move. The cat taps again, harder, and pats her nose. She frowns, groans, and slowly opens one eye, then the other. She pushes herself up onto her elbow, hair a mess, blinking, barely awake. The cat stares at her without blinking.\n\nHARD CUT.\n\nScene 2 (8–14s). Kitchen. Still in her pyjamas, hair messy, she crouches down and pours dry cat food from a small bag into a ceramic bowl on the floor. The kibble rattles as it fills the bowl. The fat grey cat pushes past her leg and starts eating immediately. She rubs her eyes with the back of her wrist and stands up.\n\nHARD CUT.\n\nScene 3 (14–22s). Living room. She picks up the remote from the coffee table and sits down on the sofa directly facing the television. The camera is positioned behind her, low over her shoulder, so that the television screen fills most of the frame and only the back of her head and shoulders are visible in the lower corner. She points the remote and presses the button.\n\nThe television turns on and the screen becomes the focus of the shot. A news broadcast is on air: a presenter sits at a desk in a studio, and across the lower third of the screen a bold red breaking news banner reads \"BREAKING NEWS — WAN 3.0 IS LIVE ON EACHLABS\" in clean white capital letters. The presenter looks into the camera and says clearly: \"Breaking news. Wan 3.0 is live on Eachlabs.\"\n\nShe sits up straight, suddenly fully awake. The fat grey cat jumps up onto the sofa beside her, also facing the screen.\n\nScene 4 (22–26s). The camera moves around to the front of the sofa, now facing the woman and the cat. She turns her head and looks down at the cat. The cat turns its head up and looks back at her. She breaks into a wide delighted smile and laughs, and the cat blinks slowly at her. She reaches out and scratches the top of the cat's head. They stay looking at each other as the shot holds.\n\nConsistency: the same woman throughout, the same fat grey cat, the same apartment, soft natural morning light in every scene. Photorealistic, handheld camera with slight natural drift, subtle film grain, unretouched. Sound of the cat's paw on skin, kibble hitting the bowl, the television clicking on, the presenter's voice, and quiet room tone at the end." } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "string (URL of generated video)", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "Authorization: Bearer YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `Authorization` bearer token | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **Alibaba | Wan | 3.0 | Prime | Text to Video Overview** **Alibaba | Wan | 3.0 | Prime | Text to Video** turns natural-language prompts into generated video clips for creators who need controlled, prompt-led motion without stitching together many short generations. It comes from Alibaba’s Wan family, and current documentation and API pages describe it as an accelerated text-to-video variant with flexible duration, aspect-ratio control, and optional audio generation. The clearest differentiator is its combination of longer single-pass output and richer prompt control, including a “thinking” mode for more deliberate interpretation of complex scenes. On each::labs, this model is useful when you want a production-oriented **Alibaba text-to-video** workflow that can produce cinematic clips from a single prompt while still exposing practical generation controls. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `Authorization: Bearer YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.