Обработка уведомлений
Структура сообщения
Уведомления отправляются пакетами до 1000 событий как JSON массив объектов фиксированной структуры.
Пример:
[
{
"eventId": "01952268-cd6e-73ce-afbf-c4e5f1cd8d7d",
"eventType": "webpms:creating_booking",
"creationTime": "2025-02-20T08:07:47.1234567Z",
"payload": "{\"propertyId\":\"7291\",\"bookingId\":\"test_booking\"}"
}
]
Отправка событий происходит в порядке их создания - сначала самые старые.
Поле payload содержит строку в формате JSON. Его структура определяется типом события eventType.
Типы событий
События различаются по типам. У идентификатора типа есть префикс - имя модуля (API). На давный момент события публикует только модуль WebPMS.
WebPMS - Брони
| Имя | Описание |
|---|---|
webpms:create_booking | Создание брони |
webpms:cancel_booking | Отмена брони |
webpms:change_room | Изменение номера проживания |
webpms:add_room_group_booking | Добавление проживания в групповую бронь |
webpms:delete_room_group_booking | Удаление проживания из групповой брони |
WebPMS - Заезды
| Имя | Описание |
|---|---|
webpms:check_in | Заезд |
webpms:check_out | Выезд |
webpms:cancel_check_in | Отмена заезда |
webpms:cancel_check_out | Отмена выезда |
webpms:change_check_in_datetime | Изменение даты и времени заезда |
webpms:change_check_out_datetime | Изменение даты и времени выезда |
Ответ на уведомление
Для подтверждения приема данных сервер должен вернуть ответ со статусом 2xx (например, 200 OK).
В случае ошибки отправка пакета повторяется с увеличивающимся интервалом.
Новые события не отправляются до успешного подтверждения обработки предыдущих.