# TTS Library - Full Documentation > A comprehensive catalog of text-to-speech voices across multiple providers, languages, and accents. Curated for builders and engineers working on the cutting edge of TTS technology with 4,456+ voices spanning 92 languages and 264 regional dialects across 115+ countries. TTS Library provides access to thousands of high-quality voice samples from leading TTS providers (Telnyx, MiniMax, Inworld, Azure, Rime, Resemble, AWS, FishAudio, XAI, and Humain). Each voice includes metadata for provider, language, country, accent/dialect, gender, and direct audio previews. The platform enables efficient discovery and evaluation of voices for TTS implementation and research across global markets. Live at: https://ttslibrary.com ## Language Coverage **92 total languages** | **264 distinct accents/dialects** | **115+ countries** **European Languages:** - Germanic: German (Standard, Austrian, Swiss), Dutch (Flemish), English (20+ regional variations), Swedish, Norwegian, Danish, Icelandic - Romance: Spanish (Spain, Mexican, Argentinian, Colombian, Venezuelan, etc.), French (France, Canadian, Belgian, Swiss), Portuguese (Brazilian, European), Italian, Romanian, Catalan, Galician - Slavic: Russian, Polish, Czech, Slovak, Croatian, Serbian, Bulgarian, Ukrainian, Slovenian, Bosnian, Macedonian - Other: Greek, Hungarian, Finnish, Estonian, Latvian, Lithuanian, Albanian, Welsh, Irish, Maltese, Basque **Asian Languages:** - Chinese: Mandarin (Mainland, Taiwan, Guangxi, Henan, Liaoning, Shaanxi, Shandong), Cantonese, Wu Chinese (Shanghainese), Sichuanese - East Asian: Japanese, Korean - Southeast Asian: Vietnamese, Thai, Indonesian, Malaysian, Javanese, Sundanese, Filipino, Khmer, Lao, Burmese - South Asian: Hindi, Bengali, Tamil (India, Malaysia, Singapore, Sri Lanka), Telugu, Marathi, Gujarati, Kannada, Malayalam, Punjabi, Urdu (India, Pakistan), Nepali, Sinhala, Assamese, Odia **Middle Eastern & African Languages:** - Arabic: Standard Arabic plus 15+ regional dialects (Egyptian, Saudi, Moroccan, Lebanese, Iraqi, Emirati, Bahraini, Kuwaiti, Omani, Qatari, Algerian, Libyan, Tunisian, Syrian, Yemeni) - Other Middle Eastern: Hebrew, Persian, Turkish, Armenian, Georgian, Azerbaijani, Kurdish (Pashto) - African: Swahili (Kenya, Tanzania), Zulu, Afrikaans, Amharic, Somali, Hausa **Other Global Languages:** - Mongolian, Kazakh, Uzbek, Inuktitut (Latin/Syllabics), various minority and indigenous languages ## Providers | Provider | Voices | Models/Tiers | |----------|--------|--------------| | **Telnyx** | 1,221 | Ultra, Natural, NaturalHD, KokoroTTS, Qwen3TTS, LibriTTS, Bayan, Sukhan | | **MiniMax** | 996 | speech-02-turbo, speech-2.6-turbo, speech-2.8-turbo | | **Inworld** | 807 | TTS2, Max, Mini | | **Azure** | 769 | Neural, Multilingual, DragonHD (Latest/Flash/Omni), MAI-Voice-1 | | **Rime** | 301 | ArcanaV3, Coda | | **Resemble** | 198 | Pro, Turbo | | **AWS** | 123 | Polly Neural, Polly Standard | | **FishAudio** | 30 | s1, s2-pro, s2.1-pro | | **Humain** | 6 | — | | **XAI** | 5 | rex, ara, leo, sal, eve | Note: Rime is its own provider (`provider: rime`), distinct from Telnyx, with its own filter in the UI. ## Voice Data Schema Each voice object in the catalog contains: | Field | Type | Present | Description | Example | |-------|------|---------|-------------|---------| | id | string | Always | Unique voice identifier | `AWS.Polly.Joanna-Neural` | | name | string | Always | Human-readable voice name | `Joanna` | | language | string | Always | BCP-47 language-region code | `en-US` | | provider | string | Always | TTS provider | `aws`, `azure`, `minimax`, `telnyx`, `inworld`, `rime`, `resemble`, `fishaudio`, `xai`, `humain` | | gender | string | Always | Voice gender | `Female`, `Male`, `Neutral` | | model_id | string | Telnyx, MiniMax | Model tier name | `Ultra`, `speech-2.6-turbo` | | age | string | MiniMax only | Voice age category | `adult` | | label | string | MiniMax only | Provider description of the voice | `An expressive adult male voice...` | | accent | string | MiniMax raw, all via API | Accent classification | `American`, `British` | ### Enriched Fields (added by API at request time) These fields are not in the raw data but are added by `/api/voices`: | Field | Description | |-------|-------------| | language_name | Resolved language name from locale mapping (e.g., `English`) | | country_name | Resolved country name from locale mapping (e.g., `United States`) | | accent | Accent classification from voice_accents.json (e.g., `American`) | | description | Short description, 90 char limit (e.g., `AWS Neural American English female voice`) | | uniqueKey | Unique key for rendering (same as id) | ### Voice ID Conventions - **AWS:** `AWS.Polly.{Name}-Neural` or `AWS.Polly.{Name}` (standard) - **Azure:** `Azure.{locale}-{Name}Neural` - **MiniMax:** `Minimax.{model}.{VoiceName}` - **Telnyx:** `Telnyx.{Model}.{name}` - **Inworld:** `Inworld.{Model}.{name}` - **Rime:** `Rime.{Model}.{name}` (its own `provider: rime`, not Telnyx) - **Resemble:** `Resemble.{Model}.{name}` - **FishAudio:** `FishAudio.{Model}.{name}` - **XAI:** `XAI.{name}` ## API Reference Base URL: `https://ttslibrary.com` ### GET /api/voices Filters, deduplicates, and paginates the voice catalog. Voices are sorted with Telnyx Ultra first. **Query Parameters:** | Parameter | Type | Default | Description | |-----------|------|---------|-------------| | search | string | `""` | Full-text search across name, ID, language, provider, accent | | providers | string | `""` | Comma-separated: `telnyx,aws,azure,minimax,inworld,rime,resemble,fishaudio,xai,humain` | | genders | string | `""` | Comma-separated: `Female,Male,Neutral` | | language | string | null | Language name filter: `English`, `Spanish`, `Chinese`, etc. | | country | string | null | Country name filter: `United States`, `Spain`, `Mexico`, etc. | | model | string | null | Model/tier name: `Ultra`, `Neural`, `speech-2.6-turbo`, etc. | | accent | string | null | Accent filter: `American`, `British`, `Castilian`, etc. | | ages | string | `""` | Comma-separated age filter: `adult` | | limit | int | 48 | Results per page | | offset | int | 0 | Pagination offset | **Response:** ```json { "voices": [ { "id": "Telnyx.Ultra.Bella", "name": "Bella", "language": "en-US", "provider": "telnyx", "model_id": "Ultra", "gender": "Female", "uniqueKey": "Telnyx.Ultra.Bella", "accent": "American", "description": "Telnyx Ultra American English female voice", "language_name": "English", "country_name": "United States" } ], "total": 4456, "limit": 48, "offset": 0, "hasMore": true, "performance": { "total_voices": 4456, "filtered_count": 4456, "returned_count": 48 } } ``` **Example Queries:** ``` # All Spanish voices GET /api/voices?language=Spanish # Female Telnyx Ultra voices GET /api/voices?providers=telnyx&genders=Female&model=Ultra # Search by name GET /api/voices?search=joanna # British accent English voices GET /api/voices?language=English&accent=British # All voices (no pagination) GET /api/voices?limit=3000 ``` ### GET /api/metadata Returns all available filter values and statistics. Values are derived dynamically from the voice catalog. **Response:** ```json { "total_voices": 4456, "providers": ["aws", "azure", "fishaudio", "humain", "inworld", "minimax", "resemble", "rime", "telnyx", "xai"], "genders": ["Female", "Male", "Neutral"], "languages": ["Afrikaans", "Albanian", "Amharic", "..."], "countries": ["Afghanistan", "Algeria", "..."], "accents": ["Algerian Arabic", "American", "Argentine", "..."], "stats": { "total_voices": 4456, "total_languages": 92, "total_countries": 115, "total_providers": 10, "total_accents": 264 } } ``` ### GET /api/audio-url Returns an authenticated presigned URL for voice audio preview from Telnyx Cloud Storage. **Query Parameters:** | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | voiceId | string | Yes | Voice ID from catalog (e.g., `AWS.Polly.Joanna-Neural`) | **Response:** ```json { "url": "https://us-central-1.telnyxcloudstorage.com/...", "voiceId": "AWS.Polly.Joanna-Neural", "filename": "AWS_Polly_Joanna-Neural.mp3", "source": "presigned" } ``` ## Core Pages - [Main Voice Directory](https://ttslibrary.com/) - Browse and search all available TTS voices with filters - [Terms of Service](https://ttslibrary.com/terms) - Usage terms and conditions - [Privacy Policy](https://ttslibrary.com/privacy) - Privacy policy and data handling ## Featured Language Collections | Language | URL | Description | |----------|-----|-------------| | Spanish | https://ttslibrary.com/spanish | 10+ accent variations: Spain, Mexico, Argentina, Colombia, Venezuela | | Portuguese | https://ttslibrary.com/portuguese | Brazilian Portuguese and European Portuguese variants | | Chinese | https://ttslibrary.com/chinese | Mandarin regional variations, Cantonese, Wu Chinese | | Korean | https://ttslibrary.com/korean | Korean language TTS voices | | French | https://ttslibrary.com/french | France, Canada, Belgium, and Switzerland accents | | Japanese | https://ttslibrary.com/japanese | Japanese language TTS voices | | German | https://ttslibrary.com/german | Standard German, Austrian, and Swiss German | | Italian | https://ttslibrary.com/italian | Italian language TTS voices | | Russian | https://ttslibrary.com/russian | Russian language TTS voices | | Indonesian | https://ttslibrary.com/indonesian | Indonesian, Malaysian, Javanese, Sundanese | ## Agent Access ### Content Negotiation Request any page with the `Accept: text/markdown` header to receive markdown instead of HTML: ```bash # HTML response (default) curl https://ttslibrary.com/ # Markdown response curl -H "Accept: text/markdown" https://ttslibrary.com/ # Markdown for a language page curl -H "Accept: text/markdown" https://ttslibrary.com/spanish ``` ### Direct Markdown Endpoints | Endpoint | Description | |----------|-------------| | /api/md/sitemap | Markdown table of contents for all pages | | /api/md | Markdown overview of the site | | /api/md/voices | Markdown voice directory with stats | | /api/md/language?lang=spanish | Markdown for a specific language page | ### Documentation Files | File | Description | |------|-------------| | /llms.txt | Concise site overview | | /llms-full.txt | Full documentation (this file) | ## Technical Resources - [XML Sitemap](https://ttslibrary.com/sitemap.xml) - Complete site structure for search engines - [Robots.txt](https://ttslibrary.com/robots.txt) - Crawling permissions and sitemap reference - [LLMs.txt](https://ttslibrary.com/llms.txt) - Concise overview for AI agents - [LLMs Full](https://ttslibrary.com/llms-full.txt) - This file