> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kodostatus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Voice Alerts

> Automatically call on-call responders with AI-powered voice calls when alerts go unacknowledged

<Warning>
  Voice alerts require a **Team** plan or higher. [View pricing](https://kodostatus.com/pricing).
</Warning>

Voice alerts add phone calls as an escalation method. When push notifications or other channels fail to get a response, kodo uses AI-powered voice calls (via Bland AI) to phone the on-call responder and read out the alert details.

## How It Works

```
Alert Fires
    ↓
Push Notification → Acknowledged? ✓ Done
    ↓ (not acknowledged)
Voice Call → Acknowledged? ✓ Done
    ↓ (not answered)
Next Escalation Step
```

Voice calls are triggered as part of [escalation policies](/alerting/on-call#escalation-policies). When an escalation step includes `voice_call` as a notify method, kodo will:

1. Look up the on-call responder's phone number
2. Check that the organization hasn't hit its monthly spend cap
3. Initiate an AI voice call that reads the alert title, severity, and description
4. Log the call attempt in the alert timeline

If the call fails or isn't answered, escalation continues to the next step automatically.

## Setup

### 1. Enable Voice Alerts

1. Go to **Dashboard > Settings > Voice Alerts**
2. Toggle **Enable voice call escalation** on
3. Set a **monthly spend cap** (default: \$50)

### 2. Add Your Phone Number

Each team member needs to add their phone number:

1. In the **Voice Alerts** tab, find the **Your Phone Number** section
2. Select your country code
3. Enter your phone number
4. Click **Save Phone Number**

Supported country codes: US/CA (+1), UK (+44), AU (+61), NZ (+64), IN (+91), DE (+49), FR (+33), JP (+81), CN (+86), BR (+55).

### 3. Add Voice Calls to Escalation Policies

Include `voice_call` as a notify method in your escalation policy steps:

```bash theme={null}
curl -X POST "https://kodostatus.com/api/oncall/policies" \
  -H "X-API-Key: your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Critical Alert Escalation",
    "steps": [
      {
        "targets": [{ "type": "schedule", "id": "sched_api_team" }],
        "notify_methods": ["web_push"],
        "timeout_minutes": 5
      },
      {
        "targets": [{ "type": "schedule", "id": "sched_api_team" }],
        "notify_methods": ["voice_call"],
        "timeout_minutes": 10
      },
      {
        "targets": [{ "type": "user", "id": "user_eng_manager" }],
        "notify_methods": ["voice_call", "email"],
        "timeout_minutes": 15
      }
    ],
    "repeat_count": 2,
    "max_voice_calls_per_incident": 5
  }'
```

This policy sends a push notification first, then calls the on-call responder after 5 minutes if unacknowledged, then calls the engineering manager after another 10 minutes.

## Spend Caps

Voice calls are billed per usage. To prevent unexpected costs, every organization has a monthly spend cap.

* **Default cap**: \$50/month
* **Minimum cap**: \$0 (disables voice calls)
* Adjust in **Settings > Voice Alerts > Monthly spend cap**

When the cap is reached, voice call steps are skipped and escalation falls through to the next step. An event is logged in the alert timeline noting that the voice call was skipped due to the spend cap.

### Usage Dashboard

The Voice Alerts tab shows three metrics:

| Metric               | Description                                       |
| -------------------- | ------------------------------------------------- |
| **Calls this month** | Total voice calls initiated                       |
| **Spend this month** | Total cost of calls in the current billing period |
| **Monthly cap**      | Your configured spend limit                       |

## Push Notifications

The Voice Alerts settings tab also includes browser push notification configuration, which is available on all plans:

* Click **Enable Push Notifications** to subscribe your current browser
* Push notifications are sent as the first step in most escalation policies
* Push works independently of voice alerts — you don't need a Team plan for push

## Safety Guards

Voice alerts include several safeguards:

* **Spend cap** — Calls stop when the monthly limit is reached
* **Max calls per incident** — Configurable limit on how many voice calls a single incident can trigger (set on the escalation policy)
* **Plan gating** — Only Team and Enterprise plans can enable voice calls
* **Phone number required** — Steps are skipped for users without a saved phone number
* **Graceful fallback** — If a voice call fails (network error, Bland AI outage), escalation continues to the next step without blocking
