Retrieve the list of audio voices

December 23, 2024

Table of contents

  1. Request Headers
  2. Query Parameters
  3. Responses
  4. Model
  5. Examples
  6. Try It

Please configure at least one www.hailuo.ai account for this endpoint, see Setup MiniMax for details.

Over 300 pre-built voices provided supporting the following:

  • Languages: English, Chinese (Mandarin), Spanish, French, Russian, Portuguese, Indonesian, German, Japanese, Korean, Italian, Cantonese
  • Emotions: happy, sad, angry, fearful, disgusted, surprised, neutral
  • Accents: US (General), English, Indian
  • Ages: Young Adult, Adult, Middle-Aged, Senior
  • Genders: Male, Female

https://api.useapi.net/v1/minimax/audio/voices/?…

Request Headers
Authorization: Bearer {API token}
Content-Type: application/json
Query Parameters
  • account is optional when only one www.hailuo.ai account configured. However, if you have multiple accounts configured, this parameter becomes required.

  • tag_list is optional. Specify a comma-separated list of tags using those returned by GET audio/config to narrow down the returned results.
    Example: Italian,Female,Adult,Calm

  • page and page_size are optional. Use them to retrieve the next page of data when the returned has_more field is true.
    Default page_size is 500.

Responses
  • 200 OK

    GET https://api.useapi.net/v1/minimax/audio/voices/?tag_list=Italian,Female,Adult,Calm

    {
        "voice_list": [
            {
                "voice_id": "209544421245048",
                "parent_voice_id": "0",
                "voice_name": "Diligent Leader",
                "tag_list": [
                    "Italian",
                    "Female",
                    "Adult",
                    "Calm",
                    "Standard"
                ],
                "file_id": "",
                "cover_url": "https://cdn.hailuoai.video/moss/staging/2024-11-21-14/moss-audio/voice_cover//1732171514479796864-207331589841022.png?x-oss-process=image/resize,p_50/format,webp",
                "create_time": 1732711650948,
                "update_time": 1732711650948,
                "collected": false,
                "voice_status": 2,
                "sample_audio": "https://cdn.hailuoai.video/moss/staging/2024-11-25-20/moss-audio/voice_sample_audio/1732537441602153587-official_sample_audio/4_it05.mp3",
                "uniq_id": "Italian_DiligentLeader",
                "group_id": "0"
            }
        ],
        "total": 1,
        "has_more": false
    }
    
  • 400 Bad Request

    {
        "error": "<Error message>",
        "code": 400
    }
    
  • 401 Unauthorized

    {
      "error": "Unauthorized",
      "code": 401
    }
    
Model
{   // TypeScript, all fields are optional
    voice_list: {
        voice_id: string
        parent_voice_id: string
        voice_name: string
        tag_list: string[]
        file_id: string
        cover_url: string
        create_time: number
        update_time: number
        collected: boolean
        voice_status: number
        sample_audio: string
        uniq_id: string
        group_id: string
    }[]
    total: number
    has_more: boolean
}
Examples
  • curl "https://api.useapi.net/v1/minimax/audio/voices/?account=account" \
       -H "Accept: application/json" \
       -H "Authorization: Bearer …" 
    
  • const token = "API token";
    const account = "Previously configured account"; 
    const apiUrl = `https://api.useapi.net/v1/minimax/audio/voices/?account=${account}`; 
    const response = await fetch(apiUrl, {
      headers: {
        "Authorization": `Bearer ${token}`,
      },
    });
    const result = await response.json();
    console.log("response", {response, result});
    
  • import requests
    token = "API token"
    account = "Previously configured account"
    apiUrl = f"https://api.useapi.net/v1/minimax/audio/voices/?account={account}"
    headers = {
        "Content-Type": "application/json", 
        "Authorization" : f"Bearer {token}"
    }
    response = requests.get(apiUrl, headers=headers)
    print(response, response.json())
    
Try It