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

# Kallabot API

> Build AI agents that answer and make phone calls and reply on chat, from your own code.

The Kallabot API is the same API the Kallabot dashboard runs on. Anything you can do with an agent in the app, you can script: create and publish agents, place phone calls, start browser calls, read transcripts and recordings, manage numbers, and get a signed webhook the moment something happens.

```bash theme={"dark"}
curl https://api.kallabot.com/v1/agents \
  -H "Authorization: Bearer $KALLABOT_API_KEY"
```

> [card] [5-minute quickstart](https://docs.kallabot.com/developers/quickstart.md)
>
> Create a key, create an agent, place a call and receive a webhook.

> [card] [API reference](https://docs.kallabot.com/api-reference/introduction.md)
>
> Every endpoint, generated from the live backend.

## The basics

> [card] Base URL
>
> `https://api.kallabot.com`
>
> Every path starts with `/v1`.

> [card] [Authentication](https://docs.kallabot.com/developers/authentication.md)
>
> `Authorization: Bearer kb_live_…`
>
> Keys carry scopes.

> [card] Format
>
> JSON in, JSON out. Errors are `application/problem+json`.

## What you can build

> [card] [Agents](https://docs.kallabot.com/developers/agents.md)
>
> Create agents from a JSON config, validate it, version it and publish it.

> [card] [Phone calls](https://docs.kallabot.com/developers/calls.md)
>
> Place outbound calls, schedule them for later, read the transcript, recording and summary.

> [card] [Browser calls](https://docs.kallabot.com/developers/web-calls.md)
>
> Let someone talk to an agent from a web page over WebRTC.

> [card] [Webhooks](https://docs.kallabot.com/developers/webhooks.md)
>
> Signed events for calls, chats, tools, numbers, agents and knowledge.

> [card] [Inbox](https://docs.kallabot.com/developers/inbox.md)
>
> Read WhatsApp, Messenger, Instagram and web chat threads and manage their state.

> [card] [Web chat](https://docs.kallabot.com/developers/web-chat.md)
>
> Create and publish website chat widgets.

## Conventions you can rely on

Every endpoint follows the same rules, so you learn them once.

| Convention | What it means | Guide |
| - | - | - |
| Scopes | Each operation lists the scopes a key needs (`x-required-scopes` in the spec). | [Authentication](https://docs.kallabot.com/developers/authentication.md) |
| Stable error codes | Every error has a machine `code` that never changes. Match on it, not on the message. | [Errors](https://docs.kallabot.com/developers/errors.md) |
| Safe retries | Creates and control actions take an `Idempotency-Key`. A retry never runs twice. | [Idempotency](https://docs.kallabot.com/developers/idempotency.md) |
| No lost updates | Changes to agents and calls send `If-Match` with the revision you read. | [Concurrency](https://docs.kallabot.com/developers/concurrency.md) |
| Cursor pagination | Lists return `data`, `has_more` and `next_cursor`. | [Pagination](https://docs.kallabot.com/developers/pagination.md) |
| Rate limit headers | Every authenticated response says how much budget is left. | [Rate limits](https://docs.kallabot.com/developers/rate-limits.md) |
| Request IDs | Every response has an `X-Request-Id`. Quote it to support. | [Request IDs](https://docs.kallabot.com/developers/request-ids.md) |

## What the API doesn't do yet

We keep this list honest so you don't build on something that isn't there.

* **API keys are made in the dashboard.** A key can't create other keys. See [Authentication](https://docs.kallabot.com/developers/authentication.md).
* **Replying to chats is dashboard-only for now.** API keys can read inbox threads and change their state. See [Inbox](https://docs.kallabot.com/developers/inbox.md).
* **Connecting WhatsApp, Messenger and Instagram** happens in the dashboard through Meta sign-in.
* **No campaigns API.** To call a list, loop over it with [`POST /v1/calls`](https://docs.kallabot.com/developers/calls) or [schedule calls](https://docs.kallabot.com/developers/calls.md#schedule-a-call-for-later).

> [!TIP]
>
> Building with an AI coding tool? Every page has a menu to copy it as Markdown or open it in ChatGPT, Claude or Cursor. The [API reference](https://docs.kallabot.com/api-reference/introduction.md) explains how to download the full OpenAPI spec.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.