REST API

Обзор

Плагин предоставляет расширенный REST API для программного доступа к данным о бронированиях.
API поддерживает расширенную фильтрацию и возвращает все статусы бронирований с гибкой фильтрацией по диапазону дат.

Базовый URL:
/wp-json/baza-booking-calendar/v1/

Конечные точки

Получить все забронированные слоты с помощью фильтров

Запрос:
GET /wp-json/baza-booking-calendar/v1/slots/

Параметры запроса:

  • статус (строка, необязательный параметр) — фильтрация по статусу бронирования. Поддерживается как один статус, так и несколько значений, разделенных запятыми.
  • start (строка, необязательный параметр) — фильтрация по дате начала. Поддерживаемые форматы: DD.MM.YYYY, DD/MM/YYYY, YYYY-MM-DD.
  • end (строка, необязательный параметр) — фильтрация по дате окончания. Форматы такие же, как для start.
  • filter_by (строка, необязательный параметр) — Тип фильтра: booking_date (по умолчанию) или created_date.
  • flat (логическое значение, необязательный параметр) — возвращает booked_slots в виде плоского массива бронирований вместо сгруппированных по ID услуги. Полезно для интеграций, таких как Zapier, которые ожидают простой список записей.

Плоская структура ответа для интеграций:
/wp-json/baza-booking-calendar/v1/slots/?flat=1

Доступные статусы

  • в процессе — ожидается подтверждение
  • Забронировано — Бронирование подтверждено
  • отклонить — Бронирование отклонено
  • завершено — Бронирование завершено
  • истек — Бронирование с истекшим сроком действия

Примеры запросов

Все бронирования:
/wp-json/baza-booking-calendar/v1/slots/

Только активные бронирования:
/wp-json/baza-booking-calendar/v1/slots/?status=pending,booked

Завершённые и отклоненные бронирования на июнь 2025 года:
/wp-json/baza-booking-calendar/v1/slots/?status=completed,reject&start=01.06.2025&end=30.06.2025

Все бронирования в определенный период:
/wp-json/baza-booking-calendar/v1/slots/?start=01/06/2025&end=30/06/2025

Забронировать время для оказания конкретной услуги

Запрос:
GET /wp-json/baza-booking-calendar/v1/slots/?service={slug}
GET /wp-json/baza-booking-calendar/v1/slots/?service={ID}

Параметры:

  • service (строка, обязательное поле) — сокращённое название или идентификатор службы (например, massage-therapy, yoga-class, или ID).
  • status (строка, необязательный параметр) — То же, что и выше.
  • start (строка, необязательно) — дата начала.
  • end (строка, необязательный параметр) — дата окончания.

Примеры запросов

Все бронирования услуги «Массаж»:
/wp-json/baza-booking-calendar/v1/slots/?service=massage-therapy/wp-json/baza-booking-calendar/v1/slots/
?service={ID}

Активные бронирования услуги «Массаж»:
/wp-json/baza-booking-calendar/v1/slots/?service=massage-therapy&status=pending,booked

Типичные сценарии использования

Узнать график работы для людей с ограниченными возможностями (нерабочие часы, выходные дни)

Запрос:
GET /wp-json/baza-booking-calendar/v1/disabled-time/

Параметры:

  • service (строка, необязательный параметр) — сокращённое название или ID службы (например, studio-1 или ID).
  • start (строка, необязательный параметр) — дата начала.
  • end (строка, необязательный параметр) — Дата окончания.

Примеры запросов

Все заблокированные слоты на ближайшие 3 месяца:
/wp-json/baza-booking-calendar/v1/disabled-time/

Для конкретной услуги:
/wp-json/baza-booking-calendar/v1/disabled-time/?
service=studio-1/wp-json/baza-booking-calendar/v1/disabled-time/?service={ID}

Для конкретного диапазона дат:
/wp-json/baza-booking-calendar/v1/disabled-time/?start=01.12.2025&end=31.12.2025

Последнее изменение: 20.08.2026