- Brand, product, and company names
- Acronyms that should be expanded or spoken letter by letter
- Domain terms, customer names, and internal vocabulary
- Words where normal text normalization is not enough
How Dictionaries Work
The TTS pipeline applies active dictionaries during text processing. When a request contains a matchingword, KugelAudio substitutes the configured
replacement before synthesis. If an entry has ipa, IPA takes precedence
over the replacement text.
By default you do not pass a dictionary ID to generation requests: all
active dictionaries of the API key’s project are applied automatically to
both generation and streaming requests, filtered by the request language.
To control which dictionaries apply for a specific request, use
per-request selection.
Dictionary changes apply to the next synthesis request after the mutation
finishes.
Choose Dictionaries Per Request
Passdictionary_ids on a TTS request to choose exactly which dictionaries
apply to that request:
- Omit the field — default behavior: all active dictionaries apply, filtered by language.
[](empty list) — no dictionary applies to this request.[7, 9](list of IDs) — exactly those dictionaries apply. Explicit selection overrides theis_activeflag (an inactive dictionary applies when selected) and bypasses the language filter.
is_active mean “apply by default”: keep a dictionary inactive
and select it per request when you want full control over which vocabulary
applies to each synthesis.
Dictionary IDs are the same id values returned by the
Dictionaries API and shown in the
dashboard. Unknown IDs or IDs from another project are rejected with a
400 before any audio is generated.
Python
JavaScript
Python
Example Entries
| Word | Replacement | Use case |
|---|---|---|
Postgres | post-gres | Make a technical term sound natural |
Kubernetes | koo-ber-net-eez | Fix a product pronunciation |
API | A P I | Spell an acronym instead of reading it as a word |
Manage Dictionaries
You can manage dictionaries from the dashboard, the SDKs, or the raw API. Use the SDKs for application code and bulk sync jobs; use the API reference when you need exact HTTP fields, response shapes, or error codes.Python SDK
Create dictionaries, add entries, and run atomic glossary syncs.
JavaScript SDK
Manage dictionaries from Node.js, TypeScript, or browser apps.
Java SDK
Manage dictionaries from Java services.
Dictionaries API
Raw HTTP contract for dictionary and entry CRUD.
Bulk Sync
For CMS, PIM, or internal glossary workflows, use the SDK bulk replace method. It atomically upserts every entry in the payload and deletes entries currently in the dictionary whoseword is omitted.
Generate Audio
After a dictionary is active, generate normally. Keep text normalization on unless your application has a specific reason to bypass it.Python