====== ProBonus Api ====== Система ProBonus имеет собственное API (REST JSON), которое позволяет интегрироваться с внешними системами и расширять возможности системы лояльности. Например: - Сайт или мобильное приложение ресторана, через которые гость может зарегистрироваться в системе лояльности и получать информацию о воем балансе и операциях. - Сторонние модули (бронирование, доставка) которые могут запрашивать данные по гостям из системы ProBonus и в дальнейшем использовать их в целях. - Внешняя маркетинговая система (CRM) которая может получать данные по гостям из системы ProBonus и в свою очередь начислять на счета гостей бонусы и/или менять уровень скидки. - Внешние системы отчетов и аналитики, которые могут запрашивать данные из системы лояльности ProBonus. **Пример:**[[http://probonus.pro:6896/docs|http://probonus.pro:6896/docs]] - это тестовый экземпляр сервера ProBonus, развернутый на серверах ГК "Карбис". Пользовательский интерфейс доступен по адресу [[http://probonus.pro:6896|http://probonus.pro:6896]] Учетные данные для входа: admin / 111 Данный сервер можно использовать для тестирования запросов к API. Полное описание API встроено в модуль ProBonus и доступно во вкладке ProBonus API {{ :external:pro_bonus:pasted:20231128-145235.png }} {{ :external:pro_bonus:pasted:20231128-145429.png }} =====Авторизация===== ==== Авторизация через токен пользователя для API ==== Данный способ регистрации возможен от версии ProBonus v1.2.60.297 и предназначен для интеграций с внешними системами. Токен такого пользователя не имеет ограничения использования по времени. Если токен утрачен, то его нужно [[external:pro_bonus:03_probonus_work:01_webadmin:01_users#пользователь_для_api|заново генерировать в админке ProBonus]] и прописать на стороне внешней системы заново. Готовый токен сначала нужно скопировать из админки и только потом сохранить. {{ :external:pro_bonus:2026-02-13_14-49-52.png |}} Проверить работоспособность токена можно через API ProBonus. Пример: На скрине изображены 3 шага: - На основной странице кликнуть "autorize". - В окне авторизации в поле "APIKeyHeader" ввести скопированный токен. - В окне авторизации "autorize" После авторизации станут доступны для работы методы {{ :external:pro_bonus:2026-02-13_14-54-56_2_.png |}} ==== Авторизация через логин/пароль пользователя ==== Аутентификация по данным пользователя является устаревшим, но рабочим способом взаимодействия с API. Токен такого пользователя имеет ограниченное время действия. Время действия токена можно настроить из [[external:pro_bonus:01_setup:05_server_setting|админки]]. Аутентификация возможна через токен, который можно получить в разделе "Auth". (Если время жизни токена закончилось, аутентификацию нужно повторить, либо обновить через /api/v0/auth/refresh_token.) Для того, чтобы получить нужный "accessToken", в интерфейсе "Probonus API", нужно раскрыть на эндпоинт /api/v0/auth/login и нажать "Try it out". {{ :external:pro_bonus:2024-03-04_15-24-45.png |}} Указать Логин и Пароль. Указать нужно в кавычках (вместо "string"), как показано в примере. После чего нажать на кнопку "Execute". {{ :external:pro_bonus:2024-03-04_17-33-32.png |}} Ниже откроется окно "Response body" в нём указан нужный токен. Его нужно скопировать без кавычек. {{ :external:pro_bonus:2024-03-04_17-42-37.png |}} Далее нужно нажать кнопку "Autorize" в шапке страницы и вставить скопированный токен, во всплывающем окне. После чего нажать дублирующую клавишу "Autorize", в этом же окне. {{ :external:pro_bonus:2024-03-04_15-25-37.png |}}