> ## Documentation Index
> Fetch the complete documentation index at: https://vida.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Language, voice, and speech

> Configure compatible language, speech mode, recognition, and voice settings.

Choose speech mode and language before selecting a voice. These settings determine which voices and speech-recognition fields apply.

## Discover voices

Call `GET /api/v2/agent/voices?targetAccountId=...`. Store the returned voice `id` in `agentVoice`; do not store its display name.

Each catalog entry describes supported languages, compatible speech-to-speech engines, standard text-to-speech support, account availability, and any missing plan requirement.

## Language

`agentLang` accepts the language modes documented by the Agent update schema. Match the selected voice to that language. Use the multilingual mode only when the conversation must move between supported languages.

## Standard speech mode

Set `agentS2SEngine` to `null`. Configure recognition separately, then select the exact voice:

* `agentSttEngine`
* `agentSttSmartFormatting`
* `agentVoice`

Choose a voice whose catalog entry reports `supportsStandardTts: true` and includes the selected
language. Vida selects the matching text-to-speech provider from that voice.

## Speech-to-speech mode

Set `agentS2SEngine` to a supported engine:

* `openai-live` uses OpenAI GPT Live.
* `gemini` uses Google Gemini Live.
* `openai` uses the older OpenAI Realtime integration.

Choose a voice whose `compatibleS2SEngines` includes the exact engine. Separate STT and TTS
settings may not apply in this mode. With GPT Live, `agentModel` selects the OpenAI model used for
delegated reasoning and tool decisions; GPT Live itself handles the real-time audio conversation.

Read staging after the update and verify language, mode, and exact voice ID together. Test a staged call before publishing.
