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

# Webhooks

> Receive completed call events securely.

Create a webhook with `POST /api/v1/webhooks`:

```json theme={null}
{
  "url": "https://example.com/kola-events",
  "events": ["call.completed"]
}
```

The response contains a `signing_secret` once. Store it securely. Each request includes `X-KolaVoice-Signature`, which is an HMAC-SHA256 hex digest of the exact request body using that secret.

```python theme={null}
import hashlib, hmac

expected = hmac.new(secret.encode(), raw_body, hashlib.sha256).hexdigest()
valid = hmac.compare_digest(expected, request.headers["x-kolavoice-signature"])
```

`call.completed` includes `call_id`, direction, status, ended reason, duration, cost, summary, and transcript. Webhook delivery is asynchronous and never blocks call finalization.


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