## Basic tool info Tool name: wiro/kokoro_tts Tool description: Kokoro is a high-speed text-to-speech model that delivers clean, accurate, and natural-sounding audio. Tool cover: No cover Tool categories: - persistent - text-to-speech - tool Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/wiro/kokoro_tts Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Tool Inputs: - name: prompt label: prompt help: The prompt to generate audio from. type: textarea default: And, when you want something, all the universe conspires in helping you to achieve it. - name: voice label: voice help: type: select default: af_heart options: - value: "af_alloy" label: Alloy - value: "af_aoede" label: Aoede - value: "af_bella" label: Bella - value: "af_heart" label: Heart - value: "af_jessica" label: Jessica - value: "af_kore" label: Kore - value: "af_nicole" label: Nicole - value: "af_nova" label: Nova - value: "af_river" label: River - value: "af_sarah" label: Sarah - value: "af_sky" label: Sky - value: "am_adam" label: Adam - value: "am_echo" label: Echo - value: "am_eric" label: Eric - value: "am_fenrir" label: Fenrir - value: "am_liam" label: Liam - value: "am_michael" label: Michael - value: "am_onyx" label: Onyx - value: "am_puck" label: Puck - value: "am_santa" label: Santa - value: "bf_alice" label: Alice - value: "bf_emma" label: Emma - value: "bf_isabella" label: Isabella - value: "bf_lily" label: Lily - value: "bm_daniel" label: Daniel - value: "bm_fable" label: Fable - value: "bm_george" label: George - value: "bm_lewis" label: Lewis - value: "ef_dora" label: Dora - value: "em_alex" label: Alex - value: "em_santa" label: Santa - value: "ff_siwis" label: Siwis - value: "hf_alpha" label: Alpha - value: "hf_beta" label: Beta - value: "hm_omega" label: Omega - value: "hm_psi" label: Psi - value: "if_sara" label: Sara - value: "im_nicola" label: Nicola - value: "jf_alpha" label: Alpha - value: "jf_gongitsune" label: Gongitsune - value: "jf_nezumi" label: Nezumi - value: "jf_tebukuro" label: Tebukuro - value: "jm_kumo" label: Kumo - value: "pf_dora" label: Dora - value: "pm_alex" label: Alex - value: "pm_santa" label: Santa - value: "zf_xiaobei" label: Xiaobei - value: "zf_xiaoni" label: Xiaoni - value: "zf_xiaoxiao" label: Xiaoxiao - value: "zf_xiaoyi" label: Xiaoyi - value: "zm_yunjian" label: Yunjian - value: "zm_yunxi" label: Yunxi - value: "zm_yunxia" label: Yunxia - value: "zm_yunyang" label: Yunyang - name: langCode label: lang_code help: type: select default: a options: - value: "a" label: American English - value: "b" label: British English - value: "e" label: Spanish - value: "f" label: French - value: "h" label: Hindi - value: "i" label: Italian - value: "p" label: Brazilian Portuguese ## 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/kokoro_tts" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "prompt": "And, when you want something, all the universe conspires in helping you to achieve it.", "voice": "af_heart", "langCode": "a", "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.