Skip to main content

What are webhooks?

Webhooks allow you to receive real-time call data from Bolna as call status updates happen. When a call status changes, Bolna sends an HTTP POST request to your server with the execution data.
Webhook Configuration card with a Webhook URL field, a See all events link, an Add headers toggle, a Trigger on statuses selector set to All statuses (default) and a Send test button

Webhook Configuration card in the Extractions Tab


Setting up webhooks

1

Go to Extractions Tab

Open your agent and navigate to the Extractions Tab.
2

Enter Webhook URL

In the Webhook Configuration card, enter your endpoint URL in the Webhook URL field. Optionally use Trigger on statuses to limit which statuses are sent, turn on Add headers to attach custom headers, and click Send test to post a sample completed payload.
3

Save Agent

Click Save agent to activate the webhook.
Your webhook endpoint must be publicly accessible and able to receive HTTP POST requests. Bolna will POST data to this URL as call status updates.

IP whitelist

Webhooks are sent from the following IP addresses. Whitelist all three on your server to ensure you receive all webhook events.

Webhook payload

The webhook payload is the same structure as the Raw Call Data you see in Call History. It matches the Get Execution API response format. See the execution payload reference for what each field means.
As call status updates (scheduled → queued → in-progress → completed), Bolna sends POST requests to your webhook with the current execution data.
Test your webhook integration using webhook.site before implementing a production server.

Pre-call webhooks

The same payload shape is reused for pre-call webhooks — notifications fired by a custom function tool or the Transfer Call tool before the tool runs (for example, to send a transfer reason before a call is transferred).
If a tool sets a pre_call_webhook_param without its own pre_call_webhook_url, the pre-call webhook is sent to this agent-level Webhook URL. The endpoint you configure here may therefore receive in-progress pre-call webhooks in addition to your post-call execution webhooks. Distinguish them by the in-progress status and the extra fields from the tool’s pre_call_webhook_param.
Learn more in the Pre-call Webhooks guide, or the Transfer Call guide.

Use cases

CRM integration

Automatically update customer records after each call

Real-time dashboards

Build live dashboards with call metrics and analytics

Workflow automation

Trigger actions based on call outcomes

Data logging

Log all call data to your preferred storage system

Call statuses

View all call statuses

Learn about all valid call status types in Bolna Voice AI

Next steps

Extractions tab

Configure extractions and the call summary

Call history

View raw call data and recordings

Get execution API

Understand the execution data structure

Batch calling

Automate outbound calling campaigns