Submit Wan 2.2 Text-to-Video Fast Task
curl --request POST \
--url https://api.vidgo.ai/api/generate/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data @- <<EOF
{
"model": "wan2.2-text-to-video-fast",
"input": {
"prompt": "A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.",
"resolution": "480p",
"seed": 22400,
"aspect_ratio": "16:9"
}
}
EOFimport requests
url = "https://api.vidgo.ai/api/generate/submit"
payload = {
"model": "wan2.2-text-to-video-fast",
"input": {
"prompt": "A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.",
"resolution": "480p",
"seed": 22400,
"aspect_ratio": "16:9"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: 'wan2.2-text-to-video-fast',
input: {
prompt: 'A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train\'s speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.',
resolution: '480p',
seed: 22400,
aspect_ratio: '16:9'
}
})
};
fetch('https://api.vidgo.ai/api/generate/submit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.vidgo.ai/api/generate/submit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'wan2.2-text-to-video-fast',
'input' => [
'prompt' => 'A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train\'s speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.',
'resolution' => '480p',
'seed' => 22400,
'aspect_ratio' => '16:9'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.vidgo.ai/api/generate/submit"
payload := strings.NewReader("{\n \"model\": \"wan2.2-text-to-video-fast\",\n \"input\": {\n \"prompt\": \"A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.\",\n \"resolution\": \"480p\",\n \"seed\": 22400,\n \"aspect_ratio\": \"16:9\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.vidgo.ai/api/generate/submit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"wan2.2-text-to-video-fast\",\n \"input\": {\n \"prompt\": \"A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.\",\n \"resolution\": \"480p\",\n \"seed\": 22400,\n \"aspect_ratio\": \"16:9\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vidgo.ai/api/generate/submit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"wan2.2-text-to-video-fast\",\n \"input\": {\n \"prompt\": \"A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.\",\n \"resolution\": \"480p\",\n \"seed\": 22400,\n \"aspect_ratio\": \"16:9\"\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2025-11-12T10:30:00"
}
}Alibaba
Wan 2.2 Text-to-Video Fast
Fast text-to-video generation with Alibaba Wan 2.2 Fast
POST
/
api
/
generate
/
submit
Submit Wan 2.2 Text-to-Video Fast Task
curl --request POST \
--url https://api.vidgo.ai/api/generate/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data @- <<EOF
{
"model": "wan2.2-text-to-video-fast",
"input": {
"prompt": "A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.",
"resolution": "480p",
"seed": 22400,
"aspect_ratio": "16:9"
}
}
EOFimport requests
url = "https://api.vidgo.ai/api/generate/submit"
payload = {
"model": "wan2.2-text-to-video-fast",
"input": {
"prompt": "A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.",
"resolution": "480p",
"seed": 22400,
"aspect_ratio": "16:9"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: 'wan2.2-text-to-video-fast',
input: {
prompt: 'A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train\'s speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.',
resolution: '480p',
seed: 22400,
aspect_ratio: '16:9'
}
})
};
fetch('https://api.vidgo.ai/api/generate/submit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.vidgo.ai/api/generate/submit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'wan2.2-text-to-video-fast',
'input' => [
'prompt' => 'A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train\'s speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.',
'resolution' => '480p',
'seed' => 22400,
'aspect_ratio' => '16:9'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.vidgo.ai/api/generate/submit"
payload := strings.NewReader("{\n \"model\": \"wan2.2-text-to-video-fast\",\n \"input\": {\n \"prompt\": \"A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.\",\n \"resolution\": \"480p\",\n \"seed\": 22400,\n \"aspect_ratio\": \"16:9\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.vidgo.ai/api/generate/submit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"wan2.2-text-to-video-fast\",\n \"input\": {\n \"prompt\": \"A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.\",\n \"resolution\": \"480p\",\n \"seed\": 22400,\n \"aspect_ratio\": \"16:9\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.vidgo.ai/api/generate/submit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"wan2.2-text-to-video-fast\",\n \"input\": {\n \"prompt\": \"A cinematic wide shot of one vintage steam train traveling steadily from left to right across a stone viaduct above a lush tropical gorge. The camera tracks sideways smoothly at the train's speed. White steam trails behind the locomotive, drifting over the dense green canopy; a distant waterfall and soft morning mist create layers of depth. The wheels remain on the rails, the carriages stay connected, and the bridge stays rigid. Natural documentary realism, warm early sunlight, one continuous shot, no cuts, no text or logos.\",\n \"resolution\": \"480p\",\n \"seed\": 22400,\n \"aspect_ratio\": \"16:9\"\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2025-11-12T10:30:00"
}
}- After submission, a
task_idwill be returned. If you provided acallback_url, when the task status becomesfinishedorfailed, a POST request will be sent to thecallback_url. - Regardless of whether
callback_urlis provided, you can retrieve the response result through the unified Query Task Status endpoint.
Wan 2.2 Text-to-Video Fast
wan2.2-text-to-video-fast is optimized for fast text-to-video generation with supported portrait and landscape output options.
Available Model
- wan2.2-text-to-video-fast - Generate short videos from text prompts
Key Parameters
- Aspect Ratio:
16:9,9:16 - Resolution:
480por720p - Seed: optional integer for reproducible outputs
Authorizations
All API endpoints require Bearer Token authentication
Get your API Key:
Visit the API Key Management Page to get your API Key
Add it to the request header:
Authorization: Bearer YOUR_API_KEY
Body
application/json