Створення запису
Після того як клієнт обрав послугу, майстра та вільний час — створіть бронювання одним запитом.
Створити бронювання
POST /v1/integration/bookings
Scope: bookings:write
Параметри запиту
| Поле | Тип | Обов'язково | Опис |
|---|---|---|---|
serviceId | number | ✅ | ID послуги |
staffId | number | — | ID майстра. Якщо не вказати — система обере найменш завантаженого |
date | string | ✅ | Дата у форматі YYYY-MM-DD |
time | string | ✅ | Час у форматі HH:MM |
phone | string | ✅ | Телефон клієнта у форматі +380XXXXXXXXX |
firstName | string | — | Ім'я клієнта (до 100 символів) |
lastName | string | — | Прізвище клієнта (до 100 символів) |
email | string | — | Email клієнта |
notes | string | — | Коментар до запису (до 500 символів) |
Приклад
curl -X POST \
-H "X-API-Key: ВАШ_КЛЮЧ" \
-H "Content-Type: application/json" \
-d '{
"serviceId": 1,
"date": "2026-03-15",
"time": "14:00",
"phone": "+380991234567",
"firstName": "Олена",
"lastName": "Коваль",
"email": "[email protected]",
"notes": "Перший візит"
}' \
https://api.zapys24.com/v1/integration/bookings
Відповідь 201 Created
{
"bookingId": 123,
"status": "confirmed",
"serviceName": "Стрижка чоловіча",
"staffName": "Олена Коваль",
"startTime": "2026-03-15T14:00:00.000Z",
"endTime": "2026-03-15T15:00:00.000Z",
"price": 50000,
"notes": "Перший візит"
}
Що відбувається автоматично
- Пошук клієнта — система шукає існуючого клієнта за номером телефону. Якщо не знайдено — створює нового.
- Вибір майстра — якщо
staffIdне вказано, обирається найменш завантажений доступний майстер, який надає цю послугу. - Джерело — бронювання автоматично позначається як створене через API (для вашої статистики).
Можливі помилки
| Код | Коли виникає |
|---|---|
400 | Невалідні дані: неправильний формат дати, телефону, або вказаний час у минулому |
404 | Послугу або майстра не знайдено |
409 | Цей слот вже зайнятий — запропонуйте клієнту інший час |
Перевірити статус запису
GET /v1/integration/bookings/:id
Scope: bookings:read
curl -H "X-API-Key: ВАШ_КЛЮЧ" \
https://api.zapys24.com/v1/integration/bookings/123
Скасувати запис
POST /v1/integration/bookings/:id/cancel
Scope: bookings:write
curl -X POST \
-H "X-API-Key: ВАШ_КЛЮЧ" \
-H "Content-Type: application/json" \
-d '{ "reason": "Клієнт змінив плани" }' \
https://api.zapys24.com/v1/integration/bookings/123/cancel
Поле reason — опціональне.
Обмеження скасування
Власник бізнесу може налаштувати правила скасування:
- Заборонити скасування через API — ви отримаєте
403 Forbidden - Встановити мінімальний час — наприклад, не пізніше ніж за 2 години до запису