## Basic tool info Model name: ACE-Step/text-to-song-ACE-Step1.5 Model description: ACE-Step v1.5 is a highly efficient open-source music foundation model designed to bring commercial-grade music generation to consumer hardware. Model cover: https://cdn.wiro.ai/uploads/models/ace-step-text-to-song-ace-step1-5-cover.webp Model categories: - tool - text-to-song - persistent - quick-showcase - use-agent - music-generation Model tags: - text-to-audio - music - text2music Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/ace-step/text-to-song-ace-step1-5 Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Model Inputs: - name: caption label: Caption help: Free-text description of the desired music. If caption is provided, the tags parameter is completely ignored. If caption is empty, it is automatically built from tags. type: textarea default: A high-energy punk rock anthem with driving electric guitars, pounding drums, and raw passionate female vocals, fast-paced and rebellious with an anthemic chorus - name: prompt label: prompt help: Song lyrics for vocal generation. If instrumental='true', lyrics are ignored and replaced with [Instrumental] regardless of content. If instrumental is not sent, the behavior is auto-detected: empty lyrics default to [Instrumental], non-empty lyrics are used as-is. type: textarea default: [verse] Bright lights flashing in the city sky Running fast and we don't know why Electric nights got our hearts on fire Chasing dreams we'll never tire [verse] Grit in our eyes wind in our hair Breaking rules we don't even care Shouting loud above the crowd Living life like we're unbowed [chorus] Running wild in the night so free Feel the beat pumping endlessly Hearts collide in the midnight air We belong we don't have a care [verse] Piercing through like a lightning strike Every moment feels like a hike Daring bold never backing down Kings and queens without a crown [chorus] Running wild in the night so free Feel the beat pumping endlessly Hearts collide in the midnight air We belong we don't have a care [bridge] Close your eyes let your spirit soar We are the ones who wanted more Breaking chains of the mundane In this world we'll make our claim - name: inputAudio label: Reference Audio help: Upload a song to use as style inspiration. type: combinefileinput default: - name: genre label: genre help: type: multiselect default: pop options: - value: "undefined" label: undefined id: pop name: Pop - value: "undefined" label: undefined id: rock name: Rock - value: "undefined" label: undefined id: electronic name: Electronic - value: "undefined" label: undefined id: classical name: Classical - value: "undefined" label: undefined id: r&b name: R&B - value: "undefined" label: undefined id: folk name: Folk - value: "undefined" label: undefined id: rap name: Rap - value: "undefined" label: undefined id: hip-hop name: Hip-Hop - value: "undefined" label: undefined id: jazz name: Jazz - value: "undefined" label: undefined id: blues name: Blues - value: "undefined" label: undefined id: country name: Country - value: "undefined" label: undefined id: metal name: Metal - value: "undefined" label: undefined id: punk name: Punk - value: "undefined" label: undefined id: soul name: Soul - value: "undefined" label: undefined id: funk name: Funk - value: "undefined" label: undefined id: reggae name: Reggae - value: "undefined" label: undefined id: latin name: Latin - value: "undefined" label: undefined id: ambient name: Ambient - value: "undefined" label: undefined id: indie name: Indie - value: "undefined" label: undefined id: trap name: Trap - value: "undefined" label: undefined id: edm name: EDM - value: "undefined" label: undefined id: lo-fi name: Lo-Fi - value: "undefined" label: undefined id: k-pop name: K-Pop - value: "undefined" label: undefined id: j-pop name: J-Pop - value: "undefined" label: undefined id: afrobeats name: Afrobeats - value: "undefined" label: undefined id: reggaeton name: Reggaeton - value: "undefined" label: undefined id: disco name: Disco - value: "undefined" label: undefined id: house name: House - value: "undefined" label: undefined id: techno name: Techno - value: "undefined" label: undefined id: trance name: Trance - value: "undefined" label: undefined id: dubstep name: Dubstep - value: "undefined" label: undefined id: drum and bass name: Drum and Bass - value: "undefined" label: undefined id: dancehall name: Dancehall - value: "undefined" label: undefined id: gospel name: Gospel - value: "undefined" label: undefined id: ska name: Ska - value: "undefined" label: undefined id: grunge name: Grunge - value: "undefined" label: undefined id: soundtrack name: Soundtrack - value: "undefined" label: undefined id: orchestral name: Orchestral - value: "undefined" label: undefined id: opera name: Opera - value: "undefined" label: undefined id: bossa nova name: Bossa Nova - value: "undefined" label: undefined id: flamenco name: Flamenco - value: "undefined" label: undefined id: salsa name: Salsa - value: "undefined" label: undefined id: synthpop name: Synthpop - value: "undefined" label: undefined id: new wave name: New Wave - value: "undefined" label: undefined id: grime name: Grime - value: "undefined" label: undefined id: indie rock name: Indie Rock - value: "undefined" label: undefined id: indie pop name: Indie Pop - value: "undefined" label: undefined id: indie folk name: Indie Folk - value: "undefined" label: undefined id: alternative rock name: Alternative Rock - value: "undefined" label: undefined id: progressive rock name: Progressive Rock - value: "undefined" label: undefined id: classic rock name: Classic Rock - value: "undefined" label: undefined id: hard rock name: Hard Rock - value: "undefined" label: undefined id: pop rock name: Pop Rock - value: "undefined" label: undefined id: pop punk name: Pop Punk - value: "undefined" label: undefined id: post-rock name: Post-Rock - value: "undefined" label: undefined id: post-hardcore name: Post-Hardcore - value: "undefined" label: undefined id: shoegaze name: Shoegaze - value: "undefined" label: undefined id: emo name: Emo - value: "undefined" label: undefined id: glam rock name: Glam Rock - value: "undefined" label: undefined id: goth rock name: Goth Rock - value: "undefined" label: undefined id: noise rock name: Noise Rock - value: "undefined" label: undefined id: rockabilly name: Rockabilly - value: "undefined" label: undefined id: country rock name: Country Rock - value: "undefined" label: undefined id: heavy metal name: Heavy Metal - value: "undefined" label: undefined id: death metal name: Death Metal - value: "undefined" label: undefined id: black metal name: Black Metal - value: "undefined" label: undefined id: power metal name: Power Metal - value: "undefined" label: undefined id: symphonic metal name: Symphonic Metal - value: "undefined" label: undefined id: melodic death metal name: Melodic Death Metal - value: "undefined" label: undefined id: metalcore name: Metalcore - value: "undefined" label: undefined id: deathcore name: Deathcore - value: "undefined" label: undefined id: hardcore name: Hardcore - value: "undefined" label: undefined id: industrial name: Industrial - value: "undefined" label: undefined id: experimental name: Experimental - value: "undefined" label: undefined id: avant-garde name: Avant-Garde - value: "undefined" label: undefined id: downtempo name: Downtempo - value: "undefined" label: undefined id: chillout name: Chillout - value: "undefined" label: undefined id: new age name: New Age - value: "undefined" label: undefined id: singer-songwriter name: Singer-Songwriter - value: "undefined" label: undefined id: bluegrass name: Bluegrass - value: "undefined" label: undefined id: americana name: Americana - value: "undefined" label: undefined id: latin pop name: Latin Pop - value: "undefined" label: undefined id: regional mexican name: Regional Mexican - value: "undefined" label: undefined id: samba name: Samba - value: "undefined" label: undefined id: bolero name: Bolero - value: "undefined" label: undefined id: chanson name: Chanson - value: "undefined" label: undefined id: celtic name: Celtic - value: "undefined" label: undefined id: middle eastern name: Middle Eastern - value: "undefined" label: undefined id: indian name: Indian - value: "undefined" label: undefined id: african name: African - value: "undefined" label: undefined id: chinese name: Chinese - value: "undefined" label: undefined id: big band name: Big Band - value: "undefined" label: undefined id: choral name: Choral - value: "undefined" label: undefined id: eurodance name: Eurodance - value: "undefined" label: undefined id: 8-bit name: 8-Bit - value: "undefined" label: undefined id: instrumental name: Instrumental - name: instrument label: instrument help: type: multiselect default: guitar options: - value: "undefined" label: undefined id: piano name: Piano - value: "undefined" label: undefined id: electric piano name: Electric Piano - value: "undefined" label: undefined id: keyboard name: Keyboard - value: "undefined" label: undefined id: organ name: Organ - value: "undefined" label: undefined id: harpsichord name: Harpsichord - value: "undefined" label: undefined id: guitar name: Guitar - value: "undefined" label: undefined id: acoustic guitar name: Acoustic Guitar - value: "undefined" label: undefined id: electric guitar name: Electric Guitar - value: "undefined" label: undefined id: bass guitar name: Bass Guitar - value: "undefined" label: undefined id: steel guitar name: Steel Guitar - value: "undefined" label: undefined id: pedal steel guitar name: Pedal Steel Guitar - value: "undefined" label: undefined id: nylon string guitar name: Nylon String Guitar - value: "undefined" label: undefined id: ukulele name: Ukulele - value: "undefined" label: undefined id: banjo name: Banjo - value: "undefined" label: undefined id: mandolin name: Mandolin - value: "undefined" label: undefined id: bass name: Bass - value: "undefined" label: undefined id: synth bass name: Synth Bass - value: "undefined" label: undefined id: 808 bass name: 808 Bass - value: "undefined" label: undefined id: drums name: Drums - value: "undefined" label: undefined id: acoustic drums name: Acoustic Drums - value: "undefined" label: undefined id: drum machine name: Drum Machine - value: "undefined" label: undefined id: percussion name: Percussion - value: "undefined" label: undefined id: congas name: Congas - value: "undefined" label: undefined id: bongos name: Bongos - value: "undefined" label: undefined id: tambourine name: Tambourine - value: "undefined" label: undefined id: maracas name: Maracas - value: "undefined" label: undefined id: tabla name: Tabla - value: "undefined" label: undefined id: dholak name: Dholak - value: "undefined" label: undefined id: marimba name: Marimba - value: "undefined" label: undefined id: glockenspiel name: Glockenspiel - value: "undefined" label: undefined id: steel pan name: Steel Pan - value: "undefined" label: undefined id: synthesizer name: Synthesizer - value: "undefined" label: undefined id: synth name: Synth - value: "undefined" label: undefined id: violin name: Violin - value: "undefined" label: undefined id: cello name: Cello - value: "undefined" label: undefined id: strings name: Strings - value: "undefined" label: undefined id: harp name: Harp - value: "undefined" label: undefined id: fiddle name: Fiddle - value: "undefined" label: undefined id: erhu name: Erhu - value: "undefined" label: undefined id: flute name: Flute - value: "undefined" label: undefined id: oboe name: Oboe - value: "undefined" label: undefined id: clarinet name: Clarinet - value: "undefined" label: undefined id: saxophone name: Saxophone - value: "undefined" label: undefined id: alto saxophone name: Alto Saxophone - value: "undefined" label: undefined id: soprano saxophone name: Soprano Saxophone - value: "undefined" label: undefined id: trumpet name: Trumpet - value: "undefined" label: undefined id: trombone name: Trombone - value: "undefined" label: undefined id: horns name: Horns - value: "undefined" label: undefined id: brass name: Brass - value: "undefined" label: undefined id: harmonica name: Harmonica - value: "undefined" label: undefined id: accordion name: Accordion - value: "undefined" label: undefined id: sitar name: Sitar - value: "undefined" label: undefined id: oud name: Oud - value: "undefined" label: undefined id: qanun name: Qanun - value: "undefined" label: undefined id: koto name: Koto - value: "undefined" label: undefined id: ney name: Ney - value: "undefined" label: undefined id: shakuhachi name: Shakuhachi - value: "undefined" label: undefined id: zither name: Zither - value: "undefined" label: undefined id: dulcimer name: Dulcimer - value: "undefined" label: undefined id: charango name: Charango - value: "undefined" label: undefined id: bandura name: Bandura - value: "undefined" label: undefined id: concertina name: Concertina - value: "undefined" label: undefined id: whistle name: Whistle - value: "undefined" label: undefined id: choir name: Choir - value: "undefined" label: undefined id: vocal name: Vocal - value: "undefined" label: undefined id: beats name: Beats - value: "undefined" label: undefined id: turntables name: Turntables - name: mood label: mood help: type: multiselect default: happy options: - value: "undefined" label: undefined id: happy name: Happy - value: "undefined" label: undefined id: sad name: Sad - value: "undefined" label: undefined id: emotional name: Emotional - value: "undefined" label: undefined id: romantic name: Romantic - value: "undefined" label: undefined id: melancholic name: Melancholic - value: "undefined" label: undefined id: dark name: Dark - value: "undefined" label: undefined id: uplifting name: Uplifting - value: "undefined" label: undefined id: upbeat name: Upbeat - value: "undefined" label: undefined id: energetic name: Energetic - value: "undefined" label: undefined id: calm name: Calm - value: "undefined" label: undefined id: relaxing name: Relaxing - value: "undefined" label: undefined id: chill name: Chill - value: "undefined" label: undefined id: dreamy name: Dreamy - value: "undefined" label: undefined id: nostalgic name: Nostalgic - value: "undefined" label: undefined id: hopeful name: Hopeful - value: "undefined" label: undefined id: inspiring name: Inspiring - value: "undefined" label: undefined id: motivational name: Motivational - value: "undefined" label: undefined id: epic name: Epic - value: "undefined" label: undefined id: dramatic name: Dramatic - value: "undefined" label: undefined id: cinematic name: Cinematic - value: "undefined" label: undefined id: aggressive name: Aggressive - value: "undefined" label: undefined id: intense name: Intense - value: "undefined" label: undefined id: angry name: Angry - value: "undefined" label: undefined id: powerful name: Powerful - value: "undefined" label: undefined id: playful name: Playful - value: "undefined" label: undefined id: cheerful name: Cheerful - value: "undefined" label: undefined id: joyful name: Joyful - value: "undefined" label: undefined id: celebratory name: Celebratory - value: "undefined" label: undefined id: festive name: Festive - value: "undefined" label: undefined id: groovy name: Groovy - value: "undefined" label: undefined id: funky name: Funky - value: "undefined" label: undefined id: soulful name: Soulful - value: "undefined" label: undefined id: ethereal name: Ethereal - value: "undefined" label: undefined id: atmospheric name: Atmospheric - value: "undefined" label: undefined id: mysterious name: Mysterious - value: "undefined" label: undefined id: gloomy name: Gloomy - value: "undefined" label: undefined id: peaceful name: Peaceful - value: "undefined" label: undefined id: gentle name: Gentle - value: "undefined" label: undefined id: tender name: Tender - value: "undefined" label: undefined id: sentimental name: Sentimental - value: "undefined" label: undefined id: heartfelt name: Heartfelt - value: "undefined" label: undefined id: passionate name: Passionate - value: "undefined" label: undefined id: sensual name: Sensual - value: "undefined" label: undefined id: intimate name: Intimate - value: "undefined" label: undefined id: confident name: Confident - value: "undefined" label: undefined id: bold name: Bold - value: "undefined" label: undefined id: rebellious name: Rebellious - value: "undefined" label: undefined id: introspective name: Introspective - value: "undefined" label: undefined id: reflective name: Reflective - value: "undefined" label: undefined id: meditative name: Meditative - value: "undefined" label: undefined id: spiritual name: Spiritual - value: "undefined" label: undefined id: elegant name: Elegant - value: "undefined" label: undefined id: futuristic name: Futuristic - value: "undefined" label: undefined id: vintage name: Vintage - value: "undefined" label: undefined id: melodic name: Melodic - value: "undefined" label: undefined id: danceable name: Danceable - value: "undefined" label: undefined id: empowering name: Empowering - value: "undefined" label: undefined id: soft name: Soft - value: "undefined" label: undefined id: heavy name: Heavy - value: "undefined" label: undefined id: exciting name: Exciting - value: "undefined" label: undefined id: adventurous name: Adventurous - value: "undefined" label: undefined id: summer name: Summer - value: "undefined" label: undefined id: lively name: Lively - value: "undefined" label: undefined id: easygoing name: Easygoing - name: gender label: gender help: type: multiselect default: female vocal options: - value: "undefined" label: undefined id: female vocal name: Female - value: "undefined" label: undefined id: male vocal name: Male - value: "undefined" label: undefined id: child vocal name: Child - value: "undefined" label: undefined id: soprano vocal name: Soprano - value: "undefined" label: undefined id: mezzo-soprano vocal name: Mezzo-Soprano - value: "undefined" label: undefined id: tenor vocal name: Tenor - value: "undefined" label: undefined id: singing name: Singing - value: "undefined" label: undefined id: rapping name: Rapping - name: timbre label: timbre help: type: multiselect default: bright vocal options: - value: "undefined" label: undefined id: bright vocal name: Bright - value: "undefined" label: undefined id: warm vocal name: Warm - value: "undefined" label: undefined id: clear vocal name: Clear - value: "undefined" label: undefined id: soft vocal name: Soft - value: "undefined" label: undefined id: smooth vocal name: Smooth - value: "undefined" label: undefined id: rich vocal name: Rich - value: "undefined" label: undefined id: full vocal name: Full - value: "undefined" label: undefined id: deep vocal name: Deep - value: "undefined" label: undefined id: powerful vocal name: Powerful - value: "undefined" label: undefined id: strong vocal name: Strong - value: "undefined" label: undefined id: airy vocal name: Airy - value: "undefined" label: undefined id: breathy vocal name: Breathy - value: "undefined" label: undefined id: husky vocal name: Husky - value: "undefined" label: undefined id: raspy vocal name: Raspy - value: "undefined" label: undefined id: gritty vocal name: Gritty - value: "undefined" label: undefined id: raw vocal name: Raw - value: "undefined" label: undefined id: rough vocal name: Rough - value: "undefined" label: undefined id: gravelly vocal name: Gravelly - value: "undefined" label: undefined id: hoarse vocal name: Hoarse - value: "undefined" label: undefined id: soulful vocal name: Soulful - value: "undefined" label: undefined id: emotional vocal name: Emotional - value: "undefined" label: undefined id: passionate vocal name: Passionate - value: "undefined" label: undefined id: tender vocal name: Tender - value: "undefined" label: undefined id: sweet vocal name: Sweet - value: "undefined" label: undefined id: honeyed vocal name: Honeyed - value: "undefined" label: undefined id: velvety vocal name: Velvety - value: "undefined" label: undefined id: sultry vocal name: Sultry - value: "undefined" label: undefined id: mellow vocal name: Mellow - value: "undefined" label: undefined id: light vocal name: Light - value: "undefined" label: undefined id: crisp vocal name: Crisp - value: "undefined" label: undefined id: sharp vocal name: Sharp - value: "undefined" label: undefined id: piercing vocal name: Piercing - value: "undefined" label: undefined id: high-pitched vocal name: High-Pitched - value: "undefined" label: undefined id: low-pitched vocal name: Low-Pitched - value: "undefined" label: undefined id: resonant vocal name: Resonant - value: "undefined" label: undefined id: vibrant vocal name: Vibrant - value: "undefined" label: undefined id: polished vocal name: Polished - value: "undefined" label: undefined id: youthful vocal name: Youthful - value: "undefined" label: undefined id: bold vocal name: Bold - value: "undefined" label: undefined id: commanding vocal name: Commanding - value: "undefined" label: undefined id: aggressive vocal name: Aggressive - value: "undefined" label: undefined id: screamy vocal name: Screamy - value: "undefined" label: undefined id: whispery vocal name: Whispery - value: "undefined" label: undefined id: nasal vocal name: Nasal - value: "undefined" label: undefined id: melodic vocal name: Melodic - value: "undefined" label: undefined id: soothing vocal name: Soothing - value: "undefined" label: undefined id: graceful vocal name: Graceful - value: "undefined" label: undefined id: shimmering vocal name: Shimmering - value: "undefined" label: undefined id: dark vocal name: Dark - value: "undefined" label: undefined id: reverb vocal name: Reverb - value: "undefined" label: undefined id: baritone vocal name: Baritone - value: "undefined" label: undefined id: tenor vocal name: Tenor - value: "undefined" label: undefined id: soprano vocal name: Soprano - value: "undefined" label: undefined id: alto vocal name: Alto - value: "undefined" label: undefined id: bass vocal name: Bass - name: duration label: Duration help: Total duration of the generated audio (in seconds). type: select default: 60 options: - value: "10" label: 10 - value: "30" label: 30 - value: "60" label: 60 - value: "90" label: 90 - value: "120" label: 120 - value: "180" label: 180 - value: "240" label: 240 - name: language label: language help: Language of the vocals. Default: Auto type: select default: Auto options: - value: "auto" label: Auto - value: "ar" label: Arabic - value: "az" label: Azerbaijani - value: "bg" label: Bulgarian - value: "bn" label: Bengali - value: "ca" label: Catalan - value: "cs" label: Czech - value: "da" label: Danish - value: "de" label: German - value: "el" label: Greek - value: "en" label: English - value: "es" label: Spanish - value: "fa" label: Persian - value: "fi" label: Finnish - value: "fr" label: French - value: "he" label: Hebrew - value: "hi" label: Hindi - value: "hr" label: Croatian - value: "hu" label: Hungarian - value: "id" label: Indonesian - value: "is" label: Icelandic - value: "it" label: Italian - value: "ja" label: Japanese - value: "ko" label: Korean - value: "la" label: Latin - value: "lt" label: Lithuanian - value: "ms" label: Malay - value: "ne" label: Nepali - value: "nl" label: Dutch - value: "no" label: Norwegian - value: "pa" label: Punjabi - value: "pl" label: Polish - value: "pt" label: Portuguese - value: "ro" label: Romanian - value: "ru" label: Russian - value: "sk" label: Slovak - value: "sr" label: Serbian - value: "sv" label: Swedish - value: "sw" label: Swahili - value: "ta" label: Tamil - value: "te" label: Telugu - value: "th" label: Thai - value: "tl" label: Filipino - value: "tr" label: Turkish - value: "uk" label: Ukrainian - value: "ur" label: Urdu - value: "vi" label: Vietnamese - value: "yue" label: Cantonese - value: "zh" label: Chinese - name: bpm label: bpm help: Set the tempo (e.g. 80 for slow ballad, 128 for dance). Leave 0 to let AI decide. Default: 0 type: number default: 0 - name: steps label: inferencesteps help: inferencesteps-help type: number default: 8 - name: scale label: guidancescale help: guidancescale-help type: float default: 7 - name: initLm label: init_lm help: Enable AI-powered music planning for better results. Default: True. type: checkbox default: --init_lm - name: instrumental label: instrumental help: Controls whether the output is instrumental. When 'true', any provided lyrics are ignored and replaced with [Instrumental]. When 'false', lyrics are used as-is but fall back to [Instrumental] if empty. type: checkbox default: --instrumental - name: seed label: seed help: seed-help type: text default: 42 ## 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/ace-step/text-to-song-ace-step1-5" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "caption": "A high-energy punk rock anthem with driving electric guitars, pounding drums, and raw passionate female vocals, fast-paced and rebellious with an anthemic chorus", "prompt": "[verse]\nBright lights flashing in the city sky\nRunning fast and we don't know why\nElectric nights got our hearts on fire\nChasing dreams we'll never tire\n\n[verse]\nGrit in our eyes wind in our hair\nBreaking rules we don't even care\nShouting loud above the crowd\nLiving life like we're unbowed\n\n[chorus]\nRunning wild in the night so free\nFeel the beat pumping endlessly\nHearts collide in the midnight air\nWe belong we don't have a care\n\n[verse]\nPiercing through like a lightning strike\nEvery moment feels like a hike\nDaring bold never backing down\nKings and queens without a crown\n\n[chorus]\nRunning wild in the night so free\nFeel the beat pumping endlessly\nHearts collide in the midnight air\nWe belong we don't have a care\n\n[bridge]\nClose your eyes let your spirit soar\nWe are the ones who wanted more\nBreaking chains of the mundane\nIn this world we'll make our claim", "inputAudio": "", "genre": [ "pop" ], "instrument": [ "guitar" ], "mood": [ "happy" ], "gender": [ "female vocal" ], "timbre": [ "bright vocal" ], "duration": "60", "language": "Auto", "bpm": 0, "steps": 8, "scale": "7", "initLm": "--init_lm", "instrumental": "--instrumental", "seed": "42", "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.