## Basic tool info Tool name: wiro/instant-id-controlnet Tool description: InstantID is a method to achieve ID-preserving generation with only single image. Alternatively, it can take an image to control the pose of the output. Tool cover: https://cdn.wiro.ai/uploads/models/wiro-instant-id-pose-cover.png Tool categories: - tool - image-to-image - persistent Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/wiro/instant-id-controlnet Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Tool Inputs: - name: selectedModel label: select-model help: select-model-help type: select default: "79" options: - value: "1291" label: Adel_AI/Pixel-Ahuskay-v3 description: Pixel Ahuskay v3 triggerwords: [] generatesettings: [] - value: "1201" label: King_Hatchet/SereneXL description: SereneXL triggerwords: [] generatesettings: [] - value: "1107" label: advokat/5DN-Hyperdetailed description: 5DN Hyperdetailed triggerwords: [] generatesettings: [] - value: "1097" label: Coolreal/PureRealism-Mix-XL description: PureRealism Mix XL triggerwords: [] generatesettings: [] - value: "1096" label: mastertouch711/NaturaLust description: NaturaLust triggerwords: [] generatesettings: [] - value: "1095" label: terrariumbuilder497/AdeptSDXL description: AdeptSDXL triggerwords: [] generatesettings: [] - value: "1094" label: Raxephion/Tornado description: Tornado triggerwords: [] generatesettings: [] - value: "1089" label: joebowersphotography/Halcyon-SDXL-Photorealism description: Halcyon SDXL - Photorealism triggerwords: [] generatesettings: [] - value: "1088" label: PromptSharingSamaritan/Samaritan-CGI description: Samaritan CGI triggerwords: [] generatesettings: [] - value: "1082" label: PromptSharingSamaritan/Samaritan-3d-Cartoon description: Samaritan 3d Cartoon triggerwords: [] generatesettings: [] - value: "1079" label: ThinkDiffusion/ThinkDiffusionXL description: ThinkDiffusionXL triggerwords: [] generatesettings: [] - value: "1067" label: Adel_AI/Pixel-Alchemy description: Pixel Alchemy triggerwords: [] generatesettings: [] - value: "1066" label: JoeLink/WestRealistic-XL description: WestRealistic XL triggerwords: [] generatesettings: [] - value: "1061" label: galaxytimemachine/GalaxyTimeMachines-GTM-XLPlus description: GalaxyTimeMachine's GTM "XLPlus" triggerwords: [] generatesettings: [] - value: "1059" label: DarkBadBoy/NexusVisionXL description: NexusVisionXL triggerwords: [] generatesettings: [] - value: "1054" label: Splashed/Splashed-Mix-DMD description: Splashed Mix DMD triggerwords: [] generatesettings: [] - value: "1053" label: Splashed/Deep-Splashed-Something description: Deep Splashed Something triggerwords: [] generatesettings: [] - value: "1052" label: Splashed/Splashed-Journey description: Splashed Journey triggerwords: [] generatesettings: [] - value: "1049" label: Magenttta/Purple-XL-Anime description: Purple XL (Anime) triggerwords: [] generatesettings: [] - value: "1048" label: Magenttta/Fuchsia-XL description: Fuchsia XL triggerwords: [] generatesettings: [] - value: "1009" label: epiTune/chirps description: chirps triggerwords: [] generatesettings: [] - value: "1008" label: SLACK69/SLACK-ultra-real-XL-merge description: SLACK ultra real XL merge triggerwords: [] generatesettings: [] - value: "1007" label: Dark_infinity/Deep-Dark-Anime description: Deep Dark Anime triggerwords: [] generatesettings: [] - value: "999" label: 7whitefire7/RealCartoon-XL description: RealCartoon-XL triggerwords: [] generatesettings: [] - value: "995" label: Dark_infinity/Suzannes-XL-Mix description: Suzanne's XL Mix triggerwords: [] generatesettings: [] - value: "990" label: J1B/Jib-Mix-Artful description: Jib Mix Artful triggerwords: [] generatesettings: [] - value: "989" label: J1B/Jib-Mix-Realistic-XL description: Jib Mix Realistic XL triggerwords: [] generatesettings: [] - value: "984" label: socalguitarist/NightVisionXL description: NightVisionXL triggerwords: [] generatesettings: [] - value: "976" label: HorridWitch/OmnigenXL description: OmnigenXL triggerwords: [] generatesettings: [] - value: "975" label: StableDiffusionVN/SDVN6-RealXL description: SDVN6-RealXL triggerwords: [] generatesettings: [] - value: "966" label: StableDiffusionVN/SDVN7-NijiStyleXL description: SDVN7-NijiStyleXL triggerwords: ["niji style"] generatesettings: [] - value: "964" label: StableDiffusionVN/SDVN8-ArtXL description: SDVN8-ArtXL triggerwords: ["ghibli","sticker design","portrait art style","illustrator","horror style","anime style"] generatesettings: [] - value: "961" label: LEOSAM/HelloWorld-XL description: HelloWorld XL triggerwords: [] generatesettings: [] - value: "939" label: Zavy/ZavyChromaXL description: ZavyChromaXL triggerwords: [] generatesettings: [] - value: "927" label: Hevok/Endjourney-XL description: Endjourney XL triggerwords: [] generatesettings: [] - value: "924" label: martyn/sdxl-turbo-mario-merge-top-rated description: sdxl-turbo-mario-merge-top-rated triggerwords: [] generatesettings: [] - value: "904" label: Aurety/_MOHAWK_ description: _MOHAWK_ triggerwords: [] generatesettings: [] - value: "902" label: Aurety/_CHEYENNE_ description: _CHEYENNE_ triggerwords: [] generatesettings: [] - value: "900" label: sinatra/RDXL-SFW description: RDXL SFW triggerwords: [] generatesettings: [] - value: "899" label: sinatra/Real-Dream-SDXL-Classic description: Real Dream SDXL Classic triggerwords: [] generatesettings: [] - value: "880" label: SG_161222/RealVisXL-V5.0 description: RealVisXL V5.0 triggerwords: [] generatesettings: [] - value: "850" label: Lykon/DreamShaper-XL description: DreamShaper XL triggerwords: [] generatesettings: [] - value: "606" label: wangqixun/YamerMIX v8.0 description: An instruction-based image editing model SDXL. triggerwords: [] generatesettings: [] - value: "556" label: SG161222/RealVisXL_V4.0 description: An instruction-based image editing model SDXL. triggerwords: [] generatesettings: [] - value: "555" label: SG161222/RealVisXL_V3_0 description: An instruction-based image editing model SDXL. triggerwords: [] generatesettings: [] - value: "554" label: moxie1776/Moxie Diffusion XL v1.91 description: A text-to-image model trained on Stable Diffusion XL. triggerwords: [] generatesettings: [] - value: "425" label: KandooAI/Juggernaut v10.0 description: A text-to-image model trained on Stable Diffusion XL. triggerwords: [] generatesettings: [] - value: "422" label: braintacles/BriXL v5.0 description: BriXL is a fine-tuned model with a special focus on science fiction and cinematic vibes. Its imperfection is what makes it shine! It has been trained on a lot of my original content as well as cinematic materials. triggerwords: [] generatesettings: [] - value: "393" label: WarAnakin/Crystal Clear v1.0 description: A text-to-image model trained on Stable Diffusion XL. Whether you want realistic, 3D, semi-realistic, or cartoon-like images. triggerwords: [] generatesettings: [] - value: "390" label: PromptSharingSamaritan/Realistic Stock Photo v2.0 description: A text-to-image model trained on Stable Diffusion XL. triggerwords: [] generatesettings: [] - value: "389" label: Zavy/ZavyChromaXL v10.0 description: A text-to-image model trained on Stable Diffusion XL. triggerwords: [] generatesettings: [] - value: "388" label: RunDiffusion/RunDiffusion XL beta description: A text-to-image model trained on Stable Diffusion XL. triggerwords: [] generatesettings: [] - value: "79" label: stabilityai/stable-diffusion-xl-base-1.0 description: A text-to-image generative AI model that creates beautiful 1024x1024 images triggerwords: [] generatesettings: [] - name: selectedModelPrivate label: select-model-private help: select-model-private-help type: select default: "" options: - name: inputImageUrl label: input-image-url help: input-image-url-help type: text default: - name: selectedControlnetModel label: select-controlnet-model help: select-controlnet-model-help type: multiselect default: "454" options: - value: "458" label: thibaud/controlnet-openpose-sdxl-1.0 description: SDXL ControlNet is a neural network structure to control diffusion models by adding extra conditions. triggerwords: [] generatesettings: [{"type":"float","template":"","id":"controlnet-openpose-sdxl-1.0","placeholder":"controlnet-openpose-sdxl-1.0 scale","label":"controlnet-openpose-sdxl-1.0 scale","minvalue":"0.00","maxvalue":"1","value":"1.0","defaultvalue":"1.0","incrementby":"0.1","options":[],"note":""}] - value: "455" label: diffusers/controlnet-depth-sdxl-1.0 description: SDXL ControlNet is a neural network structure to control diffusion models by adding extra conditions. triggerwords: [] generatesettings: [{"type":"float","template":"","id":"controlnet-depth-sdxl-1.0","placeholder":"controlnet-depth-sdxl-1.0 scale","label":"controlnet-depth-sdxl-1.0 scale","minvalue":"0.00","maxvalue":"1","value":"1.0","defaultvalue":"1.0","incrementby":"0.1","options":[],"note":""}] - value: "454" label: diffusers/controlnet-canny-sdxl-1.0 description: SDXL ControlNet is a neural network structure to control diffusion models by adding extra conditions. triggerwords: [] generatesettings: [{"type":"float","template":"","id":"controlnet-canny-sdxl-1.0","placeholder":"controlnet-canny-sdxl-1.0 scale","label":"controlnet-canny-sdxl-1.0 scale","minvalue":"0.00","maxvalue":"1","value":"1.0","defaultvalue":"1.0","incrementby":"0.1","options":[],"note":""}] - name: prompt label: prompt help: prompt-help type: textarea default: olympic athlete, standing, wearing olympics uniform, Paris background, photorealistic, realistic, embodies the spirit of victory, captured by the official Olympic Games photographer 2024, the image is framed through photographer Steve McCurry, 2015, used a classic 50mm lens and illuminated by the brilliance of stadium floodlights, realistic - name: negativePrompt label: negativeprompt help: negativeprompt-help type: textarea default: (lowres, low quality, worst quality:1.2), (text:1.2), watermark, (frame:1.2), deformed, ugly, deformed eyes, blur, out of focus, blurry, mutation, mutated arms, deformed cat, deformed, photo, anthropomorphic cat, monochrome, photo, pet collar, gun, weapon, blue, 3d, drones, drone, buildings in background, green, nsfw - name: steps label: inferencesteps help: inferencesteps-help type: number default: 20 - name: scale label: guidancescale help: guidancescale-help type: float default: 5.0 - name: ip_adapter_scale label: ip_adapter_scale help: guidancescale-help type: float default: 0.8 - name: samples label: samples help: guidancescale-help type: number default: 1 - name: seed label: seed help: seed-help type: text default: 3572004920 - name: scheduler label: scheduler help: scheduler-help type: select default: DDIMScheduler options: - value: "FlowMatchEulerDiscreteScheduler" label: FlowMatchEulerDiscreteScheduler - value: "EulerDiscreteScheduler" label: EulerDiscreteScheduler - value: "DDIMScheduler" label: DDIMScheduler - value: "LMSDiscreteScheduler" label: LMSDiscreteScheduler - value: "DPMSolverMultistepScheduler" label: DPMSolverMultistepScheduler - value: "EulerDiscreteScheduler" label: EulerDiscreteScheduler - value: "PNDMScheduler" label: PNDMScheduler - value: "DDPMScheduler" label: DDPMScheduler - value: "EulerAncestralDiscreteScheduler" label: EulerAncestralDiscreteScheduler ## 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/wiro/instant-id-controlnet" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "selectedModel": "", "selectedModelPrivate": "", "inputImageUrl": "input-portrait-2.jpg", "selectedControlnetModel": [], "prompt": "olympic athlete, standing, wearing olympics uniform, Paris background, photorealistic, realistic, embodies the spirit of victory, captured by the official Olympic Games photographer 2024, the image is framed through photographer Steve McCurry, 2015, used a classic 50mm lens and illuminated by the brilliance of stadium floodlights, realistic", "negativePrompt": "(lowres, low quality, worst quality:1.2), (text:1.2), watermark, (frame:1.2), deformed, ugly, deformed eyes, blur, out of focus, blurry, mutation, mutated arms, deformed cat, deformed, photo, anthropomorphic cat, monochrome, photo, pet collar, gun, weapon, blue, 3d, drones, drone, buildings in background, green, nsfw", "steps": 20, "scale": "5.0", "ip_adapter_scale": "0.8", "samples": 1, "seed": "3572004920", "scheduler": "DDIMScheduler", "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 ```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 } ``` ## 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.