List voice languages
Return every language the agent can speak. The console UI shows them as the language picker.
The call returns all rows from the shared languages list. The selected languageCode values go into tts.supportedLanguages when you save the agent, and into the language filter on Browse the voice library. Nothing is stored.
Auth: Bearer token of a signed-in user, checked with the identity service. Rate limit: not documented. Processing: synchronous, one database read.
Before you call it
No identifiers are needed. The call takes no parameters.
Sample request
curl "https://api.spyne.ai/conversation/tts/languages" \
-H "Authorization: Bearer YOUR_TOKEN"import requests
res = requests.get(
"https://api.spyne.ai/conversation/tts/languages",
headers={"Authorization": "Bearer YOUR_TOKEN"},
)
print(res.status_code, res.json())const res = await fetch('https://api.spyne.ai/conversation/tts/languages', {
headers: { Authorization: 'Bearer YOUR_TOKEN' },
});
console.log(res.status, await res.json());Sample response
[
{
"_id": "<id>",
"languageId": "<languageId>",
"languageName": "English",
"languageCode": "en",
"countryCode": "US",
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
]A 401 has the same shape as on Browse the voice library.
Response parameters (200)
The body is an array. Each item has these fields.
| Parameter | Type | Description |
|---|---|---|
[].languageId | string | Internal language id. The voice library language filter also accepts it. |
[].languageName | string | Display name. |
[].languageCode | string | ISO code. The console UI sends this in tts.supportedLanguages. |
[].countryCode | string | Country code. |
[]._id, createdAt, updatedAt | string | Record metadata. |
Errors
| Status | Reason | When it happens |
|---|---|---|
401 | Authentication failed | Missing or rejected token. |
500 | Internal server error | The database read failed. |
What happens next
Use the selected codes as the language filter in Browse the voice library, and as tts.supportedLanguages when you create the agent. At least one language is required.
Updated about 1 hour ago
