curl -X GET "https://api.hooked.so/v1/voice/list?language=English&gender=Female" \
-H "x-api-key: your_api_key_here"
const response = await fetch('https://api.hooked.so/v1/voice/list?language=English&gender=Female', {
headers: { 'x-api-key': 'your_api_key_here' }
});
const { voices } = await response.json().data;
{
"success": true,
"data": {
"voices": [
{
"id": "1004",
"voiceId": "tzX5paJ07p5hyWFcU3uG",
"name": "Jude",
"gender": "Male",
"language": "English",
"accent": "British",
"country": "GB",
"templateUrl": "https://cdn.hooked.so/voices/jude.mp3",
"thumbnail": "/images/voice-default.png",
"isCustom": false,
"source": "library"
}
],
"total": 150
}
}
Resources
List Voices
Get all available voices (ElevenLabs library + custom cloned voices)
GET
/
v1
/
voice
/
list
curl -X GET "https://api.hooked.so/v1/voice/list?language=English&gender=Female" \
-H "x-api-key: your_api_key_here"
const response = await fetch('https://api.hooked.so/v1/voice/list?language=English&gender=Female', {
headers: { 'x-api-key': 'your_api_key_here' }
});
const { voices } = await response.json().data;
{
"success": true,
"data": {
"voices": [
{
"id": "1004",
"voiceId": "tzX5paJ07p5hyWFcU3uG",
"name": "Jude",
"gender": "Male",
"language": "English",
"accent": "British",
"country": "GB",
"templateUrl": "https://cdn.hooked.so/voices/jude.mp3",
"thumbnail": "/images/voice-default.png",
"isCustom": false,
"source": "library"
}
],
"total": 150
}
}
Overview
This endpoint returns all voices available for text-to-speech, including ElevenLabs library voices and custom cloned voices.Query Parameters
string
default:"all"
library: Only ElevenLabs library voicescustom: Only custom cloned voicesall: Both library and custom voices (default)
string
Filter by language (e.g., “English”, “Spanish”, “French”)
string
Filter by gender (“Male”, “Female”)
integer
default:"50"
Page size. Maximum
100.integer
default:"0"
Number of rows to skip. Combine with
limit to page through the list; you are done when offset + limit >= total.curl -X GET "https://api.hooked.so/v1/voice/list?language=English&gender=Female" \
-H "x-api-key: your_api_key_here"
const response = await fetch('https://api.hooked.so/v1/voice/list?language=English&gender=Female', {
headers: { 'x-api-key': 'your_api_key_here' }
});
const { voices } = await response.json().data;
{
"success": true,
"data": {
"voices": [
{
"id": "1004",
"voiceId": "tzX5paJ07p5hyWFcU3uG",
"name": "Jude",
"gender": "Male",
"language": "English",
"accent": "British",
"country": "GB",
"templateUrl": "https://cdn.hooked.so/voices/jude.mp3",
"thumbnail": "/images/voice-default.png",
"isCustom": false,
"source": "library"
}
],
"total": 150
}
}