Hoppa till huvudinnehåll
Detta dokument kommer att introducera en Wan Videos Generation API integrationsbeskrivning, som kan generera officiella videor av Tongyi Wanxiang genom att ange anpassade parametrar.

Ansökningsprocess

För att använda API:et måste du först gå till Wan Videos Generation API motsvarande sida för att ansöka om den tjänst som behövs. När du kommer till sidan, klicka på “Acquire”-knappen, som visas i bilden nedan: Om du inte har loggat in eller registrerat dig kommer du automatiskt att omdirigeras till inloggningssidan för att registrera dig och logga in. Efter inloggning och registrering kommer du automatiskt att återvända till den aktuella sidan. Vid första ansökan kommer det att finnas en gratis kvot som kan användas för att gratis använda detta API.

Grundläggande användning

Först och främst, förstå den grundläggande användningsmetoden, vilket innebär att ange prompt prompt, genereringsåtgärd action, första bildreferensbild image_url samt modell model, för att få det bearbetade resultatet. Först behöver vi enkelt överföra ett action-fält, vars värde är text2video. Det innehåller huvudsakligen två typer av åtgärder: text till video (text2video), bild till video (image2video). Sedan behöver vi också ange modellen model, som för närvarande huvudsakligen inkluderar wan2.6-i2v, wan2.6-r2v, wan2.6-i2v-flash, wan2.6-t2v, med specifikt innehåll som följer:

Här kan vi se att vi har ställt in Request Headers, inklusive:
  • accept: vilken format av svar vi vill ta emot, här anges som application/json, det vill säga JSON-format.
  • authorization: nyckeln för att anropa API:et, som kan väljas direkt efter ansökan.
Dessutom har vi ställt in Request Body, inklusive:
  • model: modellen för att generera videon, huvudsakligen wan2.6-i2v, wan2.6-r2v, wan2.6-i2v-flash, wan2.6-t2v.
  • action: åtgärden för denna videogenereringsuppgift, som huvudsakligen innehåller tre typer av åtgärder: text till video (text2video), bild till video (image2video). När det är text till video stöds för närvarande endast modellen wan2.6-t2v, och när det är bild till video stöds för närvarande modellerna wan2.6-i2v, wan2.6-r2v, wan2.6-i2v-flash.
  • image_url: när bild till video-åtgärden image2video väljs måste en länk till den första bildreferensbilden laddas upp, för närvarande stöds endast modellerna wan2.6-i2v, wan2.6-i2v-flash.
  • reference_video_urls: valfritt vid bild till video, anger referensvideolänkar för generering, för närvarande stöds endast modellen wan2.6-r2v.
  • size: anger upplösningen för den genererade videon, formatet är bredd*höjd. Standardvärdet och tillgängliga enum-värden beror på model-parametern, specifika regler kan refereras till officiell dokumentation.
  • duration: längden på den genererade videon, stöder huvudsakligen 5, 10, 15.
  • shot_type: valfritt, anger typen av videoklipp som ska genereras, det vill säga om videon består av ett kontinuerligt klipp eller flera växlingsklipp. Gäller endast när “prompt_extend”: true. Parameterprioritet: shot_type > prompt. Till exempel, om shot_type sätts till “single”, kommer modellen fortfarande att producera en enkelklippvideo även om prompten innehåller “generera flervideoklipp”, specifika regler kan refereras till officiell dokumentation.
  • negative_prompt: valfritt, omvända promptord, används för att beskriva innehåll som inte önskas i videobilden, kan begränsa videobilden. Stöder både kinesiska och engelska, längden får inte överstiga 500 tecken, överskjutande del kommer automatiskt att trunkeras. Exempelvärden: låg upplösning, fel, sämsta kvalitet, låg kvalitet, bristfällig, överflödiga fingrar, dålig proportion etc.
  • resolution: anger nivån för den genererade videons upplösning, används för att justera videons skärpa (totala pixlar). Modellen kommer att automatiskt skala till nära totala pixlar baserat på den valda upplösningsnivån, videons bildförhållande kommer att försöka hålla sig i linje med bildförhållandet för den inmatade bilden img_url, mer information finns i officiell dokumentation.
  • audio_url: URL för ljudfilen, modellen kommer att använda detta ljud för att generera videon. Användningsmetod refereras till officiell dokumentation.
  • audio: om en ljudvideo ska genereras. Parameterprioritet: audio > audio_url. När audio=false, även om audio_url anges, kommer utdata fortfarande att vara en ljudlös video, och debiteringen beräknas som en ljudlös video, standardvärdet är true.
  • prompt_extend: om prompt intelligent omskrivning ska aktiveras. När det är aktiverat används en stor modell för att intelligent omskriva den inmatade prompten. För kortare promptar förbättras genereringseffekten avsevärt, men det kommer att öka tiden, standardvärdet är true.
  • prompt: promptord.
  • callback_url: URL för att få tillbaka resultatet.
