Agents
The agent is the unit of voice behavior — system prompt, voice, model routing, and tools — referenced by the calls API.
The agent object
{
"id": "agent_abc123",
"object": "agent",
"name": "Support Agent",
"system_prompt": "You are a support agent...",
"voice_id": "ember",
"stt_model": "voxtral-realtime",
"llm_model": "qwen3.5-4b",
"tts_model": "qwen3-tts",
"language": "en",
"first_message": "Thanks for calling. How can I help?",
"interruption_threshold": 0.5,
"context_window": 20,
"tools": [ {...} ],
"phone_numbers": ["+14155559999"],
"created": 1712345678
}Create an agent
Human-readable name. Shown in the dashboard and logs.
Prompt that defines the agent's behavior. Supports {{variable}} placeholders populated from call context.
TTS voice. Use any built-in or custom voice id from /v1/voices.
Override the default LLM model for this agent.
Override the default STT model for this agent.
Override the default TTS model for this agent.
Primary language; ISO 639-1.
Spoken at call start. Optional — defaults to letting the caller speak first.
0–1. How much concurrent caller speech stops the agent mid-utterance. Default 0.5.
How many prior turns to include in the LLM prompt. Default 10.
Function schemas the agent may invoke. See the chat completions reference for the shape.
HTTPS webhook that receives tool invocations. Required if tools is set.
E.164 numbers that should route inbound calls to this agent.
Up to 20 free-form key/value pairs.
Retrieve / list / update / delete
PATCH accepts any create-body field and applies the diff. DELETE is permanent; existing calls are unaffected, but new inbound calls to the agent's numbers will fail.
List an agent's calls
Query parameters: limit, cursor, status, created_after, created_before.