Аутентификация по ссылке из рассылки
Описание метода
Метод позволяет автоматически авторизовать клиента на сайте при переходе по персональной ссылке из рассылки.
Как это работает:
- В рассылке формируется персональная ссылка с тикетом аутентификации
- Клиент переходит по ссылке на сайт
- Сайт извлекает тикет из URL и отправляет запрос в Mindbox API
- Mindbox проверяет тикет и возвращает данные клиента, если тикет корректен
- Сайт авторизует клиента на основе полученных данных
Настройка авторизации через ссылку в чат-боте описана в статье.
Предварительная настройка
Перед началом интеграции убедитесь, что:
-
Создана операция в Mindbox со следующими шагами:
- Клиент — Авторизованный — Получить существующего по тикету
- Клиент — Получить данные по текущему клиенту (настройте нужные поля для возврата)
-
Настроена ссылка перехода в рассылки с использованием тикета. Например универсальный тикет на 5 минут:
https://example.com/auth?ticket=${Ticket.UniversalAuthenticationCustomizableTimeTicket(5)}
Формат запроса
URL и параметры
POST https://api.mindbox.ru/v3/operations/sync?endpointId={Идентификатор точки интеграции}&operation={Название операции}&deviceUUID={Уникальный идентификатор устройства}
Подробнее о работе с V3 API, URL запросов и заголовках: Документация V3 API
Заголовки
| Заголовок | Значение JSON | Значение XML |
|---|---|---|
| Authorization | SecretKey {секретный_ключ_точки_интеграции} | |
| Content-Type | application/json; charset=utf-8 | application/xml; charset=utf-8 |
| Accept | application/json | application/xml |
Тело запроса
Code
Пример запроса
Code
Пример ответа
Состав параметров
Параметры в узле customer зависят от полей, выбранных в шаге операции «Клиент — Получить данные по текущему клиенту». Уточните список у менеджера проекта или посмотрите в описании операции.
Корректный тикет
При передаче валидного тикета API возвращает данные клиента:
Code
Некорректный или просроченный тикет
При передаче невалидного тикета API возвращает ответ без данных клиента:
Code
Обработка ошибок
ProtocolError
Ошибка возникает при передаче пустого значения authenticationTicket:
Code
Обработка результата на сайте
После получения ответа от API:
- Проверьте статус ответа (
status) - Проверьте наличие узла
customerв ответе - Если данные клиента получены — авторизуйте клиента на сайте
- Если данные клиента отсутствуют — перенаправьте на страницу входа
Конкретная реализация зависит от особенностей вашей интеграции.