List voices

Gets a list of all available voices for a user with search, filtering and pagination.

Headers

xi-api-keystringOptional

Query parameters

next_page_tokenstring or nullOptional

The next page token to use for pagination. Returned from the previous request. Use this in combination with the has_more flag for reliable pagination.

page_sizeintegerOptionalDefaults to 10
How many voices to return at maximum. Can not exceed 100, defaults to 10. Page 0 may include more voices due to default voices being included.
searchstring or nullOptional
Search term to filter voices by. Searches in name, description, labels, category.
sortstring or nullOptional

Which field to sort by, one of ‘created_at_unix’ or ‘name’. ‘created_at_unix’ may not be available for older voices.

sort_directionstring or nullOptional
Which direction to sort the voices in. 'asc' or 'desc'.
voice_typestring or nullOptional
Type of the voice to filter by. One of 'personal', 'community', 'default', 'workspace', 'non-default', 'non-community', 'saved'. 'non-default' is equal to all but 'default'. 'non-community' is equal to 'personal' and 'workspace' combined (excludes library copies). 'saved' is equal to non-default, but includes default voices if they have been added to a collection.
categorystring or nullOptional
Category of the voice to filter by. One of 'premade', 'cloned', 'generated', 'professional'
fine_tuning_statestring or nullOptional

State of the voice’s fine tuning to filter by. Applicable only to professional voices clones. One of ‘draft’, ‘not_verified’, ‘not_started’, ‘queued’, ‘fine_tuning’, ‘fine_tuned’, ‘failed’, ‘delayed’

collection_idstring or nullOptional
Collection ID to filter voices by.
genderstring or nullOptional
Gender used for filtering, based on the voice's 'gender' label.
agestring or nullOptional
Age used for filtering, based on the voice's 'age' label.
languagelist of strings or nullOptional
Languages used for filtering, based on the voice's 'language' label. Voices matching any of the given languages are returned.
accentstring or nullOptional
Accent used for filtering, based on the voice's 'accent' label.
use_caseslist of strings or nullOptional

Use cases used for filtering, based on the voice’s ‘use_case’ label. Voices matching any of the given use cases are returned.

min_notice_period_daysinteger or nullOptional
Filter to voices whose sharing notice period is at least the given number of days.
include_custom_ratesboolean or nullOptional
Whether to include voices that have a custom sharing rate. Defaults to including them.
include_live_moderatedboolean or nullOptional
Whether to include voices that have live moderation enabled. Defaults to including them.
high_qualityboolean or nullOptional

When true, only return studio-quality voices (those whose category is ‘high_quality’).

include_total_countbooleanOptionalDefaults to true

Whether to include the total count of voices found in the response. NOTE: The total_count value is a live snapshot and may change between requests as users create, modify, or delete voices. For pagination, rely on the has_more flag instead. Only enable this when you actually need the total count (e.g., for display purposes), as it incurs a performance cost.

voice_idslist of strings or nullOptional
Voice IDs to lookup by. Maximum 100 voice IDs.

Response

Successful Response
voiceslist of objects
The list of voices matching the query.
has_moreboolean

Indicates whether there are more voices available in subsequent pages. Use this flag (and next_page_token) for reliable pagination instead of relying on total_count.

total_countinteger

The total count of voices matching the query. This value is a live snapshot that reflects the current state of the database and may change between requests as users create, modify, or delete voices. For reliable pagination, use the has_more flag instead of relying on this value. Only request this field when you actually need the total count (e.g., for display purposes), as calculating it incurs a performance cost.

next_page_tokenstring or nullOptional
Token to retrieve the next page of results. Pass this value to the next request to continue pagination. Null if there are no more results.

Errors

422
Unprocessable Entity Error