Descriptions are in English
Cartesia Voices
The voice catalogue of the Cartesia text-to-speech service: active voices, filterable
by language (ISO 639-1), gender and a search string. Put the voice_id from the
response into tts_settings.voice_id of a template with service_key: cartesia;
the voice_id parameter finds one voice by its exact id — the name of a voice already
chosen in a template.
Your own cloned voice does not show up in the catalogue — its voice_id comes from
GET /voices/cartesia/clones (only once the clone is ready). A voice cloned
outside Lumean (for example on cartesia.ai) is accepted too: put its Cartesia id
(a UUID) into tts_settings.voice_id as is.
If the service is closed to the key owner (closed testing), the answer is 404
with reason: service_not_found.
Required key permission: voices.read.
On this page(3)
Parameters
The inputs live inside the request line: fill in a value and you get a ready URL. Below are the type, whether it is required and the allowed values of every parameter.
- stringin queryoptional≤ 16 caracteres
Voice language, an ISO 639-1 code (
ru,en, …). - stringin queryoptional≤ 32 caracteres
Voice gender in the Cartesia catalogue spelling (
masculine,feminine,gender_neutral). - stringin queryoptional≤ 255 caracteres
Search by voice name and description.
- stringin queryoptional≤ 255 caracteres
Exact voice
voice_id— look up the name and preview of a voice already chosen in a template without paging through the catalogue. A voice withdrawn from the catalogue is not returned: the list is empty. - integerin queryoptional≥ 1
Page number, starting at
1. - integerin queryoptional1..200
How many records to return per page. Pagination metadata sits next to
items:current_page,last_page,per_page,total.
Possible responses
200Success. The payload is in data.
Success. The payload is in data.
{
"success": true,
"message": "Success",
"data": {
"items": [
{
"id": 12,
"voice_id": "a0e99841-438c-4a64-b679-ae501e7d6091",
"name": "Russian Narrator",
"description": "Calm male narrator for audiobooks.",
"language": "ru",
"gender": "masculine",
"preview_url": "https://files.cartesia.ai/previews/a0e99841-438c-4a64-b679-ae501e7d6091.wav"
},
{
"id": 13,
"voice_id": "2ee87190-8f84-4925-97da-e52547f9462c",
"name": "Warm Storyteller",
"description": null,
"language": "ru",
"gender": "feminine",
"preview_url": null
}
],
"current_page": 1,
"last_page": 1,
"per_page": 50,
"total": 2
}
}Success flag. Branch on the HTTP status code instead: any 2xx response carries true here, while an error comes back in a different shape that need not contain this field at all.
A human-readable note in the account language. Fine to show to a user; do not parse it — the wording changes without notice and is not an error code.
datarequiredThe response payload.
object
The response payload.
itemsrequiredCartesia catalogue voices on this page.
array<CartesiaVoice>CartesiaVoice
Cartesia catalogue voices on this page.
Internal id of the catalogue entry. Not needed for narration — voice_id goes into the template.
The Cartesia voice id — the value for tts_settings.voice_id of a template with service_key: cartesia.
Voice name.
Voice description from Cartesia, or null.
Voice language (ISO 639-1), or null.
Voice gender: masculine, feminine, gender_neutral, or null.
Link to a voice preview recording, or null.
Current page number, starting from one.
Number of the last page.
Page size the server applied.
Total number of records matching the filter.
401The key is missing, unknown, disabled or expired.
The key is missing, unknown, disabled or expired.
{
"success": false,
"message": "API key is missing. Provide it in the X-API-KEY header.",
"data": null
}Always false in error responses.
Error text in the key's language (set through the X-Locale header).
Always null when the request is rejected before processing.
403The key lacks the voices.read permission.
The key lacks the voices.read permission.
{
"success": false,
"message": "This API key does not have permission to perform this action."
}Always false in error responses.
Error text in the key's language (set through the X-Locale header).
404The Cartesia service is closed to the key owner (reason: service_not_found).
The Cartesia service is closed to the key owner (reason: service_not_found).
{
"success": false,
"message": "Service not found.",
"reason": "service_not_found",
"error_code": "service_not_found"
}Always false in error responses.
The reason for the rejection in words, in the account language. Meant for display; do not branch on it, the wording changes.
Machine-readable reason of a business refusal (for example, input_expired, insufficient_balance). Branch on it, not on the message text.
The same machine-readable code as in reason — a second name for the field. The values always match.
422Validation error, for example per_page above 200. Offending fields are listed in errors.
Validation error, for example per_page above 200. Offending fields are listed in errors.
{
"message": "string",
"errors": {}
}Errors overview.
errorsrequiredA detailed description of each field that failed validation.
object
A detailed description of each field that failed validation.
Nearby
Objects
Neighbouring operations
Feed this page to an AI
spec 0.0.1