Skip to main content

GET /voices

Returns the voices available to your organization (the shared library plus any you’ve cloned). The list is paginated.

Response

language is a BCP-47 tag. Most voices use a base code like en, but some are region-specific — for example, Dutch voices are tagged nl-NL. Match on the full tag (and filter with ?language=nl-NL), not just the base subtag.

Example

GET /voices/{id}

Fetch metadata for a single voice.

DELETE /voices/{id}

Remove a cloned voice you own.

POST /voices/clone

Clone a voice from a reference audio sample (multipart upload). Use the returned voice id in your /tts/bytes and /tts/websocket requests.
The language field must be a well-formed BCP-47 tag — send the full dialect (en-US, en-GB, es-MX, pt-BR, nl-NL) since dialect tags drive per-language behavior. The value is canonicalized on save (en-usen-US). A malformed tag (en_US, en-USA, english_, 123) is rejected with invalid_language (400):

Choosing a Voice

Browse and preview voices in the Playground before integrating them. Pass the voice id in the voice field: