Skip to content

Voice ​

The voice surface is split into three pages, by what you are acting on:

You want to…Go to
Place a call — dial, message, agent, or surveyPlace Calls
Control a call that is already in progressLive Call Control
Configure agents, or read the voice catalogVoice Agents

Placing calls ​

Each kind of call has its own endpoint under /telephony/call/… — ring a number, speak a message, connect an AI agent, or run a keypad or spoken survey. Send an Idempotency-Key so a retry never dials twice.

→ Place Calls

Call control ​

Calls in progress are addressed by LiveKit room name, not by session id — the room is what exists while people are still talking. Hold, supervisor mode, hangup, lock, and participant removal all live there.

→ Live Call Control

Agents and the voice catalog ​

Agent configurations decide how an agent behaves; the catalog lists which speech providers and voices this deployment can actually use. Availability follows the vendor keys configured for your environment, so read it at runtime rather than hard-coding a provider list.

→ Voice Agents

Older voice endpoints

Earlier versions of this documentation described /voice/otp, /voice/broadcast, /voice/dial, /voice/sessions, and /voice/ivr_config. Those routes are not part of the current API and will return 404. If you built against them, the pages above are the current surface.