You need a phone number on your account first. Buy one from the dashboard or via
POST /phone-numbers/buy, or bring your own through SIP trunking. Indian numbers also require compliance.Prerequisites
- A Bolna API key (
export BOLNA_API_KEY="bn-xxxx") - An
agent_idto answer calls (create one via the API Quickstart or the dashboard) - At least one phone number on your account
Find your phone number's ID
The link call needs the number’s Copy the
id, not the number itself. List your numbers:Response (array)
id of the number you want to use.Link the agent to the number
Associate your agent with the phone number. After this, inbound calls to that number are answered by the agent.
Response
Call the number
Dial the number from any phone — your agent answers with its welcome message and starts the conversation. After the call, retrieve the transcript exactly like outbound: poll
GET /executions/{id} or use a webhook.Optional: IVR routing
For Plivo numbers you can add anivr_config to the same POST /inbound/setup request to play a menu and route callers to different agents (by department, language, etc.). See IVR for Inbound Calls.
Unlink a number
To stop an agent from answering a number, callPOST /inbound/unlink with the phone number ID.
Run the setup as a script
The dependency-free helper script automates listing numbers and linking the agent:Next steps
Identify callers
Match incoming numbers to your CRM and preload customer data.
Inbound settings
Spam prevention, caller matching, and call limits.
IVR menus
Route callers to different agents with a keypad menu.
Bring your own SIP trunk
Use your existing carrier numbers for inbound.

