Bookings

Разработчикам / REST API для BOOCO Meteor (v 1.x) / Общее API / Старые endpoint’ы

В этом разделе описываются старые endpoint’ы для работы с бронированиями.

Endpoints

Endpoint
Метод
Описание
Queries
Body (JSON)
Значение поля data
Права (ресурс)
Пример
GET

Получить список бронирований из коллекции bookings. ВАЖНО: рекомендуется использовать /bookings/get

removed

read:any (booking)

http://localhost/api/v1/bookings?removed={"$ne":true} — найти все бронирования (кроме удаленных) с полем removed, которое не равно true

GET

Получение информации о бронировании из коллекции bookings по :id. ВАЖНО: необходимо указать параметр key=_id

key

read:any (booking)

DELETE

Удаление бронирования c :id из коллекции bookings. ВАЖНО: необходимо указать параметр key=_id. Рекомендуется использовать api/v1/bookings/remove/:id

key

delete:any (booking)

POST

Добавление новой записи в коллекцию bookings

Информация о бронировании

create:any (booking)

PUT

Редактирование бронирования из коллекции bookings по :id. Возвращается обновленный элемент. ВАЖНО: необходимо указать параметр key=_id

key

Указываются поля, которые нужно обновить

Информация о бронировании

update:any (booking)

GET

Список бронирований с информацией о помещении

venuestartendremoved

read:any (booking)

GET

Список сегодняшних бронирований

venueremovedvenues

read:any (booking)

POST

Список сегодняшних бронирований

venueremovedvenues

read:any (booking)

GET

Список предстоящих бронирований (включая текущие). Примечание. Отображаются только предстоящие события. По умолчанию удаленные события (флаг removed = true) не отображаются

venuedaysremoved

read:any (booking)

POST

Добавляет новое бронирование с проверкой времени следующей встречи. Если время следующей встречи раньше времени завершения новой встречи, то время обрезается. При добавлении бронирования добавляются поля venueType и venueName

venueIdstartenddurationsubjectorganizer

Данные в формате JSON

create:own (booking)create:any (booking)(см. замечание*)

GET

Завершает текущее бронирование :id

reason

update:any (booking)

GET

Удаляет бронирование :id (пометить как удаленное)

reason

delete:any (booking)

GET

Подтверждение бронирования

reason

update:any (booking)

POST

Подписка на изменения

<SubscriptionInfoBookings>

Параметры подписки

read:any (booking)

* При проверке прав, если email пользователя = полю organizer события, то используется право *:own, иначе — *:any.

Параметры запроса (Queries)

Queries
Описание
Тип значения
Обязательный
Значение по умолчанию
Пример

Определяет, по какому полю делается запрос. Формат: key=<name> или key=<_id>

string
нет

name

id помещения, для которого требуется отображать события

string
нет

Начальная дата периода для поиска в коллекции bookings

нет

Конечная дата периода для поиска в коллекции bookings

нет

Время начала встречи. Если не задано, используется текущее время (формат — ISO Date string)

ISO Date string
да

Время завершения встречи (end или duration должно быть задано) (формат — ISO Date string)

ISO Date string
да

Период встречи в миллисекундах (end или duration должно быть задано)

number
да

Тема встречи

string
да

Email организатора встречи

string
да

Значение флага removed. По умолчанию не отображаются удаленные бронирования. Примечание. Отображаются все события, удовлетворяющие условиям запроса. Добавляются поля venueName и venueType

json
нет

Значение флага removed. По умолчанию не отображаются удаленные бронирования

json
нет

Значение флага removed. Добавляются поля venueName и venueType

json
нет

http://localhost/api/v1/bookings/upcoming?venue=cnf.8.02&days=1 (показать предстоящие на сегодня события для помещения cnf.8.02). Комментарий: отображаются только предстоящие события. По умолчанию удаленные события (флаг removed = true) не отображаются.

Фильтр для отбора помещений. Примечание. Отображаются все события за сегодняшний день. Добавляются поля venueName и venueType

json
нет

http://localhost/api/v1/bookings/today, данные: { "venues": { "groups": "group1", "type": "meeting-room" } } — получить список сегодняшних бронирований для всех переговорных комнат, которые относятся к группе group1

Количество дней вперед, за которые нужно отображать события (для /bookings/upcoming)

number
нет

id помещения

string
нет

Причина (для /bookings/confirm/:id). Причина завершения бронирования (для /bookings/finish/:id). Причина удаления бронирования (для /bookings/remove/:id). Если не указана, то используется строка REST API

string
нет

Параметры URL

Name
Описание
Тип значения

id события

string