Работа с гостями
[ Base URL: https://api.plazius.ru/pub ]
В данном разделе описаны основные действия, доступные для работы с гостем.
- Примеры запросов приведены ниже в Swagger.
- Протестировать запросы через Postman можно с помощью коллекции. В них добавлен раздел Работа с гостями.
О сценариях использования запросов API читайте в отдельном разделе.
Запрос /loyalty/guests/save сохраняет данные гостя в базе лояльности.
При создании гостя, он автоматически становится участником программы лояльности.
Если гость с таким же номером телефона уже существует, то запрос обновит данные. При обновлении будут заменены все данные, которые переданы в запросе. Поэтому чтобы изменить значение одного параметра, необходимо передать все текущие параметры с одним измененным. Для обновления только одного параметра, воспользуйтесь запросом /update по частичному обновлению гостя.
Изменить номер телефона пользователя можно только вручную. Для этого обратитесь в техническую поддержку.
Запрос /loyalty/guests/update частично обновляет данные гостя в базе лояльности.
С его помощью обновляются только те данные, которые были переданы в запросе, и только с параметром HasValue = true. Для удаления свойства или возвращения его к значению по умолчанию необходимо:
- Параметр HasValue = true передать
- Параметр Value не передавать.
Обратите внимание: запрос может обновить данные только существующего гостя с указанным номером.
Изменить номер телефона пользователя можно только вручную. Для этого обратитесь в техническую поддержку.
Запрос /loyalty/guests/get получает данные гостя по его номеру телефона.
Запрос также возвращает бонусные карты, которые привязаны к гостю: пластиковые, виртуальные и Wallet.
Запрос /loyalty/guests/getWallet позволяет получить информацию о текущих привилегиях гостя, передав его номер телефона.
Если в запросе указать идентификаторы ресторана, которые относятся к одной сети, то кошелек гостя будет один и тот же, так как является общим на всю сеть.
В зависимости от настроек ранговой механики ресторана в ответе могут отсутствовать данные о подтверждении — confirmation — ранга.
Запрос /loyalty/guests/addBonus добавляет бонусы гостю по его номеру телефона.
Указанный в запросе комментарий будет отображаться в истории изменений баланса бонусов гостя. Бонусный счет один на организацию или сеть.
Запрос /loyalty/guests/writeoffBonus списывает бонусы гостя по его номеру телефона.
Указанный в запросе комментарий будет отображаться в истории изменений баланса бонусов гостя.
- Должен быть всегда положительным, даже после списания бонусов
- Один на организацию или сеть.
Запрос /loyalty/guests/addLoyaltyCard привязывает существующую карту лояльности к гостю.
Можно создать карту лояльности для всей сети. Для этого укажите в запросе идентификатор ресторана, который относится к сети.
Обратите внимание: трек-номер и номер карты должны быть уникальны в разрезе одной организации или сети.
Запрос /loyalty/guests/generateLoyaltyCard создаёт новую виртуальную карту лояльности и привязывает к гостю.
Виртуальная карта может быть только одна. Wallet является виртуальной картой.
Запрос автоматически назначит свободный номер для карты и вернёт его в ответе.
Запрос /loyalty/guests/getOrdersHistory получает историю заказов пользователя по его номеру телефона.
Работа запроса для сетевых заведений:
- Если в запросе указать идентификатор ресторана, который относится к сети, то в ответе будет история заказов для всей сети.
- Для получения истории заказов конкретного ресторана сети используйте фильтр.
- Данные доступны только для тех ресторанов в сети, к которым есть доступ у переданного ApiKey.
По умолчанию история заказов возвращается без детализации, то есть без списка блюд. Чтобы получить детализацию передайте флаг fillOrderDetails.
По умолчанию для пагинации используются параметры, при которых будут получены первые 50 заказов. Сортировка осуществляется по убыванию даты открытия заказа.
Запрос /loyalty/guests/getBonusHistory получает историю изменения бонусного баланса гостя по его номеру телефона.
Работа запроса для сетевых заведений:
- Если в запросе указать идентификатор ресторана, который относится к сети, то в ответе будет история заказов для всей сети.
- Для получения истории заказов конкретного ресторана сети используйте фильтр.
По умолчанию для пагинации используются параметры, при которых будут получены первые 50 заказов. Сортировка осуществляется по убыванию даты открытия заказа.
Запрос /loyalty/guests/generateCode возвращает разовый платёжный код (РПК) для чекина гостя в заказ.
Запрос /loyalty/guests/getMarketingCampaigns возвращает список акций, доступных гостю, с текущим прогрессом по ним (например, накопленные штампики).
Возможные ошибки и их решение
Код ошибки | Описание | Возможные причины |
---|---|---|
3007 | Гость не найден | Гость еще не создан |
9004 | Ошибка валидации входных данных | Не все обязательные данные переданы в запросе или данные в запросе содержат ошибку. |