Skip to main content
GET
/
voices
List voices
curl --request GET \
  --url https://api.dialnexa.com/v1/voices \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "voice_xyz",
      "name": "Aria",
      "gender": "female",
      "language_code": "en-US",
      "provider": "elevenlabs",
      "preview_url": "https://voices.dialnexa.com/aria_preview.mp3"
    }
  ],
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 150,
    "totalPages": 8
  }
}
Returns every text-to-speech voice supported by DialNexa, paginated and filterable by language code or gender. Each entry includes the voice’s stable id, display name, BCP-47 language_code, perceived gender, and upstream provider. Use the id field as the value for voice.id when creating or updating an agent. The catalogue evolves as upstream providers add new voices, call this endpoint at deploy time rather than hard-coding the list.

When to use this

  • Voice pickers: populate the dropdown when an operator is choosing a voice for an agent.
  • Brand audits: confirm a given voice is still available before publishing an agent change.
  • Localization: find every voice that supports a specific BCP-47 language for a multi-region rollout.
  • Gender-balanced selection: sample voices by gender for accessibility or brand reasons.
For deeper detail on a specific voice (preview URL, default model, supported accents), use Get Voice. For the model variants of a voice, use List Voice Models.

Query parameters

ParameterDescription
language_codeFilter by BCP-47 language code, for example en-US, hi-IN.
genderFilter by male, female, or neutral.
providerFilter by upstream provider, for example elevenlabs.
pagePage number, starting from 1.
limitResults per page (default 50, max 100).

Errors

  • 401 Unauthorized is returned when the API key is missing or revoked.

Request

curl "https://api.dialnexa.com/v1/voices?language_code=en-IN" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "data": [
    { "id": "vce_en_us_ava",    "name": "Ava",   "language_code": "en-US", "gender": "female", "provider": "elevenlabs" },
    { "id": "vce_en_in_arjun",  "name": "Arjun", "language_code": "en-IN", "gender": "male",   "provider": "elevenlabs" }
  ],
  "meta": { "page": 1, "limit": 20, "total": 48 }
}

Authorizations

Authorization
string
header
required

Pass your API key as a Bearer token in the Authorization header.

Query Parameters

language_code
string

Filter by language code, e.g. en-US.

gender
enum<string>
Available options:
male,
female,
neutral
page
integer
default:1
limit
integer
default:50

Response

200 - application/json

Success.

data
object[]
meta
object