## Basic tool info Tool name: Efficient-Large-Model/Sana_1600M_2Kpx_BF16_diffusers Tool description: Sana is a text-to-image framework that can efficiently generate images up to 4096 × 4096 resolution. Tool cover: https://cdn.wiro.ai/uploads/models/Efficient-Large-Model-Sana_1600M_2Kpx_BF16_diffusers-cover.jpg Tool categories: - text-to-image - bf16 - model - sana - checkpoint-folder - persistent Tool tags: - text-to-image - sana - diffusers - safetensors - sana - 1024px_based_image_size - bf16 Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/Efficient-Large-Model/Sana_1600M_2Kpx_BF16_diffusers Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Tool Inputs: - name: prompt label: prompt help: prompt-help type: textarea default: Cinematic photo, black panther, trending on artstation - name: negativePrompt label: negativePrompt help: prompt-help type: textarea default: bad, ugly, low quality - name: steps label: inferencesteps help: inferencesteps-help type: number default: 25 - name: scale label: guidancescale help: guidancescale-help type: float default: 3.5 - name: samples label: samples help: samples-help type: number default: 1 - name: seed label: seed help: seed-help type: text default: 0 - name: width label: width help: width-help type: number default: 1024 - name: height label: height help: height-help type: number default: 1024 ## Tool Parameter Inspires: - prompt: Cinematic photo, black panther, trending on artstation - negative_prompt: bad, ugly, low quality - prompt: haunted house, pixel-art, low-res, blocky, pixel art style, 8-bit graphics, colorful - negative_prompt: bad, ugly, low quality - prompt: double exposure portrait of a beautiful woman with brown hair and a snowy tree under the bright moonlight by Dave White, Conrad Roset, Brandon Kidwell, Andreas Lie, Dan Mountford, Agnes Cecile, splash art, winter colours, gouache, triadic colours, thick opaque strokes, brocade, depth of field, hyperdetailed, whimsimcal, amazing depth, dynamic, dreamy masterwork - negative_prompt: bad, ugly, low quality - prompt: a fantasy illustration of a majestic, ancient dragon with an opalescent scales, amidst glowing enchanted forest, illuminated by magical moonlight, intricate, highly detailed, rich textures, mystical ambiance, digital painting, vivid colors, ethereal, artstation trending, detailed matte background, sharp focus, smooth, majestic, by Todd Lockwood, Donato Giancola, Frank Frazetta, and Brom - negative_prompt: bad, ugly, low quality ## 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/Efficient-Large-Model/Sana_1600M_2Kpx_BF16_diffusers" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "prompt": "Cinematic photo, black panther, trending on artstation", "negativePrompt": "bad, ugly, low quality", "steps": 25, "scale": "3.5", "samples": 1, "seed": "0", "width": 1024, "height": 1024, "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.