Voice Management
Create and manage voices for TTS generation. Clone voices from reference audio or design synthetic voices with custom parameters.
List Voices
Returns a paginated list of voices accessible to your API key — both your own and any public voices.
GET
/api/v1/voicesRetrieve a paginated list of available voices.
Query Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| page | number | Optional | 1 | Page number for pagination. |
| limit | number | Optional | 20 | Results per page. Maximum 100. |
200Paginated voice list
{
"data": [
{
"id": "voice_abc123",
"name": "My Custom Voice",
"language": "en",
"type": "cloned",
"is_public": false,
"created_at": "2026-01-10T08:00:00Z"
}
],
"page": 1,
"limit": 20
}Create Voice
Clone a voice from reference audio or design a synthetic voice. For cloning, provide ref_audio_url and optionally ref_text for higher fidelity.
POST
/api/v1/voicesCreate a new cloned or designed voice.
Request Body
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| name | string | Required | — | Display name for the voice. 1–100 characters. |
| language | string | Optional | en | Primary language code for the voice. |
| type | string | Required | — | Voice type: "cloned" (from reference audio) or "designed" (synthetic). |
| ref_audio_url | string | Optional | — | URL of reference audio file used for voice cloning. |
| ref_text | string | Optional | — | Verbatim transcription of the reference audio. Max 1000 characters. |
| settings | object | Optional | — | Voice design parameters (pitch, tone, style). Only applies to designed voices. |
| is_public | boolean | Optional | false | Whether the voice is publicly discoverable in the voice library. |
201Voice created
{
"id": "voice_xyz789",
"name": "Podcast Host",
"language": "en",
"type": "cloned",
"is_public": false,
"created_at": "2026-01-15T10:30:00Z"
}curl -X POST https://getvrex.com/api/v1/voices \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"name": "Podcast Host",
"language": "en",
"type": "cloned",
"ref_audio_url": "https://example.com/sample.wav",
"ref_text": "Welcome to today's episode."
}'Get Voice
Retrieve full details for a single voice by its ID.
GET
/api/v1/voices/:idFetch a voice by ID.
200Voice object
{
"id": "voice_xyz789",
"name": "Podcast Host",
"language": "en",
"type": "cloned",
"ref_audio_url": "https://cdn.tts.getvrex.com/ref/sample.wav",
"is_public": false,
"created_at": "2026-01-15T10:30:00Z"
}Delete Voice
Permanently delete a voice. This action cannot be undone. You can only delete voices you own.
DELETE
/api/v1/voices/:idDelete a voice by ID. Returns 204 No Content on success.
204Voice deleted — no response body