Voices Endpoint
This endpoint provides access to the available voices in the Uberduck API. You can retrieve a list of all voices or filter them by various attributes.
Request
GET /v1/voices
Query Parameters
Parameter | Type | Required | Description |
---|---|---|---|
age | string | No | Filter by voice age (e.g., child , young , middle_aged , old ). |
gender | string | No | Filter by voice gender (e.g., male , female ). |
accent | string | No | Filter by voice accent (e.g., american , british , australian ). |
mood | string | No | Filter by voice mood (e.g., happy , sad , angry ). |
style | string | No | Filter by voice style (e.g., casual , formal , newsreader ). |
language | string | No | Filter by voice language (e.g., english , spanish , french ). |
limit | integer | No | Maximum number of voices to return. Default: 100. Maximum: 1000. |
offset | integer | No | Number of voices to skip. Used for pagination. Default: 0. |
name | string | No | Filter by voice name. |
uuid | string | No | Filter by voice UUID. |
model | string | No | Filter by model ID (e.g., polly_neural , google_wavenet , azure_neural ). |
search_term | string | No | Search term to match against voice name or display name. |
tag | string | No | Filter by voice tag (e.g., characters , celebrities , accents ). |
Model-Specific Filtering
For model filtering, you can use these special formats:
polly_neural
- Returns Polly voices that support the neural enginepolly_standard
- Returns Polly voices that support the standard enginegoogle_wavenet
- Returns Google WaveNet voicesgoogle_neural2
- Returns Google Neural2 voicesgoogle_standard
- Returns Google standard voicesazure_neural
- Returns Azure neural voices
Example Request
curl -X GET "https://api.uberduck.ai/v1/voices?language=english&gender=female&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"
Response
Response Body
Field | Type | Description |
---|---|---|
voices | array | Array of voice objects. |
total | integer | Total number of voices matching the filter criteria. |
Voice Object
Field | Type | Description |
---|---|---|
voicemodel_uuid | string | Unique identifier for the voice. |
display_name | string | Display name of the voice. |
description | string | Description of the voice. |
is_private | boolean | Whether the voice is private. |
age | string | Age category of the voice. |
gender | string | Gender of the voice. |
accent | string | Accent of the voice. |
style | string | Style of the voice. |
mood | string | Mood of the voice. |
image_url | string | URL to an image representing the voice. |
sample_url | string | URL to a sample audio of the voice. |
name | string | Internal name of the voice. |
language | string | Language of the voice. |
tags | array | Array of tags associated with the voice. |
features | array | Array of features supported by the voice. |
Example Response
{
"voices": [
{
"voicemodel_uuid": "polly_joanna",
"display_name": "Joanna",
"description": "Professional female voice with an American accent",
"is_private": false,
"age": "middle_aged",
"gender": "female",
"accent": "american",
"style": "professional",
"mood": "neutral",
"image_url": "https://static.uberduck.ai/voices/polly_joanna.png",
"sample_url": "https://static.uberduck.ai/voices/samples/polly_joanna.mp3",
"name": "polly_joanna",
"language": "english",
"tags": ["professional", "clear", "friendly"],
"features": ["ssml", "neural-quality"]
}
// More voice objects...
],
"total": 150
}
Error Codes
Status Code | Error Code | Description |
---|---|---|
400 | invalid_request | Invalid request parameters. |
401 | unauthorized | Invalid or missing API key. |
429 | rate_limit_exceeded | Rate limit exceeded. |
500 | internal_error | Internal server error. |
Usage Notes
- Use pagination parameters (
limit
andoffset
) to navigate through large result sets. - Combine multiple filter parameters to narrow down the results.
- The
search_term
parameter performs a partial match search on both thename
anddisplay_name
fields. - For provider voices, the
voicemodel_uuid
includes the provider prefix (e.g.,polly_joanna
,google_wavenet_a
). - The
tags
field is useful for finding voices with specific characteristics.