curl "https://api.telzino.com/v1/voices" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
# Tailored to one organization: adds its cloned voices, drops locked providers
curl "https://api.telzino.com/v1/voices?organizationId=ORG_UUID" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
const response = await fetch('https://api.telzino.com/v1/voices', {
headers: { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' }
});
const { data } = await response.json();
console.log(data.length); // 25+ voices available
import requests
response = requests.get(
'https://api.telzino.com/v1/voices',
headers={'Authorization': 'Bearer YOUR_ACCESS_TOKEN'}
)
voices = response.json()['data']
for voice in voices:
print(f"{voice['name']} ({voice['provider']}): {voice['id']}")
{
"data": [
{
"id": "79a125e8-cd45-4c13-8a67-188112f4dd22",
"name": "British Lady",
"description": "British Female",
"provider": "cartesia",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_British_Lady.mp3"
},
{
"id": "63ff761f-c1e8-414b-b969-d1833d1c870c",
"name": "Confident British Man",
"description": "British Male",
"provider": "cartesia",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_Confident_British_Man.mp3"
},
{
"id": "English_radiant_girl",
"name": "Radiant (Standard)",
"description": "Energetic Female",
"provider": "minimax",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_English_radiant_girl.mp3"
},
{
"id": "Calm_Woman",
"name": "Professional (Calm)",
"description": "Mature Female",
"provider": "minimax",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_Calm_Woman.mp3"
}
]
}
{
"error": "invalid_token",
"error_description": "Missing or invalid authorization token"
}
Voices
List Voices
Returns a list of all available TTS voices that can be used in agent voice settings
GET
/
v1
/
voices
curl "https://api.telzino.com/v1/voices" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
# Tailored to one organization: adds its cloned voices, drops locked providers
curl "https://api.telzino.com/v1/voices?organizationId=ORG_UUID" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
const response = await fetch('https://api.telzino.com/v1/voices', {
headers: { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' }
});
const { data } = await response.json();
console.log(data.length); // 25+ voices available
import requests
response = requests.get(
'https://api.telzino.com/v1/voices',
headers={'Authorization': 'Bearer YOUR_ACCESS_TOKEN'}
)
voices = response.json()['data']
for voice in voices:
print(f"{voice['name']} ({voice['provider']}): {voice['id']}")
{
"data": [
{
"id": "79a125e8-cd45-4c13-8a67-188112f4dd22",
"name": "British Lady",
"description": "British Female",
"provider": "cartesia",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_British_Lady.mp3"
},
{
"id": "63ff761f-c1e8-414b-b969-d1833d1c870c",
"name": "Confident British Man",
"description": "British Male",
"provider": "cartesia",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_Confident_British_Man.mp3"
},
{
"id": "English_radiant_girl",
"name": "Radiant (Standard)",
"description": "Energetic Female",
"provider": "minimax",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_English_radiant_girl.mp3"
},
{
"id": "Calm_Woman",
"name": "Professional (Calm)",
"description": "Mature Female",
"provider": "minimax",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_Calm_Woman.mp3"
}
]
}
{
"error": "invalid_token",
"error_description": "Missing or invalid authorization token"
}
Use this endpoint to discover available voice IDs for the
voiceSettings.voice_id field when creating or updating agents.
curl "https://api.telzino.com/v1/voices" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
# Tailored to one organization: adds its cloned voices, drops locked providers
curl "https://api.telzino.com/v1/voices?organizationId=ORG_UUID" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
const response = await fetch('https://api.telzino.com/v1/voices', {
headers: { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' }
});
const { data } = await response.json();
console.log(data.length); // 25+ voices available
import requests
response = requests.get(
'https://api.telzino.com/v1/voices',
headers={'Authorization': 'Bearer YOUR_ACCESS_TOKEN'}
)
voices = response.json()['data']
for voice in voices:
print(f"{voice['name']} ({voice['provider']}): {voice['id']}")
{
"data": [
{
"id": "79a125e8-cd45-4c13-8a67-188112f4dd22",
"name": "British Lady",
"description": "British Female",
"provider": "cartesia",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_British_Lady.mp3"
},
{
"id": "63ff761f-c1e8-414b-b969-d1833d1c870c",
"name": "Confident British Man",
"description": "British Male",
"provider": "cartesia",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_Confident_British_Man.mp3"
},
{
"id": "English_radiant_girl",
"name": "Radiant (Standard)",
"description": "Energetic Female",
"provider": "minimax",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_English_radiant_girl.mp3"
},
{
"id": "Calm_Woman",
"name": "Professional (Calm)",
"description": "Mature Female",
"provider": "minimax",
"previewUrl": "https://telimatic-audio-samples-use1.s3.us-east-1.amazonaws.com/voice_previews/preview_Calm_Woman.mp3"
}
]
}
{
"error": "invalid_token",
"error_description": "Missing or invalid authorization token"
}
Query Parameters
string
Tailors the catalogue to one organization you have access to.With this parameter the response also includes that organization’s cloned (custom) voices
when Custom Voices is enabled for it, and omits the voices of any text-to-speech provider
locked for it in Feature Administration.Without it the endpoint returns the full catalogue. An access token identifies an account
rather than a single organization, so there is nothing to tailor the list against — the
unfiltered response is unchanged and remains the default.An
organizationId you cannot access is ignored rather than rejected, and the full
catalogue is returned. Check the id if you were expecting a tailored list.Filtering here is a convenience for building a picker, not the enforcement point. Creating or
updating an agent with a provider the organization is switching to and may not use is
refused by Create Agent and
Update Agent regardless of how the voice list was fetched.The gate is on the
ttsModel field, not on the voice: an agent already stored on a locked
provider can still be moved to a different voice of that same provider, because ttsModel
is unchanged. Those voices are omitted from this list even so, since the list describes what
the organization may pick going forward.Voice Object Fields
| Field | Type | Description |
|---|---|---|
id | string | Voice identifier — use this as the voice_id in voiceSettings when creating or updating agents |
name | string | Display name of the voice |
description | string | Brief description (e.g., “American Female”, “British Male”) |
provider | string | Voice provider: cartesia, minimax or inworld |
previewUrl | string | URL to an audio preview of the voice (optional) |
Use the voice
id as the voice_id inside the voiceSettings object when creating or updating agents:{
"voiceSettings": {
"voice_id": "f786b574-daa5-4673-aa0c-cbe3e8534c02",
"speed": 1.0,
"model": "sonic-3"
}
}
model applies to Cartesia voices only and accepts sonic-3 or sonic-3.6; sonic-3 is the
default. The retired sonic-2 and sonic-3.5 are still accepted but are saved as sonic-3. MiniMax and Inworld voices each use their own model, so omit it.