# Bolna

> Build voice AI capabilities into your products. Create conversational voice agents and initiate outbound calls programmatically.

Source: https://cotera.co/docs/reference/tools/individual-tools/bolna

---

**Authentication Type:** Bearer Token

**Description:** Build voice AI capabilities into your products. Create conversational voice agents and initiate outbound calls programmatically.

> **Beta Tool:** Please contact support to get this Beta tool added to your account.

***

## Authentication

To authenticate, you'll need a Bolna API key from [Bolna](https://www.bolna.ai/docs/api-reference/introduction).

1. Log in to the dashboard at <https://platform.bolna.ai>
2. Navigate to the Developers tab
3. Click "Generate a new API Key"
4. Save the key securely (it's only displayed once)

Use the `Authorization: Bearer <api_key>` header for authentication.

***

## Agents

### Create Agent

Create a new voice AI agent with custom configuration.

**Operation Type:** Mutation (Write)

**Parameters:**

* **agent\_config** `object` (required): Core agent configuration
  * **agent\_name** `string`: Name identifier for the agent
  * **agent\_type** `string`: Classification type (e.g., "other")
  * **agent\_welcome\_message** `string`: Initial greeting message
  * **webhook\_url** `string` (nullable): Endpoint for event notifications
  * **tasks** `array`: Array of task definitions with tools\_config, toolchain, and task\_config
* **agent\_prompts** `object` (required): Task-specific instructions
  * **task\_1** `object`: Contains system\_prompt for LLM instructions

**Returns:**

* **agent\_id** `string`: UUID of the created agent
* **status** `string`: Creation status ("created")

**Example Usage:**

```json
{
  "agent_config": {
    "agent_name": "Sales Assistant",
    "agent_type": "other",
    "agent_welcome_message": "Hi! Thanks for calling. How can I help you today?",
    "webhook_url": "https://api.example.com/webhook/bolna"
  },
  "agent_prompts": {
    "task_1": {
      "system_prompt": "You are a helpful sales assistant. Answer questions about our products and schedule demos."
    }
  }
}
```

***

## Calls

### Make Call

Initiate an outbound voice call using a configured AI agent.

**Operation Type:** Mutation (Write)

**Parameters:**

* **agent\_id** `string` (required): Agent UUID to initiate the outbound call
* **recipient\_phone\_number** `string` (required): Phone number in E.164 format (e.g., "+14155551234")
* **from\_phone\_number** `string` (optional): Sender's phone number in E.164 format
* **scheduled\_at** `string` (optional): ISO 8601 datetime for scheduled calls (e.g., "2024-06-05T16:35:00.000+05:30")
* **user\_data** `object` (optional): Custom dynamic variables for the agent prompt

**Returns:**

* **message** `string`: Confirmation message ("done")
* **status** `string`: Call status ("queued")
* **execution\_id** `string`: Unique call identifier (UUID)

**Example Usage:**

```json
{
  "agent_id": "550e8400-e29b-41d4-a716-446655440000",
  "recipient_phone_number": "+14155551234",
  "from_phone_number": "+14155559999",
  "user_data": {
    "customer_name": "John Smith",
    "order_number": "ORD-12345"
  }
}
```

***

## Common Use Cases

**Customer Support:**

* Create voice agents to handle common support queries
* Route complex issues to human agents
* Provide 24/7 automated phone support

**Sales Automation:**

* Outbound calls for lead qualification
* Appointment scheduling and confirmations
* Product information and pricing inquiries

**Notifications:**

* Automated reminder calls for appointments
* Order status updates via voice
* Payment reminders and confirmations

