Skip to main content
GET
/
v1
/
audio
/
voices
Audio Voices
curl --request GET \
  --url https://kymaapi.com/v1/audio/voices \
  --header 'Authorization: Bearer <token>'

Documentation Index

Fetch the complete documentation index at: https://docs.kymaapi.com/llms.txt

Use this file to discover all available pages before exploring further.

Read-only passthrough of the voice catalog (3,000+ pre-made voices). Cached server-side for 5 minutes, so back-to-back calls share one upstream request. Use this to populate a voice picker UI, then pass the chosen voice_id to POST /v1/audio/speech.
curl https://kymaapi.com/v1/audio/voices \
  -H "Authorization: Bearer $KYMA_API_KEY"

Request

No body. Auth header only.

Response

200 OK, OpenAI-style list shape.
{
  "object": "list",
  "data": [
    {
      "voice_id": "JBFqnCBsd6RMkjVDRZzb",
      "name": "George - Warm, Captivating Storyteller",
      "category": "premade",
      "labels": { "accent": "british", "age": "middle_aged", "gender": "male" },
      "preview_url": "https://...",
      "description": "Mature, calm, warm — ideal for narration"
    }
  ]
}
FieldTypeNotes
voice_idstringOpaque id — pass to /v1/audio/speech
namestringHuman-readable name
categorystringpremade, cloned, etc.
labelsobjectFilter facets — gender, age, accent, use case
preview_urlstringShort audio sample of the voice
descriptionstringFree-text description
The full catalog is large (~100 KB JSON). For a picker UI, fetch once on mount and cache client-side.

Cache headers

HeaderWhat
X-Kyma-Cache: hitCatalog served from Redis
X-Kyma-Cache: missCatalog fetched fresh from upstream

Errors

StatusWhen
401Missing or invalid API key
502Upstream catalog endpoint unavailable

See also