List Voice Profiles
Gets a paginated list of available voices, which can be filtered by gender, age, language, accent and type.
List Voice Profiles API Docs
List Voice Profiles API helper endpoint lets you retrieve a paginated response of all voices available to your account, which could include voice profiles of three types - private, imported and public.
API Request
Sending a GET request to the endpoint immediately returns a status along with a paginated list of voice profiles on success. The paginated result uses a default limit of 10 and the response adds a has_more field if there are more pages and a next_page_token field to query the next page.
Sending Request without Query Params
Simply sending a GET request to the endpoint without any query parameters returns up to 10 most recent voice profile records.
curl -X GET "https://api.zoice.com/v1/voice-profiles" \
-H "Authorization: Bearer $ZOICE_API_KEY"Sending Request with Query Params
The /v1/voice-profiles endpoint accepts optional voice_type, gender, age, language, accent, page_size and next_page_token query parameters to filter the responses based on your requirements.
curl -X GET "https://api.zoice.com/v1/voice-profiles?voice_type=private&gender=male" \
-H "Authorization: Bearer $ZOICE_API_KEY"Response Format
A successful request will return a JSON object with fields including status, voices, has_more, next_page_token.
{
"status": "success",
"voices": [
{
"voice_id": "bedf6a57-c6a5-47c0-...",
"voice_name": "Sophia",
"description": "early middle aged woman",
"age": "early-middle-aged",
"gender": "female",
"language": "en",
"accent": "en-american",
"generation_info": {
"reference_audio_urls": [
"https://storage.zoice.com/api/assets/audio-ddc61733-0ed9-4b05-...mp3"
]
},
"created_at": "2026-07-18T15:20:20.224Z",
"voice_type": "private",
"voice_state": "active",
"preview_url": "https://storage.zoice.com/api/assets/audio-c018ff3d-691f...mp3"
},
{
"voice_id": "76c751f0-71bd-42e5-93b6-...",
"voice_name": "sophia",
"generation_info": {
"reference_audio_urls": [
"https://storage.zoice.com/api/assets/1769428384127-1769428383842_...mp3"
]
},
"created_at": "2026-07-13T16:44:12.544Z",
"voice_type": "private",
"voice_state": "active",
"preview_url": "https://storage.zoice.com/api/assets/audio-ddc61733-0ed9-...mp3"
},
],
"has_more": false,
"next_page_token": null
}Handling Pagination
The paginated result uses a default limit of 10 and this can be changed by using the page_size query parameter.
The response adds a has_more field if there are more pages and a next_page_token field to query the next page.
If has_more value is true, include the next_page_token value in the query parameter when you send a request next time to fetch additional pages of results.
Schema
Input
Query Parameter | Type | Required | Default | Range |
|---|---|---|---|---|
voice_type | string | No | - |
|
gender | string | No | - |
|
age | string | No | - |
|
language | string | No | - | "af", "ar", "hy", "as", "ast", "az", "be", "bn", "bs", "bg", "yue", "ca", "ceb", "ny", "zh", "hr", "cs", "da", "nl", "en", "et", "fil", "fi", "fr", "gl", "ka", "de", "el", "gu", "ha", "he", "hi", "hu", "is", "id", "ga", "it", "ja", "jv", "kn", "kk", "ky", "ko", "lv", "ln", "lt", "lb", "mk", "ms", "ml", "mt", "mi", "mr", "mn", "ne", "no", "oc", "or", "ps", "fa", "pl", "pt", "pa", "ro", "ru", "sr", "sd", "sk", "sl", "so", "es", "sw", "sv", "tg", "ta", "te", "th", "tr", "uk", "ur", "uz", "vi", "cy" |
accent | string | No | - | "af-standard", "ar-modern-standard", "ar-egyptian", "ar-gulf", "ar-levantine", "ar-bahraini", "ar-kuwaiti", "ar-omani", "ar-qatari", "ar-saudi", "ar-iraqi", "ar-jordanian", "ar-palestinian", "ar-syrian", "ar-algerian", "ar-moroccan", "ar-tunisian", "ar-libyan", "ar-sudanese", "hy-standard", "as-standard", "az-standard", "be-standard", "bn-standard", "bs-standard", "bg-bansko", "bg-rhodopean", "bg-ruse", "bg-sofia", "bg-standard", "bg-varna", "ca-standard", "ceb-standard", "ny-standard", "zh-guangzhou-cantonese", "zh-hong-kong-cantonese", "zh-singapore-cantonese", "zh-beijing-mandarin", "zh-singapore-mandarin", "zh-taiwan-mandarin", "zh-standard", "hr-dubrovnik", "hr-istrian", "hr-standard", "hr-zagreb", "cs-moravian", "cs-prague", "cs-silesian", "cs-standard", "da-copenhagen", "da-jutlandic", "da-standard", "da-zealandic", "nl-brabantian", "nl-flemish", "nl-gronings", "nl-limburgish", "nl-standard", "en-american", "en-australian", "en-british", "en-canadian", "en-indian", "en-irish", "en-jamaican", "en-new-zealand", "en-nigerian", "en-scottish", "en-south-african", "en-african-american", "en-singaporean", "en-boston", "en-chicago", "en-new-york", "en-us-southern", "en-us-midwest", "en-us-northeast", "en-cockney", "en-geordie", "en-received-pronunciation", "en-scouse", "en-welsh", "en-yorkshire", "en-arabic", "en-bulgarian", "en-chinese", "en-croatian", "en-czech", "en-danish", "en-dutch", "en-filipino", "en-finnish", "en-french", "en-german", "en-greek", "en-hindi", "en-indonesian", "en-italian", "en-japanese", "en-korean", "en-malay", "en-polish", "en-portuguese", "en-romanian", "en-russian", "en-slovak", "en-spanish", "en-swedish", "en-tamil", "en-turkish", "en-ukrainian", "et-standard", "fil-cebuano", "fil-ilocano", "fil-standard", "fi-eastern", "fi-helsinki", "fi-standard", "fi-tampere", "fi-turku", "fi-western", "fr-acadian", "fr-african", "fr-belgian", "fr-cajun", "fr-creole", "fr-meridional", "fr-parisian", "fr-quebec", "fr-standard", "fr-swiss", "gl-standard", "ka-standard", "de-bavarian", "de-berlinerisch", "de-rhine-franconian", "de-saxon", "de-standard", "de-swabian", "el-aegean", "el-athenian", "el-cretan", "el-cypriot", "el-macedonian", "el-pontic", "el-standard", "gu-standard", "ha-standard", "he-standard", "hi-awadhi", "hi-bengali", "hi-bhojpuri", "hi-bihari", "hi-chhattisgarhi", "hi-gujarati", "hi-haryanvi", "hi-khariboli", "hi-malvi", "hi-marathi", "hi-marwadi", "hi-punjabi", "hi-rajasthani", "hi-standard", "hi-tamil", "hi-telugu", "hu-standard", "hu-budapest", "hu-eastern", "hu-western", "hu-northern", "hu-southern", "is-standard", "id-balinese", "id-javanese", "id-standard", "id-sundanese", "ga-standard", "it-calabrese", "it-florentine", "it-genoese", "it-milanese", "it-neapolitan", "it-romanesco", "it-sicilian", "it-standard", "it-ticinese", "it-tuscan", "it-venetian", "ja-kansai", "ja-kanto", "ja-kyushu", "ja-okinawa", "ja-standard", "ja-tohoku", "jv-standard", "kn-standard", "kk-standard", "ky-standard", "ko-chungcheong", "ko-gyeongsang", "ko-hamgyong", "ko-jeolla", "ko-seoul", "ko-standard", "lv-standard", "ln-standard", "lt-standard", "lb-standard", "mk-standard", "ms-brunei", "ms-indonesian", "ms-kelantanese", "ms-malaysian", "ms-singaporean", "ms-standard", "ml-standard", "mr-standard", "ne-standard", "no-standard", "no-oslo", "no-bergen", "no-trøndersk", "no-northern", "no-sørlandsk", "ps-standard", "fa-standard", "pl-kashubian", "pl-mazovian", "pl-podhale", "pl-silesian", "pl-standard", "pt-brazilian", "pt-european", "pt-african", "pt-azorean", "pt-creole", "pt-galician", "pt-madeiran", "pa-standard", "ro-banat", "ro-bucovina", "ro-maramures", "ro-moldovan", "ro-oltenia", "ro-standard", "ro-transylvanian", "ru-moscow", "ru-saint-petersburg", "ru-standard", "sr-standard", "sd-standard", "sk-central", "sk-eastern", "sk-standard", "sk-western", "sl-standard", "so-standard", "es-latin-american", "es-peninsular", "es-andalusian", "es-argentine", "es-basque", "es-canary-islands", "es-caribbean", "es-chilean", "es-colombian", "es-cuban", "es-dominican", "es-ecuadorian", "es-galician", "es-mexican", "es-peruvian", "es-puerto-rican", "es-venezuelan", "sw-standard", "sv-gothenburg", "sv-gotland", "sv-norrland", "sv-scanian", "sv-standard", "sv-stockholm", "ta-chennai", "ta-coimbatore", "ta-madurai", "ta-salem", "ta-standard", "ta-thanjavur", "ta-tirunelveli", "te-standard", "th-standard", "tr-aegean", "tr-anatolian", "tr-black-sea", "tr-central", "tr-eastern", "tr-istanbul", "tr-southeastern", "tr-standard", "uk-kiev", "uk-standard", "ur-standard", "vi-standard", "vi-northern", "vi-central", "vi-southern", "cy-standard" |
page_size | integer | No | 10 | 1...100 |
next_page_token | string | null | No | - | - |
Output
Field | Type | Description |
|---|---|---|
status | string | The status of the API request. Allowed values: |
voices | object[] | Array containing available voice profile objects. |
voices[].voice_id | string (uuid) | Unique identifier for the voice profile. |
voices[].voice_name | string | Display name of the voice profile. |
voices[].description | string | The description of the voice. |
voices[].age | string | The age of the voice. Allowed values: |
voices[].gender | string | The gender of the voice. Allowed values: |
voices[].language | string | The primary language code for the voice profile (e.g., |
voices[].accent | string | The specific accent regional variant (e.g., |
voices[].voice_type | string | The type of the voice. Allowed values: |
voices[].voice_state | string | The current state of the voice. Allowed values: |
voices[].preview_url | string | The full URL of the audio preview of the generated voice. |
voices[].generation_info | object | The object containing the information regarding voice profile generation. |
voices[].generation_info.reference_audio_urls | string[] | String array including the URLs to the input audio used for generating the audio profile. |
voices[].generation_info.preview_text | string | The custom text provided to generate audio preview. |
voices[].provider | string | The provider of the voice in case of imported voice profiles. Allowed values: |
voices[].provider_voice_id | string | The original voice ID of the imported voice on the provider platform like ElevenLabs. |
voices[].credential_id | string | The credential ID associated to this import. |
voices[].created_at | string | Date and time of creation in UTC format. |
has_more | boolean | The flag indicating whether more pages are available to query. Allowed values: |
next_page_token | string | null | A string ID that can be passed as |