AsyncFlow API
  1. Voice Management
AsyncFlow API
  • Welcome to AsyncFlow API
  • Get Started
  • API Reference
    • API Status
      • API Status Check
    • Text-to-Speech
      • Text to Speech (Stream)
    • Voice Management
      • Clone Voice
        POST
      • List Voices
        POST
      • Get Voice
        GET
      • Update Voice
        PUT
      • Delete Voice
        DELETE
      • Get Voice Preview
        GET
  1. Voice Management

List Voices

POST
https://api.async.ai/voices
List the available voices from the voice library
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api.async.ai/voices' \
--header 'x-api-key: <api-key>' \
--header 'api-version: v1' \
--header 'Content-Type: application/json' \
--data-raw '{
    "limit": 10
}'
Response Response Example
200 - Example 1
{
    "voices": [
        {
            "voice_id": "voice_id_1",
            "voice_type": "PREDEFINED",
            "name": "Voice 1",
            "description": "Happy male voice with british accent",
            "created_at": "2025-03-30T11:15:32Z",
            "updated_at": "2025-03-30T11:15:32Z",
            "language": "en",
            "gender": "male"
        },
        {
            "voice_id": "voice_id_2",
            "vocie_type": "CUSTOM",
            "name": "Voice 2",
            "description": "Sad female voice with british accent",
            "created_at": "2025-03-30T12:15:52Z",
            "updated_at": "2025-03-30T12:15:52Z",
            "language": "en",
            "gender": "female"
        }
    ],
    "next_cursor": "voice_id_3"
}

Request

Header Params
x-api-key
string 
required
Example:
<api-key>
api-version
string 
required
Example:
v1
Body Params application/json
limit
integer 
optional
The number of voices per page
>= 1<= 100
Default:
10
gender
enum<string> 
optional
Filter voices by gender
Allowed values:
MaleFemaleNeutral
my_voice
boolean 
optional
Whether to return only voices owned by the current user
after
string 
optional
Pagination cursor. 'after' is a voice id that defines the place in the list. For example, if you make a /voices request and receive 100 objects, ending with 'voice_id_1' voice id, your subsequent call can include after='voice_id_1' to fetch the next page of the list
Examples

Responses

🟢200Success
application/json
Body
voices
array [object {10}] 
required
voice_id
string 
required
Voice id
name
string 
required
Voice name
description
string 
required
Voice description
language
enum<string> 
required
Voice language
Allowed value:
en
gender
enum<string> 
optional
Voice gender
Allowed values:
MaleFemaleNeutral
accent
string 
optional
Voice accent
style
string 
optional
Voice style
created_at
string 
required
Voice creation datetime
updated_at
string 
required
Voice update datetime
voice_type
enum<string> 
required
Whether the voice is owned by the current user
Allowed values:
PREDEFINEDCUSTOM
next_cursor
string 
required
Whether there are more voices to fetch (using after='voice_id', where voice_id is the ID of the last voice in the current response)
🟠429RATE_LIMIT_EXCEEDED
🟠401INVALID_API_KEY
🟠404VERSION_NOT_FOUND
🔴500Server Error
Modified at 2025-06-26 10:46:51
Previous
Clone Voice
Next
Get Voice
Built with