Or jump from this list on a smaller screen.
This is a page from the Audivra documentation. Developer exports — index: http://127.0.0.1:3000/docs/llms.txt, full corpus: http://127.0.0.1:3000/docs/llms-full.txt, OpenAPI: http://127.0.0.1:3000/docs/openapi.json, Postman: http://127.0.0.1:3000/docs/postman.json. Press ⌘K to search docs.
Voice design
Generate a custom voice from a natural-language description on paid plans.
Custom voice slots
Each voice clone you create consumes one custom voice slot on your plan. Deleting a clone frees the slot. Preset library voices do not use slots.
Designed voices share the same slot pool as cloned voices.
- Starter: 1 custom voice slot
- Creator: 3 custom voice slots
- Developer: 10 custom voice slots
- Free: voice design not available
/api/voices/design/previewSync preview — hear a designed voice before saving. Returns WAV bytes. Bearer sk_live_… or dashboard session.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| prompt | string | Yes | Voice description (8–2000 chars) |
| language | string | No | ISO language code (default: en) |
| gender | string | No | male | female | neutral |
| age | string | No | young | adult | mature |
| accent | string | No | Accent hint, e.g. Kenyan English |
| preview_text | string | No | Phrase synthesized for the preview |
| engine | string | No | f5-tts (default) or xtts-v2 |
Response
audio/wav body
Errors
| Status | Meaning |
|---|---|
| 401 | Missing session or API key |
| 502 | Inference worker unavailable |
/api/voices/designCreate a designed voice from a text prompt. Returns design ID with queued status.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| prompt | string | Yes | Voice description (8–2000 chars) |
| name | string | No | Display name |
| language | string | No | ISO language code (default: en) |
| gender | string | No | male | female | neutral |
| age | string | No | young | adult | mature |
| accent | string | No | Accent hint |
| preview_text | string | No | Reference phrase for speaker generation |
| engine | string | No | f5-tts (default) or xtts-v2 |
| webhook_url | string | No | Optional POST URL for design.ready / design.failed |
Response
{
"design": {
"id": "8a1b2c3d-…",
"name": "Product narrator",
"status": "queued",
"prompt": "Warm Kenyan English female narrator…",
"engine": "f5-tts"
},
"voice_id": "8a1b2c3d-…",
"poll": "/api/voices/design"
}Errors
| Status | Meaning |
|---|---|
| 401 | Missing session or API key |
| 402 | Free plan or custom voice slot limit reached |
Use the design as voice_id
When status is ready, pass the design UUID as voice_id to TTS and generate. Ready designs appear in GET /api/v1/voices with source: design.
GET /api/voices/design
List your voice designs and generation status.
DELETE /api/voices/design/{id}
Delete a design and free a custom voice slot.
Design webhooks
Pass webhook_url on create or set a default in Settings. Audivra POSTs design.ready or design.failed once. See Webhooks.
Concept guide: Voice design. Compare with Voice cloning.