UlazAI API Dokumentation

WAN 2.6 Videogenerierung API

Generieren Sie kinoreife Multi-Shot-Videos mit nativem Audio mithilfe des Wan 2.6 AI-Modells von Alibaba – das die Modi Text-zu-Video, Bild-zu-Video und Video-zu-Video unterstützt.

🎬 Multimodus: Wan 2.6 unterstützt die Modi T2V, I2V und V2V mit bis zu 15 Sekunden langen Videos und nativer Audioerzeugung!

✨ Wan 2.6-Funktionen

Text-zu-Video Generation

Bild-zu-Video Animation

Video-zu-Video Transformation

5s, 10s oder 15s Videodauer

720p und 1080p Auflösung

Natives Audio mit Lippensynchronisation

Stabile Charaktere über Schüsse hinweg

Multi-Shot-Storytelling

POST /wan26/upload/

Bild-/Videodatei hochladen

Laden Sie eine Bild- oder Videodatei hoch, um sie im Bild-zu-Video- oder Video-zu-Video-Modus zu verwenden. Gibt eine permanente URL zurück, die im Generierungsendpunkt verwendet werden kann.

Anforderungsheader

Authorization: Bearer YOUR_API_KEY
Content-Type: multipart/form-data

Formulardatenparameter

Datei * (Datei)

Die hochzuladende Bild- oder Videodatei.

Typ (Zeichenfolge)

Bild oder Video. Standard: Bild

Dateibeschränkungen

📷 Bilder: Maximal 10 MB – JPG, PNG, WebP, GIF

🎬 Videos: Maximal 50 MB – MP4, WebM, MOV, AVI

Erfolgsantwort (200)

{
  "success": true,
  "url": "https://media.ulazai.com/wan26_images/u1_abc123.jpg",
  "filename": "wan26_images/u1_abc123.jpg"
}

Beispielverwendung (cURL)

curl -X POST https://api.ulazai.com/wan26/upload/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@/path/to/image.jpg" \
  -F "Typ=Bild"
POST /wan26/generate/

Generieren Sie WAN 2.6-Video

Erstellen Sie ein Video mit Wan 2.6 – unterstützt die Modi Text-zu-Video, Bild-zu-Video und Video-zu-Video.

Anforderungsheader

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Anfragetext (Text-zu-Video)

{
  "prompt": "A cinematic shot of a woman walking through a neon-lit Tokyo street at night",
  "mode": "text-to-video",
  "duration": "5",
  "resolution": "1080p"
}

Anforderungstext (Bild-zu-Video)

{
  "prompt": "The character turns and smiles at the camera",
  "mode": "image-to-video",
  "image_url": "https://example.com/character.jpg",
  "duration": "5",
  "resolution": "1080p"
}

Anfragetext (Video-zu-Video)

{
  "prompt": "Transform to anime style with vibrant colors",
  "mode": "video-to-video",
  "video_url": "https://example.com/source.mp4",
  "duration": "5",
  "resolution": "1080p"
}

Parameter

prompt * (Zeichenfolge)

Beschreibung des Videos. Maximal 5000 Zeichen. Unterstützt Englisch und Chinesisch.

Modus (Zeichenfolge)

Generierungsmodus: Text-zu-Video, Bild-zu-Video, oder Video-zu-Video. Standard: Text-zu-Video

image_url (Zeichenfolge)

Erforderlich für Bild-zu-Video Modus. Öffentliche URL zum Quellbild.

video_url (Zeichenfolge)

Erforderlich für Video-zu-Video Modus. Öffentliche URL zum Quellvideo.

Dauer (Zeichenfolge)

Videodauer: "5", "10", oder "15" Sekunden. Standard: "5"

Auflösung (Zeichenfolge)

Videoauflösung: "720p" oder "1080p". Standard: "1080p"

Erfolgsantwort (202)

{
  "success": true,
  "generation_id": "abc12345-1234-1234-1234-123456789012",
  "task_id": "wan26_task_xyz789",
  "credits_used": 105,
  "message": "Video generation started. This may take a few minutes."
}
GET /wan26/status/{generation_id}/

Überprüfen Sie den Generierungsstatus

Umfrage zum Status einer Wan 2.6-Videogeneration.

Antwort wird verarbeitet

{
  "success": true,
  "status": "processing",
  "message": "Video is being generated..."
}

Antwort abgeschlossen

{
  "success": true,
  "status": "completed",
  "video_url": "https://cdn.example.com/videos/result.mp4",
  "all_urls": ["https://cdn.example.com/videos/result.mp4"]
}

Fehlgeschlagene Antwort

{
  "success": true,
  "status": "failed",
  "error": "Content policy violation detected"
}

💰 Kreditpreise

Dauer 720p 1080p
5 Sekunden 70 Credits 105 Credits
10 Sekunden 140 Credits 210 Credits
15 Sekunden 210 Credits 315 Credits

Die Preise gelten für alle Modi (T2V, I2V, V2V). Fehlgeschlagene Generationen werden automatisch erstattet.

📝 Codebeispiele

Python

import requests
import time

API_KEY = "your_api_key"
BASE_URL = "https://ulazai.com"

# Video generieren (Text-to-Video)
response = requests.post(
    f"{BASE_URL}/wan26/generate/",
    headers={
        "Authorization": f"Bearer {API_KEY}",
        "Content-Type": "application/json"
    },
    json={
        "prompt": "A cinematic shot of a woman walking through Tokyo at night",
        "mode": "text-to-video",
        "duration": "5",
        "resolution": "1080p"
    }
)
Ergebnis = Antwort.json()
generation_id = result["generation_id"]

# Statusumfrage
while True:
    status_response = requests.get(
        f"{BASE_URL}/wan26/status/{generation_id}/",
        headers={"Authorization": f"Bearer {API_KEY}"}
    )
    status = status_response.json()
    
    if status["status"] == "abgeschlossen":
        print(f"Video bereit: {status['video_url']}")
        break
    elif status["status"] == "fehlgeschlagen":
        print(f"Fehlgeschlagen: {status['error']}")
        break
    
    time.sleep(5)

cURL

# Video generieren
curl -X POST "https://ulazai.com/wan26/generate/" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A cinematic shot of a woman walking through Tokyo at night",
    "mode": "text-to-video",
    "duration": "5",
    "resolution": "1080p"
  }'

# Status prüfen
curl "https://ulazai.com/wan26/status/GENERATION_ID/" \
  -H "Authorization: Bearer YOUR_API_KEY"