När du har valt kan du se att motsvarande kod också genererades till höger, som visas i bilden nedan:

Klicka på “Try”-knappen för att testa, som visas i bilden ovan, här får vi följande resultat:
{
  "success": true,
  "video_url": "https://dashscope-result-sh.oss-accelerate.aliyuncs.com/1d/db/20260124/da477ba2/0d2042f9-ba8d-496d-8ab5-182617e28f9e.mp4?Expires=1769349278&OSSAccessKeyId=LTAI5tKPD3TMqf2Lna1fASuh&Signature=SjBa4wRcDVx3SSYu/x7BYCFQk0s=",
  "state": "completed",
  "task_id": "a4bca552-d964-46a1-8ff7-fd922f916582"
}
Det returnerade resultatet har flera fält, som beskrivs nedan:
  • success, statusen för videogenereringsuppgiften.
  • task_id, ID för videogenereringsuppgiften.
  • video_url, videolänken för videogenereringsuppgiften.
  • state, statusen för videogenereringsuppgiften.
Vi kan se att vi har fått tillfredsställande videoinformation, vi behöver bara hämta den genererade Tongyi Wanxiang-videon baserat på videolänken video_url i resultatet. Om du vill generera motsvarande integrationskod kan du direkt kopiera den som till exempel CURL-koden nedan:
curl -X POST 'https://api.acedata.cloud/wan/videos' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "action": "text2video",
  "model": "wan2.6-t2v",
  "prompt": "Astronauts shuttle from space to volcano",
  "duration": 5
}'

Bild till video-funktion

Om du vill generera en video baserat på en referensbild eller referensvideo kan du ställa in parametern action till image2video, och ange länken till den referensbild eller referensvideo som behövs. Nästa steg är att fylla i de promptord som behövs för att anpassa den genererade videon, och du kan specificera följande innehåll:
  • model: Modellen för att generera videon, huvudsakligen wan2.6-i2v, wan2.6-r2v, wan2.6-i2v-flash, wan2.6-t2v.
  • image_url: När du väljer att generera video från bild image2video måste du ladda upp länken till den första referensbilden, för närvarande stöds endast modellerna wan2.6-i2v, wan2.6-i2v-flash.
  • reference_video_urls: Valfritt när du genererar video från bild, specificera länken till referensvideon för att generera, för närvarande stöds endast modellen wan2.6-r2v.
  • prompt: Promptord.
Exempel på ifyllning:

När du har fyllt i det genereras automatiskt koden nedan:

Motsvarande Python-kod:
import requests

url = "https://api.acedata.cloud/wan/videos"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "image2video",
    "model": "wan2.6-i2v",
    "prompt": "Astronauts shuttle from space to volcano",
    "duration": 5,
    "image_url": "https://cdn.acedata.cloud/r9vsv9.png",
    "callback_url": "https://www.baidu.com/"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
