Webhooks & API
Caller AI is built with an "API-First" philosophy. This means that almost everything you can do in the dashboard—creating assistants, purchasing numbers, and triggering calls—can also be done programmatically via our REST API.
Authentication
To access the API, you need an API Key. You can generate this in your dashboard under Settings → API Keys. All requests must include this key in the Authorization header.
Core API Endpoints
Below are the most commonly used endpoints for developers integrating Caller AI into their own software.
1. Create an Outbound Call
This endpoint triggers an immediate phone call to a lead.
Payload
{
"phone_number": "+15551234567",
"assistant_id": "asst_987654321",
"customer_details": {
"name": "John Doe",
"email": "john@example.com"
}
}
2. Get Call Details
Retrieve the recording, transcript, and analysis of a completed call.
3. List Assistants
Fetch a list of all configured assistants in your workspace.
Webhooks (Server Notifications)
Webhooks allow Caller AI to push data to your server in real-time when specific events occur. This is more efficient than constantly polling the API.
Setting Up a Webhook
- Go to Settings → Webhooks.
- Click Add Endpoint.
- Enter your server URL (e.g., `https://myserver.com/api/caller-webhook`).
- Select the events you want to subscribe to.
Common Webhook Events
call.started– Triggered when the call is successfully connected.call.finished– Triggered when the call hangs up. Contains duration and status.call.analyzed– Triggered when the transcript and sentiment analysis are ready (usually 10-30 seconds post-call).
{
"event": "call.finished",
"data": {
"call_id": "call_abc123",
"status": "completed",
"duration_seconds": 124,
"cost": 0.45,
"ended_reason": "customer-hung-up"
}
}
Rate Limits
The standard API rate limit is 10 requests per second. If you require higher throughput for enterprise dialing, please contact support to request a limit increase.