# List voices for OpenAI-compatible apps

`GET https://api.paxalabs.com/v1/audio/voices`

GET /v1/audio/voices lists the Paxa TTS Flash v2 voices at the path OpenAI-compatible apps read to fill their voice picker. Public, no API key required.

Apps such as [Open WebUI](https://paxalabs.com/docs/integrations/open-webui) read this path to fill their voice list when their base URL points at Paxa. Each entry is the one [GET /v1/voices](https://paxalabs.com/docs/api/voices) reports, with the `id` that goes in `voice` on [POST /v1/audio/speech](https://paxalabs.com/docs/api/speech). Because a picker shows a voice without its model, the list holds only the voices of `paxa-tts-flash-v2`, the model OpenAI's model names run on.

## Response

- `voices` (array of objects, required)
  - `voices[].id` (string, required): The stable voice identifier the voice field accepts, for example "khanomkrok". An identifier is stable across model generations and is never reused.
  - `voices[].name` (string, required): Display name, for example "Khanom Krok". For display only; the voice field does not accept it.
  - `voices[].gender` (string, required): Voice gender, "f" or "m".
  - `voices[].language` ("th" or "en" or "zh" or null, required): The one language the voice is designed to speak: "th" (Thai), "en" (English), or "zh" (Mandarin Chinese, Simplified script); it reads the other two with a foreign accent. Null for a voice that speaks all three, as every Paxa TTS Flash v2 voice does.
  - `voices[].accent` (string or null, required): Regional Thai accent: "isan", "northern", or "southern". Null for every other voice.
  - `voices[].experimental` (boolean, required): True for a voice whose delivery may still change while it is tuned. Its id stays stable like every other voice.
  - `voices[].emotion_tags` (array of strings, required): The emotion tag words this voice reads in its text, such as happy in [happy]. Empty for a voice that skips tags, and for every Paxa TTS Flash v2 voice, which reads that model's own tags instead.
  - `voices[].description` (string, required): One-line English description of the voice's character and intended use.
  - `voices[].model` (string, required): The model serving this voice.

## Example

curl:

```bash
curl https://api.paxalabs.com/v1/audio/voices
```

Response:

```json
{
  "voices": [
    {
      "id": "khanomkrok",
      "name": "Khanom Krok",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Calm, unhurried elder voice and the roster's male lead: documentary, heritage storytelling, and narration.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "nomyen",
      "name": "Nom Yen",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Bright, energetic voice and the roster's female lead: promos, social clips, and everyday product speech.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "foithong",
      "name": "Foi Thong",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Captivating narrator for long reads and explainers.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "massaman",
      "name": "Massaman",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Deep, steady leading-man voice for trailers, drama, and announcements.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "thongek",
      "name": "Thong Ek",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Crisp, authoritative read for news bulletins and corporate updates.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "panang",
      "name": "Panang",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Polished, theatrical delivery with a stage actor's gravitas.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "oliang",
      "name": "Oliang",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Relaxed low drawl for chill content and late-night radio.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "sanaechan",
      "name": "Sanae Chan",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Warm, magnetic voice with a late-night glow.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "tubtimkrob",
      "name": "Tub Tim Krob",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Low, intimate delivery for late-night reads.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "mooping",
      "name": "Moo Ping",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Confident, streetwise voice for ads and shorts.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "bualoi",
      "name": "Bua Loi",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Sweet, youthful voice for characters and light stories.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "lukchup",
      "name": "Luk Chup",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Light, childlike voice for characters and playful spots.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "lodchong",
      "name": "Lod Chong",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Slow, close-mic delivery for mindfulness sessions and sleep audio.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "woon",
      "name": "Woon",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Hushed, breathy read for wind-downs and bedtime.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "sangkaya",
      "name": "Sangkaya",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Quiet male voice for sleep tracks and slow narration.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "khaoniao",
      "name": "Khao Niao",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Low, unhurried male voice for guided breathing, wellbeing narration, and slow documentary.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "tomyum",
      "name": "Tom Yum",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Fast, hot, chatty best-friend voice for drama recaps, entertainment news, and social clips.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "khanomchan",
      "name": "Khanom Chan",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Sunny, lively chat voice for social clips and companion apps.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "kaprao",
      "name": "Kaprao",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Relaxed male voice for dialogue, voice assistants, and everyday explainers.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "cookie",
      "name": "Cookie",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Kind, attentive English voice for support lines and onboarding.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "latte",
      "name": "Latte",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Polished English voice for brand films.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "espresso",
      "name": "Espresso",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Deep, dark, unhurried English reader for long fiction, documentaries, and trailers.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "mocha",
      "name": "Mocha",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Close, gentle, low-volume English voice for bedtime, wellness, and companion speech.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "taohuay",
      "name": "Tao Huay",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Tender, melancholy Mandarin voice for drama recaps, audio novels, and companion speech.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "oolong",
      "name": "Oolong",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Low, rich Mandarin narrator for audio novels, brand reads, and late-night stories.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "saku",
      "name": "Saku",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Crisp, composed voice for AI assistants, smart devices, and in-app guidance.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "satay",
      "name": "Satay",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Bold, youthful lead for anime dubs, games, and TV series.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "thongyod",
      "name": "Thong Yod",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Bright, spirited lead for anime dubs, games, and TV series.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "baitoey",
      "name": "Bai Toey",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Patient, reassuring voice for coaching, wellbeing lessons, and step-by-step explanations.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "kluaytod",
      "name": "Kluay Tod",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Goofy, good-natured sidekick for cartoons, kids' content, and playful ads.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "matum",
      "name": "Matum",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Unhurried, precise voice-over for documentaries, travel films, and museum guides.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "hormok",
      "name": "Hor Mok",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Noble, resonant voice for fantasy heroes, epic audio drama, and games.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "nammanao",
      "name": "Nam Manao",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Motivating, high-tempo voice for workouts, fitness apps, and training videos.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "khaotom",
      "name": "Khao Tom",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Good-humored fatherly voice for family brands, how-to clips, and everyday stories.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "salim",
      "name": "Salim",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Easy, chatty everyday voice for vlogs, reviews, and lifestyle clips.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "krayasat",
      "name": "Krayasat",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Unhurried, kindly grandfather voice for bedtime stories, folk tales, and life lessons.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "miangkham",
      "name": "Miang Kham",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Stern, commanding elder voice for grandmother roles, folk tales, and ghost stories.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "todmun",
      "name": "Tod Mun",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Room-lifting host voice for events, shows, and live announcements.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "namprik",
      "name": "Nam Prik",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Husky, low alto for brand stories, drama, and late-night talk.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "khaijiao",
      "name": "Khai Jiao",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "High-energy commentator for esports, match highlights, and launch trailers.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "chuchi",
      "name": "Chu Chi",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Clear, knowledgeable lecturer for classes, e-learning, and explainers.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "krongkraeng",
      "name": "Krong Kraeng",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Machine-like voice for sci-fi characters, games, and system announcements.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "chormuang",
      "name": "Chor Muang",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Hesitant, heartfelt voice for love stories, visual novels, and tender scenes.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "khaolam",
      "name": "Khao Lam",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Low, gentle male voice for love stories, audio drama, and sleep tracks.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "plathu",
      "name": "Pla Thu",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Laid-back student voice for campus content, study vlogs, and everyday chat.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "kaengphet",
      "name": "Kaeng Phet",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Big, dramatic voice for movie trailers, game reveals, and launch films.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "kaengpa",
      "name": "Kaeng Pa",
      "gender": "m",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Rough, menacing villain voice for games, audio drama, and animation.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "makham",
      "name": "Makham",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Cold, cutting voice for villainesses, sorceresses, and dark fantasy.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "puifai",
      "name": "Pui Fai",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Sweet, cheerful idol voice for VTubers, virtual hosts, and fan content.",
      "model": "paxa-tts-flash-v2"
    },
    {
      "id": "tako",
      "name": "Tako",
      "gender": "f",
      "language": null,
      "accent": null,
      "experimental": false,
      "emotion_tags": [],
      "description": "Easygoing reader for audiobooks, recaps, and explainers.",
      "model": "paxa-tts-flash-v2"
    }
  ]
}
```
