# Вебхуки

> Получайте подписанные HTTPS-уведомления при смене состояния серверов, выставлении счетов и начале атак.

Source: https://docs.avenlith.com/ru/webhooks  
Category: API и автоматизация  
Last updated: 2026-09-22

## События

| Событие | Когда отправляется |
| --- | --- |
| `server.created`, `server.deleted` | Сервер создан или удалён |
| `server.status_changed` | Работает, остановлен, rescue |
| `invoice.issued`, `invoice.paid` | События биллинга |
| `attack.started`, `attack.ended` | Срабатывание Shield |
| `backup.failed` | Плановый бэкап не завершился |

## Проверка подписи

Каждый запрос содержит `X-Avenlith-Signature` — HMAC-SHA256 исходного тела на секрете эндпоинта:

```js
import crypto from 'node:crypto'

export function verify(rawBody, signature, secret) {
  const expected = crypto.createHmac('sha256', secret).update(rawBody).digest('hex')
  return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(signature))
}
```

## Доставка

Эндпоинт должен ответить кодом 2xx в течение 10 секунд. Неудачные доставки повторяются с экспоненциальной задержкой 24 часа, затем эндпоинт отключается, а владелец проекта получает уведомление.

> **Tip:** > События могут приходить повторно. Используйте поле `event_id` для отсева дубликатов.
