Agents are AI-powered voice assistants that handle phone conversations. Each agent has its own personality, knowledge, and capabilities defined through configuration.Agent Components#
An agent consists of three main AI components:Speech-to-Text (STT)#
Converts the caller's speech to text. Currently powered by Deepgram.{
"stt_config": {
"provider": "deepgram",
"model": "nova-3-general",
"language": "nl"
}
}
| Field | Description |
|---|
provider | STT provider (deepgram) |
model | Model name (e.g., nova-3-general) |
language | Language code (e.g., nl, en) |
Language Model (LLM)#
The brain of your agent. Processes the conversation and generates responses.{
"llm_config": {
"provider": "openai",
"model": "gpt-4o-mini",
"temperature": 0.7,
"messages": [
{
"role": "system",
"content": "Je bent een vriendelijke klantenservice medewerker..."
}
],
"tools": []
}
}
| Field | Description |
|---|
provider | LLM provider (openai, anthropic, groq) |
model | Model name (e.g., gpt-4o-mini, claude-3-sonnet) |
temperature | Response randomness (0-2, default 0.7) |
messages | System prompts defining agent behavior |
tools | Custom tools the agent can use (see Custom Tools) |
Text-to-Speech (TTS)#
Converts the agent's text responses to speech.{
"tts_config": {
"provider": "openai",
"voiceId": "alloy"
}
}
| Field | Description |
|---|
provider | TTS provider (openai, elevenlabs, cartesia) |
voiceId | Voice identifier |
model | Model name (for providers that support multiple models) |
Agent Properties#
| Property | Type | Description |
|---|
id | UUID | Unique identifier (auto-generated) |
name | string | Display name for the agent |
business_name | string | Business the agent represents |
notification_email | email | Email for call notifications |
first_message | string | Initial greeting when call starts |
is_active | boolean | Whether agent can handle calls |
webhook_url | URL | Endpoint for webhook events |
webhook_secret | string | Secret for signature verification |
webhook_events | array | Events to send to webhook |
analysis_plan | object | Post-call analysis configuration |
Creating an Agent#
Only the name is required. All other fields have sensible defaults.Updating an Agent#
Use PATCH to update specific fields. Only provided fields are updated.Deleting an Agent#
When you delete an agent, any phone numbers assigned to it will have their agent_id set to null.Webhooks - Configure event notifications Modified at 2025-12-29 14:20:28