När du klickar på kör kan du se att du får ett resultat som nedan:
{
  "success": true,
  "video_url": "https://dashscope-result-sh.oss-accelerate.aliyuncs.com/1d/db/20260124/da477ba2/0d2042f9-ba8d-496d-8ab5-182617e28f9e.mp4?Expires=1769349278&OSSAccessKeyId=LTAI5tKPD3TMqf2Lna1fASuh&Signature=SjBa4wRcDVx3SSYu/x7BYCFQk0s=",
  "state": "completed",
  "task_id": "a4bca552-d964-46a1-8ff7-fd922f916582"
}
Det kan ses att resultatinnehållet är i linje med ovanstående, vilket också uppnår videoutvidgningsfunktionen.

Asynkron callback

Eftersom Wan Videos Generation API:s genereringstid är relativt lång, cirka 1-2 minuter, om API:n inte svarar under en längre tid kommer HTTP-förfrågan att hålla anslutningen öppen, vilket leder till extra systemresursförbrukning. Därför erbjuder denna API också stöd för asynkron callback. Den övergripande processen är: När klienten initierar en begäran, specificera ett extra callback_url-fält, efter att klienten har initierat API-begäran kommer API:n omedelbart att returnera ett resultat som innehåller ett task_id-fält, vilket representerar det aktuella uppdragets ID. När uppdraget är slutfört kommer resultatet av den genererade videon att skickas till klientens angivna callback_url i POST JSON-format, vilket också inkluderar task_id-fältet, så att uppdragets resultat kan kopplas samman med ID. Låt oss förstå hur man gör detta genom ett exempel. Först är Webhook-callback en tjänst som kan ta emot HTTP-förfrågningar, utvecklare bör ersätta med URL:en till sin egen byggda HTTP-server. Här för att underlätta demonstration använder vi en offentlig Webhook-exempelsida https://webhook.site/, öppna denna webbplats för att få en Webhook-URL, som visas i bilden: Kopiera denna URL så kan den användas som Webhook, exemplet här är https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3. Därefter kan vi ställa in fältet callback_url till ovanstående Webhook-URL, samtidigt som vi fyller i motsvarande parametrar, det specifika innehållet visas i bilden:

När du klickar på kör kan du se att du omedelbart får ett resultat som nedan:
{
  "task_id": "20068983-0cc9-4c6a-aeb6-9c6a3c668be0"
}
Vänta en stund, så kan vi observera resultatet av den genererade videon på https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3, som visas i bilden: Innehållet är som följer:
{
  "success": true,
  "video_url": "https://dashscope-result-sh.oss-accelerate.aliyuncs.com/1d/db/20260124/da477ba2/0d2042f9-ba8d-496d-8ab5-182617e28f9e.mp4?Expires=1769349278&OSSAccessKeyId=LTAI5tKPD3TMqf2Lna1fASuh&Signature=SjBa4wRcDVx3SSYu/x7BYCFQk0s=",
  "state": "completed",
  "task_id": "a4bca552-d964-46a1-8ff7-fd922f916582"
}
Det kan ses att resultatet innehåller ett task_id-fält, och de andra fälten liknar de ovan, genom detta fält kan uppdraget kopplas samman.

Felhantering

När du anropar API:n, om du stöter på fel, kommer API:n att returnera motsvarande felkod och information. Till exempel:
  • 400 token_mismatched: Bad request, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 400 api_not_implemented: Bad request, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 401 invalid_token: Obehörig, ogiltig eller saknad auktoriseringstoken.
  • 429 too_many_requests: För många förfrågningar, du har överskridit hastighetsgränsen.
  • 500 api_error: Intern serverfel, något gick fel på servern.

Exempel på felrespons

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

Slutsats

Genom detta dokument har du fått en förståelse för hur du använder Wan Videos Generation API för att generera videor genom att ange promptord och en referensbild som första bild. Vi hoppas att detta dokument kan hjälpa dig att bättre integrera och använda denna API. Om du har några frågor, tveka inte att kontakta vårt tekniska supportteam.