Получение обратных вызовов при 2FA

Обратные вызовы при 2FA — URL для получения статусов и результатов верификации

Получение обратных вызовов при 2FA

Коротко: при настройке интеграции можно указать URL, на который платформа будет отправлять результаты верификации и статусы доставки.

Кому подходит

  • Роль: Разработчик
  • Уровень: Опытный

Что это

Обратный вызов (webhook) — это POST-запрос от платформы на ваш URL. Платформа отправляет данные автоматически при событиях.

Где указать URL

В настройках 2FA-интеграции:

  1. Откройте карточку интеграции.
  2. Найдите поле URL, для отправки результата верификации.
  3. Введите URL вашего сервера.
  4. Сохраните.

Что приходит на URL

Формат данных — JSON. Поля:

ПолеЧто содержит
requestIdID запроса
numberНомер телефона
statusСтатус
timestampВремя события
billableСписывается ли плата

Возможные статусы

СтатусЧто означает
SENTСообщение отправлено
DELIVEREDСообщение доставлено
VERIFIEDКод успешно проверен
FAILEDОшибка

Как обрабатывать

  1. Принимайте POST-запросы на ваш URL.
  2. Отвечайте 200 OK как можно быстрее.
  3. Обрабатывайте данные асинхронно — не блокируйте ответ.
  4. Логируйте все вызовы — для диагностики.
  5. Используйте requestId как ключ для связи с отправленным кодом.

Что делать с данными

  • Обновить статус пользователя в вашей системе.
  • Отправить уведомление ответственному сотруднику.
  • Сохранить в лог для аудита.
  • Обновить метрики в аналитике.

Безопасность

  1. Используйте HTTPS — обязательно.
  2. Проверяйте источник — можно ограничить по IP.
  3. Валидируйте данные — не доверяйте слепо.
  4. Не возвращайте чувствительные данные в ответе.

Частые проблемы

СимптомПричинаРешение
Вебхук не приходитURL недоступен извнеПроверьте доступность
Вебхук не приходитFirewall блокируетРазрешите IP платформы
ДублированиеRetry-логикаИспользуйте requestId как ключ
МедленноТяжёлые операции в обработкеОтвечайте 200 сразу, обрабатывайте асинхронно

Пример обработки

  1. Пришёл POST с полями requestId, number, status: VERIFIED.
  2. Ваш сервер отвечает 200 OK.
  3. Асинхронно: обновляете статус пользователя в базе.
  4. Логируете событие.

Что дальше

См. также

Нужна помощь?