## Basic tool info Tool name: suno-ai/bark Tool description: Text-Prompted Generative Audio Model Tool cover: https://cdn.wiro.ai/uploads/models/suno-ai-bark-cover.jpg Tool categories: - tool - text-to-speech - bark - audio - quick-showcase - grid-landscape Tool tags: - suno-ai - bark - text-to-speech - audio - speech Run Task Endpoint (POST): https://api.wiro.ai/v1/Run/suno-ai/bark Get Task Detail Endpoint (POST): https://api.wiro.ai/v1/Task/Detail ## Tool Inputs: - name: prompt label: prompt help: prompt-help type: textarea default: Welcome to Wiro AI! How can we assist you today? - name: speakers label: speakers help: speakers-help type: select default: v2/en_speaker_0 options: - value: "v2/en_speaker_0" label: [EN] Speaker 0 Male - value: "v2/en_speaker_1" label: [EN] Speaker 1 Male - value: "v2/en_speaker_2" label: [EN] Speaker 2 Male - value: "v2/en_speaker_3" label: [EN] Speaker 3 Male - value: "v2/en_speaker_4" label: [EN] Speaker 4 Male - value: "v2/en_speaker_5" label: [EN] Speaker 5 Male - value: "v2/en_speaker_6" label: [EN] Speaker 6 Male - value: "v2/en_speaker_7" label: [EN] Speaker 7 Male - value: "v2/en_speaker_8" label: [EN] Speaker 8 Male - value: "v2/en_speaker_9" label: [EN] Speaker 9 Female - value: "v2/zh_speaker_0" label: [ZH] Speaker 0 Male - value: "v2/zh_speaker_1" label: [ZH] Speaker 1 Male - value: "v2/zh_speaker_2" label: [ZH] Speaker 2 Male - value: "v2/zh_speaker_3" label: [ZH] Speaker 3 Male - value: "v2/zh_speaker_4" label: [ZH] Speaker 4 Female - value: "v2/zh_speaker_5" label: [ZH] Speaker 5 Male - value: "v2/zh_speaker_6" label: [ZH] Speaker 6 Female - value: "v2/zh_speaker_7" label: [ZH] Speaker 7 Female - value: "v2/zh_speaker_8" label: [ZH] Speaker 8 Male - value: "v2/zh_speaker_9" label: [ZH] Speaker 9 Female - value: "v2/fr_speaker_0" label: [FR] Speaker 0 Male - value: "v2/fr_speaker_1" label: [FR] Speaker 1 Female - value: "v2/fr_speaker_2" label: [FR] Speaker 2 Female - value: "v2/fr_speaker_3" label: [FR] Speaker 3 Male - value: "v2/fr_speaker_4" label: [FR] Speaker 4 Male - value: "v2/fr_speaker_5" label: [FR] Speaker 5 Female - value: "v2/fr_speaker_6" label: [FR] Speaker 6 Male - value: "v2/fr_speaker_7" label: [FR] Speaker 7 Male - value: "v2/fr_speaker_8" label: [FR] Speaker 8 Male - value: "v2/fr_speaker_9" label: [FR] Speaker 9 Male - value: "v2/de_speaker_0" label: [DE] Speaker 0 Male - value: "v2/de_speaker_1" label: [DE] Speaker 1 Male - value: "v2/de_speaker_2" label: [DE] Speaker 2 Male - value: "v2/de_speaker_3" label: [DE] Speaker 3 Female - value: "v2/de_speaker_4" label: [DE] Speaker 4 Male - value: "v2/de_speaker_5" label: [DE] Speaker 5 Male - value: "v2/de_speaker_6" label: [DE] Speaker 6 Male - value: "v2/de_speaker_7" label: [DE] Speaker 7 Male - value: "v2/de_speaker_8" label: [DE] Speaker 8 Female - value: "v2/de_speaker_9" label: [DE] Speaker 9 Male - value: "v2/hi_speaker_0" label: [HI] Speaker 0 Female - value: "v2/hi_speaker_1" label: [HI] Speaker 1 Female - value: "v2/hi_speaker_2" label: [HI] Speaker 2 Male - value: "v2/hi_speaker_3" label: [HI] Speaker 3 Female - value: "v2/hi_speaker_4" label: [HI] Speaker 4 Female - value: "v2/hi_speaker_5" label: [HI] Speaker 5 Male - value: "v2/hi_speaker_6" label: [HI] Speaker 6 Male - value: "v2/hi_speaker_7" label: [HI] Speaker 7 Male - value: "v2/hi_speaker_8" label: [HI] Speaker 8 Male - value: "v2/hi_speaker_9" label: [HI] Speaker 9 Female - value: "v2/it_speaker_0" label: [IT] Speaker 0 Male - value: "v2/it_speaker_1" label: [IT] Speaker 1 Male - value: "v2/it_speaker_2" label: [IT] Speaker 2 Female - value: "v2/it_speaker_3" label: [IT] Speaker 3 Male - value: "v2/it_speaker_4" label: [IT] Speaker 4 Male - value: "v2/it_speaker_5" label: [IT] Speaker 5 Male - value: "v2/it_speaker_6" label: [IT] Speaker 6 Male - value: "v2/it_speaker_7" label: [IT] Speaker 7 Female - value: "v2/it_speaker_8" label: [IT] Speaker 8 Male - value: "v2/it_speaker_9" label: [IT] Speaker 9 Female - value: "v2/ja_speaker_0" label: [JA] Speaker 0 Female - value: "v2/ja_speaker_1" label: [JA] Speaker 1 Female - value: "v2/ja_speaker_2" label: [JA] Speaker 2 Male - value: "v2/ja_speaker_3" label: [JA] Speaker 3 Female - value: "v2/ja_speaker_4" label: [JA] Speaker 4 Female - value: "v2/ja_speaker_5" label: [JA] Speaker 5 Female - value: "v2/ja_speaker_6" label: [JA] Speaker 6 Male - value: "v2/ja_speaker_7" label: [JA] Speaker 7 Female - value: "v2/ja_speaker_8" label: [JA] Speaker 8 Female - value: "v2/ja_speaker_9" label: [JA] Speaker 9 Female - value: "v2/ko_speaker_0" label: [KO] Speaker 0 Female - value: "v2/ko_speaker_1" label: [KO] Speaker 1 Male - value: "v2/ko_speaker_2" label: [KO] Speaker 2 Male - value: "v2/ko_speaker_3" label: [KO] Speaker 3 Male - value: "v2/ko_speaker_4" label: [KO] Speaker 4 Male - value: "v2/ko_speaker_5" label: [KO] Speaker 5 Male - value: "v2/ko_speaker_6" label: [KO] Speaker 6 Male - value: "v2/ko_speaker_7" label: [KO] Speaker 7 Male - value: "v2/ko_speaker_8" label: [KO] Speaker 8 Male - value: "v2/ko_speaker_9" label: [KO] Speaker 9 Male - value: "v2/pl_speaker_0" label: [PL] Speaker 0 Male - value: "v2/pl_speaker_1" label: [PL] Speaker 1 Male - value: "v2/pl_speaker_2" label: [PL] Speaker 2 Male - value: "v2/pl_speaker_3" label: [PL] Speaker 3 Male - value: "v2/pl_speaker_4" label: [PL] Speaker 4 Female - value: "v2/pl_speaker_5" label: [PL] Speaker 5 Male - value: "v2/pl_speaker_6" label: [PL] Speaker 6 Female - value: "v2/pl_speaker_7" label: [PL] Speaker 7 Male - value: "v2/pl_speaker_8" label: [PL] Speaker 8 Male - value: "v2/pl_speaker_9" label: [PL] Speaker 9 Female - value: "v2/pt_speaker_0" label: [PT] Speaker 0 Male - value: "v2/pt_speaker_1" label: [PT] Speaker 1 Male - value: "v2/pt_speaker_2" label: [PT] Speaker 2 Male - value: "v2/pt_speaker_3" label: [PT] Speaker 3 Male - value: "v2/pt_speaker_4" label: [PT] Speaker 4 Male - value: "v2/pt_speaker_5" label: [PT] Speaker 5 Male - value: "v2/pt_speaker_6" label: [PT] Speaker 6 Male - value: "v2/pt_speaker_7" label: [PT] Speaker 7 Male - value: "v2/pt_speaker_8" label: [PT] Speaker 8 Male - value: "v2/pt_speaker_9" label: [PT] Speaker 9 Male - value: "v2/ru_speaker_0" label: [RU] Speaker 0 Male - value: "v2/ru_speaker_1" label: [RU] Speaker 1 Male - value: "v2/ru_speaker_2" label: [RU] Speaker 2 Male - value: "v2/ru_speaker_3" label: [RU] Speaker 3 Male - value: "v2/ru_speaker_4" label: [RU] Speaker 4 Male - value: "v2/ru_speaker_5" label: [RU] Speaker 5 Female - value: "v2/ru_speaker_6" label: [RU] Speaker 6 Female - value: "v2/ru_speaker_7" label: [RU] Speaker 7 Male - value: "v2/ru_speaker_8" label: [RU] Speaker 8 Male - value: "v2/ru_speaker_9" label: [RU] Speaker 9 Female - value: "v2/es_speaker_0" label: [ES] Speaker 0 Male - value: "v2/es_speaker_1" label: [ES] Speaker 1 Male - value: "v2/es_speaker_2" label: [ES] Speaker 2 Male - value: "v2/es_speaker_3" label: [ES] Speaker 3 Male - value: "v2/es_speaker_4" label: [ES] Speaker 4 Male - value: "v2/es_speaker_5" label: [ES] Speaker 5 Male - value: "v2/es_speaker_6" label: [ES] Speaker 6 Male - value: "v2/es_speaker_7" label: [ES] Speaker 7 Male - value: "v2/es_speaker_8" label: [ES] Speaker 8 Female - value: "v2/es_speaker_9" label: [ES] Speaker 9 Female - value: "v2/tr_speaker_0" label: [TR] Speaker 0 Male - value: "v2/tr_speaker_1" label: [TR] Speaker 1 Male - value: "v2/tr_speaker_2" label: [TR] Speaker 2 Male - value: "v2/tr_speaker_3" label: [TR] Speaker 3 Male - value: "v2/tr_speaker_4" label: [TR] Speaker 4 Female - value: "v2/tr_speaker_5" label: [TR] Speaker 5 Female - value: "v2/tr_speaker_6" label: [TR] Speaker 6 Male - value: "v2/tr_speaker_7" label: [TR] Speaker 7 Male - value: "v2/tr_speaker_8" label: [TR] Speaker 8 Male - value: "v2/tr_speaker_9" label: [TR] Speaker 9 Male - name: silence label: silence help: silence-help type: float default: 0.25 - name: textTemp label: text-temp help: text-temp-help type: float default: 0.5 - name: waveformTemp label: waveform-temp help: waveform-temp-help type: float default: 0.7 - name: minEosP label: min-eos-p help: min-eos-p-help type: float default: 0.15 ## 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/suno-ai/bark" -H "Content-Type: multipart/form-data" -H "x-api-key: ${YOUR_API_KEY}" -H "x-nonce: ${NONCE}" -H "x-signature: ${SIGNATURE}" -d '{ "prompt": "Welcome to Wiro AI! How can we assist you today?", "speakers": "v2/en_speaker_0", "silence": "0.25", "textTemp": "0.5", "waveformTemp": "0.7", "minEosP": "0.15", "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.