Manage AI voice agents with custom STT, LLM, and TTS configurations.Endpoints#
List All Agents#
Retrieve all AI voice agents in your account.Request#
Response#
{
"agents": [
{
"id": "17a0cb75-fa09-4bdd-9a44-92a70d829c88",
"name": "Customer Support Agent",
"business_name": "Acme Corp",
"is_active": true,
"first_message": "Hallo, welkom bij Acme. Waarmee kan ik u helpen?",
"stt_config": {
"provider": "deepgram",
"model": "nova-3-general",
"language": "nl"
},
"llm_config": {
"provider": "openai",
"model": "gpt-4o-mini",
"temperature": 0.7,
"messages": [...]
},
"tts_config": {
"provider": "openai",
"voiceId": "alloy"
},
"created_at": "2025-12-13T10:00:00.000Z",
"updated_at": "2025-12-13T10:00:00.000Z"
}
]
}
Create a New Agent#
Create a new AI voice agent. Only name is required.Request Body#
| Field | Type | Required | Description |
|---|
name | string | Yes | Agent display name |
business_name | string | No | Business the agent represents |
notification_email | email | No | Email for call notifications |
first_message | string | No | Initial greeting message |
is_active | boolean | No | Whether agent is active (default: true) |
webhook_url | URL | No | Webhook URL for call events |
webhook_secret | string | No | Secret for webhook signatures |
webhook_events | array | No | Events to send to webhook |
stt_config | object | No | Speech-to-text configuration |
llm_config | object | No | Language model configuration |
tts_config | object | No | Text-to-speech configuration |
Example Request#
Response (201 Created)#
{
"agent": {
"id": "17a0cb75-fa09-4bdd-9a44-92a70d829c88",
"name": "Customer Support Agent",
"business_name": "Acme Corp",
"is_active": true,
...
}
}
Get an Agent#
Retrieve a specific agent by ID.Parameters#
| Name | In | Type | Description |
|---|
id | path | UUID | Agent UUID |
Request#
Response#
{
"agent": {
"id": "17a0cb75-fa09-4bdd-9a44-92a70d829c88",
"name": "Customer Support Agent",
...
}
}
Update an Agent#
Update an existing agent. Only provided fields will be updated.Parameters#
| Name | In | Type | Description |
|---|
id | path | UUID | Agent UUID |
Request Body#
All fields are optional. Only include fields you want to update.Example Request#
Response#
{
"agent": {
"id": "17a0cb75-fa09-4bdd-9a44-92a70d829c88",
"first_message": "Goedemiddag, u spreekt met Acme support.",
"is_active": false,
...
}
}
Delete an Agent#
Delete an agent. Any phone numbers assigned to this agent will have their agent_id set to null.Parameters#
| Name | In | Type | Description |
|---|
id | path | UUID | Agent UUID |
Request#
Response#
Schemas#
STTConfig#
| Field | Type | Required | Description |
|---|
provider | string | Yes | deepgram |
model | string | Yes | e.g., nova-3-general |
language | string | Yes | e.g., nl, en |
LLMConfig#
| Field | Type | Required | Description |
|---|
provider | string | Yes | openai, anthropic, groq |
model | string | Yes | e.g., gpt-4o-mini |
temperature | number | No | 0-2, default 0.7 |
messages | array | No | System prompts |
tools | array | No | Available tools |
TTSConfig#
| Field | Type | Required | Description |
|---|
provider | string | Yes | openai, elevenlabs, cartesia |
voiceId | string | Yes | Voice identifier |
model | string | No | Model name |
Modified at 2025-12-29 14:17:15