## Basic tool info Model name: alibaba/wan 2.6 Model description: Generates videos from text prompts or images using Alibaba's Wan 2.6 model. Supports multiple modes and customization options. Model cover: https://cdn.wiro.ai/uploads/models/alibaba-wan-2-6-cover.webp Model categories: - tool - partner - text-to-video - image-to-video - reference-to-video - alibaba - nogpu-pipeline Model tags: - video generator - alibaba Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/alibaba/wan-2-6 Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Model Inputs: - name: mode label: Mode help: Required. t2v model does not have std or pro mode type: select default: std options: - value: "std" label: std - value: "pro" label: pro - name: inputImage label: Image help: Optional. If image is provided ratio will be determined by the model. type: combinefileinput default: alibaba-wan-26-input-2.jpg - name: prompt label: prompt help: The prompt to generate the video. type: textarea default: Cinematic documentary style, National Geographic aesthetic, hyper-realistic, high contrast lighting. Single Continuous Shot: A slow, steady aerial drone push-in moving up the razor-sharp ridge of a massive, towering orange sand dune. The dune is starkly divided by bright sunlight on the right and deep shadow on the left. A long, winding line of tiny explorers slowly treks up the sunlit edge. As the camera smoothly glides forward and upward, the hikers continuously struggle against the incline, their boots sinking deep into the soft sand. High desert winds visibly whip fine, shimmering streams of sand off the sharp crest of the dune into the air. Audio: The constant, deep howling of sweeping desert winds and the rhythmic, heavy crunching of boots dragging through deep sand. - name: negativePrompt label: Negative Prompt help: Specify what to exclude from the output. type: textarea default: - name: inputAudio label: Audio help: Optional. r2v model does not accept audio file. If provided audioEnabled will be true by default type: combinefileinput default: - name: inputImage2 label: References help: Optional. For r2v only. Provide reference images to extract character appearance and voice. Limits: 0-5 images. Order matters: first = character1, second = character2, etc. Each file must contain only one main character. Each reference file must contain only one main character. For example, character1 is a little girl, and character2 is an alarm clock. type: combinefileinput default: - name: audioEnabled label: Enabled Audio help: Optional. If mode is pro, it will be set to true by default. Only allowed in image to video generation. type: select default: false options: - value: "false" label: false - value: "true" label: true - name: duration label: Duration help: Required. Total duration of the generated video (in seconds) type: number default: 5 - name: resolution label: Resolution help: Required. Quality tier for the generated video. type: select default: 1080P options: - value: "720P" label: 720P - value: "1080P" label: 1080P - name: ratio label: Ratio help: Required for text to video and reference to video. If image is provided this will not take effect, model will try to match the closest ratio. type: select default: 16:9 options: - value: "16:9" label: 16:9 - value: "9:16" label: 9:16 - value: "1:1" label: 1:1 - value: "4:3" label: 4:3 - value: "3:4" label: 3:4 - name: shotType label: Shot Type help: Enable multi-shot video generation. type: select default: single options: - value: "single" label: single - value: "multi" label: multi - name: promptExtend label: Prompt Extend help: Optional. Required to be true if Multi Shot is enabled for i2v/t2v. Not used for r2v. type: select default: false options: - value: "false" label: false - value: "true" label: true - name: watermark label: Watermark help: Optional. Add 'AI Generated' watermark in the lower-right corner. type: select default: false options: - value: "false" label: false - value: "true" label: true - name: seed label: Seed help: Optional. Random seed for reproducibility (0-21474836). type: number default: ## Integration Header Prepare ```bash # Sign up Wiro dashboard and create project export YOUR_API_KEY="{{useSelectedProjectAPIKey}}"; export YOUR_API_SECRET="XXXXXXXXX"; # unix time or any random integer value export NONCE=$(date +%s); # hmac-SHA256 (YOUR_API_SECRET+Nonce) with YOUR_API_KEY export SIGNATURE="$(echo -n "${YOUR_API_SECRET}${NONCE}" | openssl dgst -sha256 -hmac "${YOUR_API_KEY}")"; ``` ## Run Command - Make HTTP Post Request ```bash curl -X POST "https://api.wiro.ai/v1/Run/alibaba/wan-2-6" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "mode": "std", "inputImage": "alibaba-wan-26-input-2.jpg", "prompt": "Cinematic documentary style, National Geographic aesthetic, hyper-realistic, high contrast lighting. Single Continuous Shot: A slow, steady aerial drone push-in moving up the razor-sharp ridge of a massive, towering orange sand dune. The dune is starkly divided by bright sunlight on the right and deep shadow on the left. A long, winding line of tiny explorers slowly treks up the sunlit edge. As the camera smoothly glides forward and upward, the hikers continuously struggle against the incline, their boots sinking deep into the soft sand. High desert winds visibly whip fine, shimmering streams of sand off the sharp crest of the dune into the air. Audio: The constant, deep howling of sweeping desert winds and the rhythmic, heavy crunching of boots dragging through deep sand.", "negativePrompt": "", "inputAudio": "", "inputImage2": "", "audioEnabled": "false", "duration": 5, "resolution": "1080P", "ratio": "16:9", "shotType": "single", "promptExtend": "false", "watermark": "false", "seed": null, "callbackUrl": "You can provide a callback URL; Wiro will send a POST request to it when the task is completed." }'; ``` ## Run Command - Response ```json { "errors": [], "taskid": "2221", "socketaccesstoken": "eDcCm5yyUfIvMFspTwww49OUfgXkQt", "result": true } ``` ## Get Task Detail - Make HTTP Post Request with Task ID ```bash curl -X POST "https://api.wiro.ai/v1/Task/Detail" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "taskid": "2221" }'; ``` ## Get Task Detail - Make HTTP Post Request with Socket Access Token ```bash curl -X POST "https://api.wiro.ai/v1/Task/Detail" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "tasktoken": "eDcCm5yyUfIvMFspTwww49OUfgXkQt" }'; ``` ## Get Task Detail - Response ```json { "total": "1", "errors": [], "tasklist": [ { "id": "2221", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "socketaccesstoken": "eDcCm5yyUfIvMFspTwww49OUfgXkQt", "parameters": {}, "debugoutput": "", "debugerror": "", "starttime": "1734513809", "endtime": "1734513813", "elapsedseconds": "6.0000", "status": "task_postprocess_end", "createtime": "1734513807", "canceltime": "0", "assigntime": "1734513807", "accepttime": "1734513807", "preprocessstarttime": "1734513807", "preprocessendtime": "1734513807", "postprocessstarttime": "1734513813", "postprocessendtime": "1734513814", "outputs": [ { "id": "6bc392c93856dfce3a7d1b4261e15af3", "name": "0.png", "contenttype": "image/png", "parentid": "6c1833f39da71e6175bf292b18779baf", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "size": "202472", "addedtime": "1734513812", "modifiedtime": "1734513812", "accesskey": "dFKlMApaSgMeHKsJyaDeKrefcHahUK", "url": "https://cdn1.wiro.ai/6a6af820-c5050aee-40bd7b83-a2e186c6-7f61f7da-3894e49c-fc0eeb66-9b500fe2/0.png" } ], "size": "202472" } ], "result": true } ``` ## Kill Task - Make HTTP Post Request with Task ID ```bash curl -X POST "https://api.wiro.ai/v1/Task/Kill" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "taskid": "534574" }'; ``` ## Kill Task - Make HTTP Post Request with Socket Access Token ```bash curl -X POST "https://api.wiro.ai/v1/Task/Kill" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "socketaccesstoken": "ZpYote30on42O4jjHXNiKmrWAZqbRE" }'; ``` ## Kill Task - Response ```json { "errors": [], "tasklist": [ { "id": "534574", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "name": "", "socketaccesstoken": "ZpYote30on42O4jjHXNiKmrWAZqbRE", "parameters": { "inputImage": "https://api.wiro.ai/v1/File/mCmUXgZLG1FNjjjwmbtPFr2LVJA112/inputImage-6060136.png" }, "debugoutput": "", "debugerror": "", "starttime": "1734513809", "endtime": "1734513813", "elapsedseconds": "6.0000", "status": "task_cancel", "cps": "0.000585000000", "totalcost": "0.003510000000", "guestid": null, "projectid": "699", "modelid": "598", "description": "", "basemodelid": "0", "runtype": "model", "modelfolderid": "", "modelfileid": "", "callbackurl": "", "marketplaceid": null, "createtime": "1734513807", "canceltime": "0", "assigntime": "1734513807", "accepttime": "1734513807", "preprocessstarttime": "1734513807", "preprocessendtime": "1734513807", "postprocessstarttime": "1734513813", "postprocessendtime": "1734513814", "pexit": "0", "categories": "["tool","image-to-image","quick-showcase","compare-landscape"]", "outputs": [ { "id": "6bc392c93856dfce3a7d1b4261e15af3", "name": "0.png", "contenttype": "image/png", "parentid": "6c1833f39da71e6175bf292b18779baf", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "size": "202472", "addedtime": "1734513812", "modifiedtime": "1734513812", "accesskey": "dFKlMApaSgMeHKsJyaDeKrefcHahUK", "foldercount": "0", "filecount": "0", "ispublic": 0, "expiretime": null, "url": "https://cdn1.wiro.ai/6a6af820-c5050aee-40bd7b83-a2e186c6-7f61f7da-3894e49c-fc0eeb66-9b500fe2/0.png" } ], "size": "202472" } ], "result": true } ``` ## Cancel Task - Make HTTP Post Request (For tasks on queue) ```bash curl -X POST "https://api.wiro.ai/v1/Task/Cancel" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "taskid": "634574" }'; ``` ## Cancel Task - Response ```json { "errors": [], "tasklist": [ { "id": "634574", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "name": "", "socketaccesstoken": "ZpYote30on42O4jjHXNiKmrWAZqbRE", "parameters": { "inputImage": "https://api.wiro.ai/v1/File/mCmUXgZLG1FNjjjwmbtPFr2LVJA112/inputImage-6060136.png" }, "debugoutput": "", "debugerror": "", "starttime": "1734513809", "endtime": "1734513813", "elapsedseconds": "6.0000", "status": "task_cancel", "cps": "0.000585000000", "totalcost": "0.003510000000", "guestid": null, "projectid": "699", "modelid": "598", "description": "", "basemodelid": "0", "runtype": "model", "modelfolderid": "", "modelfileid": "", "callbackurl": "", "marketplaceid": null, "createtime": "1734513807", "canceltime": "0", "assigntime": "1734513807", "accepttime": "1734513807", "preprocessstarttime": "1734513807", "preprocessendtime": "1734513807", "postprocessstarttime": "1734513813", "postprocessendtime": "1734513814", "pexit": "0", "categories": "["tool","image-to-image","quick-showcase","compare-landscape"]", "outputs": [ { "id": "6bc392c93856dfce3a7d1b4261e15af3", "name": "0.png", "contenttype": "image/png", "parentid": "6c1833f39da71e6175bf292b18779baf", "uuid": "15bce51f-442f-4f44-a71d-13c6374a62bd", "size": "202472", "addedtime": "1734513812", "modifiedtime": "1734513812", "accesskey": "dFKlMApaSgMeHKsJyaDeKrefcHahUK", "foldercount": "0", "filecount": "0", "ispublic": 0, "expiretime": null, "url": "https://cdn1.wiro.ai/6a6af820-c5050aee-40bd7b83-a2e186c6-7f61f7da-3894e49c-fc0eeb66-9b500fe2/0.png" } ], "size": "202472" } ], "result": true } ``` ## Task Status Information This section defines the possible task status values returned by the API when polling for task completion. ### Completed Task Statuses (Polling can stop) These indicate that the task has reached a terminal state — either success or failure. Once any of these is received, polling should stop. - task_postprocess_end : Task completed successfully and post-processing is done. - task_cancel : Task was cancelled by the user or system. ### Running Task Statuses (Continue polling) These statuses indicate that the task is still in progress. Polling should continue if one of these is returned. - task_queue : Task is waiting in the queue. - task_accept : Task has been accepted for processing. - task_assign : Task is being assigned to a worker. - task_preprocess_start : Preprocessing is starting. - task_preprocess_end : Preprocessing is complete. - task_start : Task execution has started. - task_output : Output is being generated.