Skip to main content
Retrieve a list of all available voices from various voice providers for your voice agents. This endpoint supports multiple voice providers including ElevenLabs, OpenAI, Deepgram, Sarvam, and others.

API Endpoint

Endpoint: GET /api/voice-list Authentication: Required (Token header: token or api_access_token)

Query Parameters

ParameterTypeRequiredDescription
providerstringYesVoice provider name. Supported values: elevenlabs, openai, deepgram, sarvam
page_tokenstringNoToken for pagination to retrieve the next page of results
limitintegerNoNumber of voices to return per page (default varies by provider)
{
  "error": false,
  "code": 200,
  "message": "Voices fetched successfully for provider: elevenlabs",
  "timestamp": 1769243432947,
  "data": {
    "provider_id": "1",
    "provider_name": "elevenlabs",
    "total_count": 152,
    "next_page_token": "aHBwNEozVnFOZldBVU9PMGQxVXN8QjE4aWZwOUlOVk4zU0UyUm9vcEE=",
    "has_more": true,
    "voices": [
      {
        "id": "s3I1dCXC0u6BYPeTyp1u",
        "title": "Srivi - Calm, Supportive and Clear",
        "category": "professional",
        "description": "Srivi - Professional BFSI Customer Care Voice - Srivi's voice is professional, clear, and reassuring – perfect for BFSI customer support in Tamil.",
        "url": "https://storage.googleapis.com/eleven-public-prod/database/workspace/ed9b05e6324c457685490352e9a1ec90/voices/s3I1dCXC0u6BYPeTyp1u/zqKmGomJkmpmwDWuG2tH.mp3",
        "language": "ta",
        "age": "middle_aged",
        "gender": "female",
        "image": null
      },
      {
        "id": "hpp4J3VqNfWAUOO0d1Us",
        "title": "Bella - Professional, Bright, Warm",
        "category": "premade",
        "description": "This voice is warm, bright, and professional, characterized by a Standard American accent and a polished, narrative quality.",
        "url": "https://storage.googleapis.com/eleven-public-prod/premade/voices/hpp4J3VqNfWAUOO0d1Us/dab0f5ba-3aa4-48a8-9fad-f138fea1126d.mp3",
        "language": "en",
        "age": "middle_aged",
        "gender": "female",
        "image": null
      }
    ]
  }
}

Response Fields

FieldTypeDescription
errorbooleanIndicates if there was an error
codeintegerHTTP status code
messagestringSuccess or error message
timestampintegerUnix timestamp in milliseconds
dataobjectResponse data object
data.provider_idstringUnique identifier for the provider
data.provider_namestringName of the voice provider
data.total_countintegerTotal number of available voices
data.next_page_tokenstringToken for fetching the next page (null if no more pages)
data.has_morebooleanIndicates if more voices are available
data.voicesarrayArray of voice objects

Voice Object Fields

FieldTypeDescription
idstringUnique voice identifier (use this when creating agents)
titlestringDisplay name of the voice
categorystringVoice category (professional, premade, etc.)
descriptionstringDetailed description of the voice characteristics
urlstringSample audio URL to preview the voice
languagestringLanguage code (e.g., en, ta, ar, hi)
agestringAge category (young, middle_aged, old)
genderstringGender (male, female, neutral)
imagestringProfile image URL (may be null)

Error Responses

400 - Bad Request

Status Code: 400 Bad Request
{
  "error": true,
  "code": 400,
  "message": "Provider parameter is required",
  "data": {}
}

401 - Authentication Error

Status Code: 401 Unauthorized
{
  "error": true,
  "code": 401,
  "message": "Invalid Auth Key or Session Expired",
  "data": {}
}

404 - Provider Not Found

Status Code: 404 Not Found
{
  "error": true,
  "code": 404,
  "message": "Provider not found",
  "data": {}
}

500 - Server Error

Status Code: 500 Internal Server Error
{
  "error": true,
  "code": 500,
  "message": "Internal server error",
  "data": {}
}

Pagination

When has_more is true, use the next_page_token value in your next request to fetch the next page of voices:
curl -X GET "https://www.tryunleashx.com/api/voice-list?provider=elevenlabs&page_token=YOUR_NEXT_PAGE_TOKEN" \
  -H "token: YOUR_AUTH_TOKEN"

Supported Providers

ProviderIDDescription
ElevenLabselevenlabsHigh-quality AI voices with emotional range
OpenAIopenaiOpenAI’s text-to-speech voices
DeepgramdeepgramFast, accurate voice synthesis
SarvamsarvamMultilingual voices optimized for Indian languages

Usage Notes

  • Use the id field from the voice object when creating or updating agents with the voice_id parameter
  • Preview voices using the url field before selecting one for your agent
  • Filter voices by language, gender, or age in your application logic
  • The category field helps identify voice types (professional for business use, premade for general purpose)
  • Some providers may have rate limits on voice listing; implement caching when possible

Example: Using Voice ID in Agent Creation

After fetching voices, use the voice id when creating an agent:
curl -X POST "https://www.tryunleashx.com/api/agent/createagentorupdate" \
  -H "token: YOUR_AUTH_TOKEN" \
  -F "basic_details[agent_name]=My Agent" \
  -F "basic_details[voice_id]=s3I1dCXC0u6BYPeTyp1u" \
  -F "basic_details[voice_provider]=1"