Інтеграція з Zapier
На цій сторінці наведено опис API та структури вебхуків, що використовуються в інтеграції Baza Booking Calendar із Zapier. Тут розглядаються питання аутентифікації, доступні події та конкретні поля корисного навантаження, що надсилаються разом із кожною подією.

Аутентифікація
Доступ прив’язаний до вашого ліцензійного ключа Baza Booking Calendar. Цей самий ключ використовується як для підтвердження вашого тарифного плану, так і для автентифікації запитів до наведених нижче кінцевих точок підписки. Для інтеграції із Zapier необхідна ліцензія за тарифним планом «Pro» або «Elite» із увімкненою синхронізацією із Zapier.
Вбудовані кінцеві точки підписки (REST Hook)
Для забезпечення повноцінної роботи тригера Zap Baza Booking Calendar надає кінцеві точки підписки та скасування підписки, завдяки чому Zap може вмикатися та вимикатися автоматично без необхідності вручну копіювати URL-адресу веб-хука.
| Метод | Кінцева точка | Мета |
|---|---|---|
POST | /wp-json/bbc/v1/zapier/subscribe | Реєструє підписку при увімкненні Zap |
DELETE | /wp-json/bbc/v1/zapier/unsubscribe/{id} | Видаляє підписку при вимкненні Zap |
GET | /wp-json/bbc/v1/zapier/subscriptions | Кінцева точка налагодження, перелік активних підписок |
Усі три кінцеві точки вимагають ліцензійного ключа як токена-носія:
Authorization: Bearer YOUR_LICENSE_KEYЗапити на підписку приймають тіло у форматі JSON, в якому вказується, куди надсилати події, а також (за бажанням) за якими подіями слід здійснювати фільтрацію. Порожнє event значення означає підписку на всі події.
POST /wp-json/bbc/v1/zapier/subscribe
{
"target_url": "https://hooks.zapier.com/hooks/standard/...",
"event": "booking.confirmed"
}У відповіді міститься посилання на підписку id, яку можна використовувати для подальшого скасування підписки:
{ "id": "sub_123" }Активні підписки зберігаються в bbc_zapier_subscriptions WordPress. Старе налаштування вебхука з одним URL-адресою (bbc_zapier_url у налаштуваннях адміністратора плагіна) продовжує працювати паралельно, тому це нововведення не впливає на існуючі налаштування Zapier, створені вручну.
Налаштування вебхука
Baza Booking Calendar надсилає повідомлення про події, пов’язані з бронюванням, на URL-адресу вебхука, налаштовану в адміністративних налаштуваннях плагіна в розділі «Baza Booking», «Налаштування», «Zapier». Вебхук спрацьовує автоматично щоразу, коли створюється бронювання або змінюється його статус.
Доступні події
| Подія | Спрацьовує, коли |
|---|---|
booking.created | Клієнт відправляє форму бронювання |
booking.pending | Статус змінюється на «Очікує підтвердження» |
booking.confirmed | Підтверджено оплату / статус змінюється на «Заброньовано» |
booking.cancelled | Статус змінюється на «Скасовано» |
booking.completed | Статус змінюється на «Завершено» |
booking.expired | Статус змінюється на «Термін дії закінчився» |
google_calendar.disconnected | З’єднання з Google Calendar розірвано |
Структура корисного навантаження
Дані запиту для бронювання однієї послуги:
{
"event": "booking.confirmed",
"site_url": "https://example.com",
"timestamp": "2026-08-12T14:00:00+02:00",
"booking_id": 1234,
"order_id": "ABC-001",
"order_status": "booked",
"order_status_label": "Booked",
"service": "Studio / Room A",
"booking_dates": "12.08.2026n10:00 - 12:00",
"booking_dates_raw": "2026/08/12/10:00-12:00",
"booking_price": "150",
"tax_rate": 20,
"tax_amount": 25,
"payment_made": "75",
"remaining_payment": "75",
"customer": {
"name": "Ivan Ivanov",
"phone": "+380991234567",
"email": "ivan@example.com"
},
"admin_url": "https://example.com/wp-admin/admin.php?page=bbc-bookings&edit=1234",
"zoom_url": "https://zoom.us/j/123456789",
"google_meet_url": "https://meet.google.com/abc-defg-hij",
"custom_fields": {
"my_custom_field": "value"
}
}Обсяг бронювання в режимі «кошика», коли в одному замовленні бронюється кілька послуг, service а booking_dates замінюються на cart_items масив:
{
"event": "booking.confirmed",
"site_url": "https://example.com",
"timestamp": "2026-08-12T14:00:00+02:00",
"booking_id": 1234,
"order_id": "ABC-001",
"order_status": "booked",
"order_status_label": "Booked",
"cart_items": [
{
"service": "Studio / Room A",
"booking_dates": "12.08.2026n10:00 - 11:00",
"booking_dates_raw": "2026/08/12/10:00-11:00",
"price": "75.00"
},
{
"service": "Studio / Room B",
"booking_dates": "12.08.2026n11:00 - 12:00",
"booking_dates_raw": "2026/08/12/11:00-12:00",
"price": "75.00"
}
],
"booking_price": "150",
"tax_rate": 20,
"tax_amount": 25,
"payment_made": "75",
"remaining_payment": "75"
}Польова довідка
| Поле | Тип | Опис |
|---|---|---|
event | рядок | Назва події, див. таблицю подій вище |
site_url | рядок | URL-адреса сайту, на якому було здійснено бронювання |
timestamp | рядок | Часовий штамп події у форматі ISO 8601 |
booking_id | ціле | Внутрішній ідентифікатор бронювання |
order_id | рядок | Ідентифікатор замовлення |
order_status | рядок | Статус, що зчитується машиною |
order_status_label | рядок | Мітка статусу, зрозуміла для людини |
service | рядок | Назва послуги (лише для бронювань однієї послуги) |
booking_dates | рядок | Відформатована дата та час бронювання (лише для бронювання однієї послуги) |
booking_dates_raw | рядок | Машинно-читаний діапазон дати/часу |
cart_items | масив | Список заброньованих послуг (лише для бронювань у режимі кошика), кожна з яких містить service, booking_dates, booking_dates_raw, price |
booking_price | рядок | Загальна вартість замовлення |
tax_rate | число | Відсоткова ставка податку |
tax_amount | число | Сума податку |
payment_made | рядок | Сума, сплачена на даний момент |
remaining_payment | рядок | Залишок до сплати |
customer.name | рядок | Ім'я клієнта |
customer.phone | рядок | Номер телефону клієнта |
customer.email | рядок | Електронна адреса клієнта |
admin_url | рядок | Пряме посилання на бронювання в адміністративній панелі WordPress |
zoom_url | рядок | Посилання на зустріч у Zoom, якщо для послуги увімкнено інтеграцію з Zoom |
google_meet_url | рядок | Посилання на Google Meet, якщо воно було згенеровано через синхронізацію з Google Calendar |
custom_fields | об’єкт | Будь-які налаштовані поля форми, визначені для форми бронювання |
Усі поля можна зіставити з будь-яким полем цільового додатка в Zapier, при цьому не потрібно писати код.
Ручне налаштування (вебхуки від Zapier)
Доки нативний додаток Baza Booking Calendar не з’явиться в каталозі додатків Zapier, інтеграцію можна налаштувати вручну за допомогою вбудованого тригера Webhooks у Zapier:
- Перейдіть на сайт zapier.com і натисніть «Створити Zap»
- Виберіть «Webhooks by Zapier» як тригер, Catch Hook
- Скопіюйте URL-адресу вебхука (виглядає так:
https://hooks.zapier.com/hooks/catch/...) - Вставте його в поле «URL-адреса веб-хука» у розділі «Baza Booking», «Налаштування», «Zapier» і збережіть
- Натисніть «Надіслати тестове повідомлення», і Zapier визначить усі доступні поля
- Продовжуйте налаштовувати дії Zap (Google Sheets, Slack, CRM тощо)
Вимоги до плану
Інтеграція з Zapier доступна в тарифних планах «Pro» та «Elite» сервісу Baza Booking Calendar. Вона недоступна під час безкоштовного пробного періоду або без дійсного ліцензійного ключа для тарифів «Pro» чи «Elite».
