
Built-in Tools
Bolna provides ready-to-use tools for common voice agent workflows. Click + Add next to any tool to enable it for your agent.Calendar Availability
Check open meeting slots from Cal.com in real-time during a call
Book Appointment
Create calendar bookings directly via Cal.com during the conversation
Transfer Call
Route the call to a human agent or another phone number
Custom Function
Connect any external API endpoint with a custom function schema
Custom Functions
For integrations beyond the built-in tools, use Custom Functions to connect any API endpoint. You can create a custom function in two ways:
Write Manually
Click Write manually to open a JSON editor where you define the function schema from scratch. This gives you full control over the function name, description, parameters, and API configuration.
The fields
name, description, key, and method are mandatory. The key must always be set to "custom_task". Do not change this value.Generate from cURL
Click Generate from cURL to paste an existing cURL command. Bolna will parse the request and auto-generate a function schema that you can review and edit before adding it to your agent.

Pre-call Webhook (optional)
Each custom tool also has two optional inputs to fire a pre-call webhook before the tool’s main API call runs:- Pre-call webhook URL — the endpoint to notify. If left blank, the agent-level Webhook URL is used.
- Pre-call webhook parameters — the JSON body template, with
%(field)ssubstitution for the tool’s arguments. Leaving this empty disables the pre-call webhook.
Managing Added Tools
Once you add a tool, it appears as a configurable card in the Tools Tab.| Action | How to do it |
|---|---|
| Configure | Click the tool card to edit its parameters and API connection |
| Delete | Click the delete icon on the tool card to remove it |
Next Steps
Custom Functions Guide
Full schema reference, examples, and best practices
Transfer Calls
Set up call routing to human agents
Analytics Tab
Configure webhooks and post-call analytics
Context Variables
Pass dynamic data into your function tools

