## Basic tool info Model name: tencent/HunyuanVideo-1.5-i2v Model description: Tencent HunyuanVideo-1.5-i2v animates one reference image into a prompt-guided video clip with coherent motion, 480p–1080p presets, and reproducible seeds. Model cover: https://cdn.wiro.ai/uploads/models/tencent-hunyuanvideo-1-5-i2v-cover.mp4 Model categories: - persistent - model - text-to-video - H200 Model tags: - video - edit Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/tencent/hunyuanvideo-1-5-i2v Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Model Inputs: - name: inputImage label: Input Image help: First frame of the video type: combinefileinput default: tencent-hunyuan-video-1-5-i2v-input-1.jpg - name: prompt label: prompt help: The prompt to generate the video from. type: textarea default: A slow, cinematic drone push-in shot towards a massive, rusted shipwreck listing heavily in turquoise waters. Gentle ocean waves continually roll and crash softly against the layered, sunlit rocky shoreline in the right foreground and lap against the ship's deteriorating metal hull. Small whitecaps and sea foam form dynamically as the water meets the shore. Bright, clear daytime lighting with a pristine blue sky, highly detailed water ripples, hyper-realistic, 24fps, 4k resolution. - name: negativePrompt label: negativeprompt help: Specify what to exclude from the output. type: textarea default: - name: resolution label: Resolution help: Output resolution preset. Picks the transformer + super-resolution combo for you: 480p (native distilled, fastest), 720p (native distilled, recommended). type: select default: 480p options: - value: "480p" label: 480p - value: "720p" label: 720p - name: steps label: inferencesteps help: inferencesteps-help type: number default: 50 - name: videoLength label: Video Length help: Total frames to generate. Must follow upstream's 4n+1 frame-count constraint. type: number default: 121 - name: seed label: seed help: seed-help type: text default: 0 ## Model Parameter Inspires: - prompt: A slow, cinematic drone push-in shot towards a massive, rusted shipwreck listing heavily in turquoise waters. Gentle ocean waves continually roll and crash softly against the layered, sunlit rocky shoreline in the right foreground and lap against the ship's deteriorating metal hull. Small whitecaps and sea foam form dynamically as the water meets the shore. Bright, clear daytime lighting with a pristine blue sky, highly detailed water ripples, hyper-realistic, 24fps, 4k resolution. - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/tencent-hunyuan-video-1-5-i2v-input-1.jpg - prompt: A majestic whale completes a deep dive, its massive dark tail slipping smoothly beneath the dark, choppy ocean surface. White water cascades gracefully off the edges of the flukes as they disappear into the depths, leaving a swirling footprint of foam behind. Slow, steady telephoto shot from a boat's perspective, maintaining focus on the center of the splash. Massive, imposing, rugged rocky mountains loom in the background under a slightly hazy blue sky with soft, streaky clouds. Natural lighting, realistic water physics and ocean swells, 60fps slow-motion, National Geographic documentary style, ultra-detailed, 4k resolution. - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/tencent-hunyuan-video-1-5-i2v-input-2.jpg - prompt: A slow, steady tracking shot from behind following a small group of mountaineers trekking in single file up a steep, pristine snow-covered mountain slope. The hikers, dressed in vibrant red, blue, and dark winter gear and using trekking poles, trudge rhythmically along the packed snow trail. Intense, low-angle golden hour sunlight strikes from the left, illuminating the textured snow with warm hues and casting long, dramatic, stretching blue shadows of the figures across the slope to the right. The clear, gradient blue sky creates a stark contrast against the glowing white and rocky mountain peak ahead. Crisp, cold cinematic atmosphere, hyper-realistic, 24fps, 4k resolution. - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/tencent-hunyuan-video-1-5-i2v-input-3.jpg - prompt: A smooth, cinematic tracking shot moving parallel with a man in a light beige trench coat and maroon fedora as he walks briskly along a polished subway platform. Beside him, a vibrant teal subway train stands idle with its doors open, revealing warmly lit interiors and passengers settling in. Other commuters walk dynamically in the background. Overhead fluorescent lights create sharp, leading-line reflections on the glossy, geometric tiled floor. Urban cinematic atmosphere, moody color grading contrasting the cool teal exterior with warm ambient lights, sharp focus on the central walking figure, 24fps, hyper-realistic, 4k resolution. - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/tencent-hunyuan-video-1-5-i2v-input-4.jpg ## 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/tencent/hunyuanvideo-1-5-i2v" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "inputImage": "tencent-hunyuan-video-1-5-i2v-input-1.jpg", "prompt": "A slow, cinematic drone push-in shot towards a massive, rusted shipwreck listing heavily in turquoise waters. Gentle ocean waves continually roll and crash softly against the layered, sunlit rocky shoreline in the right foreground and lap against the ship's deteriorating metal hull. Small whitecaps and sea foam form dynamically as the water meets the shore. Bright, clear daytime lighting with a pristine blue sky, highly detailed water ripples, hyper-realistic, 24fps, 4k resolution.", "negativePrompt": "", "resolution": "480p", "steps": 50, "videoLength": 121, "seed": "0", "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.