---
title: "Зареєструвати вебхук"
method: POST
path: "/v1/webhooks"
tags: ["webhooks"]
---

# Зареєструвати вебхук

`POST /v1/webhooks`

## Request

- Base URL: `https://prro.cloud` (the document declares no server; this is the origin it was published from)
- URL: `https://prro.cloud/v1/webhooks`
- Auth: HTTP bearer

Доставка — POST з тілом {delivery_id, event, attempt, sequence, occurred_at, data} і заголовком X-Signature вигляду "sha256=<HMAC-SHA256 тіла у hex>", порахованим на секреті цієї точки доставки.

Гарантія — «щонайменше один раз»: приймач має відкидати повтори за delivery_id.

Події одного реєстратора надсилаються по одній і по порядку. Подія, яку приймач не прийняв, не затримує наступні: після повтору чи replay вона може прийти пізніше за них. Упорядковуйте події реєстратора за sequence — номером події в межах реєстратора, що зростає (пропуски можливі). Актуальний стан каси — GET /v1/cash-registers/{id}.

## Request body

- object
  - `url` string, required: Абсолютний http(s)-URL приймача.
  - `events` WebhookEvent[]: Події, на які підписані; порожній список або відсутнє поле означає всі події.
  - `secret` string: Секрет HMAC; якщо не вказати, згенерує сервер.

## Response `201`

Створено; секрет повертається рівно один раз.

- object: Точка доставки подій: куди слати й на які саме.
  - `id` string, uuid, required: Ідентифікатор вебхука.
  - `url` string, required: Абсолютний http(s)-URL приймача.
  - `events` WebhookEvent[], required: Порожній список означає підписку на всі події.
  - `active` boolean, required: Доставка ввімкнена; false призупиняє її, не втрачаючи черги.
  - `created_at` string, date-time, required: Коли вебхук створено.
  - `updated_at` string, date-time, required: Коли його востаннє змінювали.
  - `secret` string, required: Отримати повторно неможливо.

## Other responses

- `401`: Немає облікових даних, або вони недійсні, протерміновані чи відкликані.
- `409`: Ліміт вебхуків вичерпано (код webhook_limit_reached): дозволено не більше, ніж кас у клієнта, плюс один; призупинені теж рахуються. У details — limit і used.
- `422`: Конверт помилки.

---

[API](https://skmtc.dev/prro/apis/prro-service-api.md) · [All operations](https://skmtc.dev/prro/apis/prro-service-api/llms.txt) · [OpenAPI document](https://skmtc.dev/prro/apis/prro-service-api/revisions/a8904b68057f?raw)
