## Basic tool info Tool name: wiroai/Melting-Effect Tool description: Wan2.1 Melting Effect LoRA Tool cover: https://cdn.wiro.ai/uploads/models/wiroai-Melting-Effect-cover.mp4 Tool categories: - model - persistent - image-to-video - h100 - lora-wan2.1 - checkpoint-file - compare-landscape Tool tags: - concept - decay - wan - wan2.1 - decompose Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/wiroai/Melting-Effect Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Tool Inputs: - name: inputImageUrl label: input-image-url help: input-image-url-help type: text default: - name: prompt label: prompt help: prompt-help type: textarea default: m3lt1ng, A shiny red lipstick stands upright against a dazzling backdrop of colorful, out-of-focus lights in red, green, and gold. The smooth, sculpted tip begins to soften and melt — glistening red wax slowly droops and slides down the metallic tube in glossy rivulets. As the lipstick deforms, the chrome casing catches reflections of the swirling lights, enhancing the surreal, vivid effect. The transformation is hypnotic and sensual, blending glamour with a touch of dreamy distortion. - name: negativePrompt label: negativePrompt help: Specify what to exclude from the output. type: textarea default: Bad quality, blurry - name: fps label: fps help: Frames Per Second type: number default: 16 - name: width label: width help: width-help type: number default: 0 - name: height label: height help: height-help type: number default: 0 - name: numFrames label: Number of Frames help: How many frames to sample from a image or video. The number should be 4n+1. type: number default: 81 - name: steps label: inferencesteps help: inferencesteps-help type: number default: 25 - name: scale label: guidancescale help: guidancescale-help type: float default: 5 - name: flowShift label: Flow Shift help: Adjust timing or order of processing. type: float default: 5.0 ## Tool Parameter Inspires: - steps: 25 - scale: 5 - prompt: m3lt1ng, A shiny red lipstick stands upright against a dazzling backdrop of colorful, out-of-focus lights in red, green, and gold. The smooth, sculpted tip begins to soften and melt — glistening red wax slowly droops and slides down the metallic tube in glossy rivulets. As the lipstick deforms, the chrome casing catches reflections of the swirling lights, enhancing the surreal, vivid effect. The transformation is hypnotic and sensual, blending glamour with a touch of dreamy distortion. - negativePrompt: Bad quality - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/wan2.1_melting_effect_lipstick.png - prompt: A sleek blue BMW stands under bright daylight on a glossy asphalt surface, its curves and chrome details gleaming vividly. Suddenly, the body of the car begins to melt, paint dripping downward in smooth, liquid streams. The metal panels sag and distort as if made of soft wax, while the glass warps and slumps. The melting accelerates until the entire vehicle collapses into a shimmering pool of blue and silver liquid. The camera captures the surreal transformation in one continuous, fluid motion. - negativePrompt: bad quality, low detail, unrealistic melting, choppy motion - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/wiroai_melting_effect_input_2.jpg - prompt: A classic Rubik’s Cube rests on a smooth surface. The vibrant, glossy tiles begin to soften and melt — rich streams of color slowly droop and slide down the cube’s edges in glistening rivulets. As the cube deforms, its glossy plastic surfaces catch and reflect the swirling lights, creating a surreal, vivid spectacle. The transformation is mesmerizing, blending playful nostalgia with a dreamy, distorted elegance. - negativePrompt: bad quality, low detail, unnatural breaking, blurry debris - inputImage: https://cdn.wiro.ai/uploads/sampleinputs/wiroai_melting_effect_input_1.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/wiroai/Melting-Effect" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "inputImageUrl": "wan2.1_melting_effect_lipstick.png", "prompt": "m3lt1ng, A shiny red lipstick stands upright against a dazzling backdrop of colorful, out-of-focus lights in red, green, and gold. The smooth, sculpted tip begins to soften and melt — glistening red wax slowly droops and slides down the metallic tube in glossy rivulets. As the lipstick deforms, the chrome casing catches reflections of the swirling lights, enhancing the surreal, vivid effect. The transformation is hypnotic and sensual, blending glamour with a touch of dreamy distortion.", "negativePrompt": "Bad quality, blurry", "fps": 16, "width": 0, "height": 0, "numFrames": 81, "steps": 25, "scale": "5", "flowShift": "5.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.