uHamkorДокументация
Документация API

API идентификации пользователей

Подключите вашу базу пользователей к виджету для автоматической идентификации авторизованных пользователей.

Обзор

Если в вашем сервисе используется собственная система аутентификации, вы можете передать уникальный external_user_id при инициализации виджета. Сервер поддержки автоматически обратится к вашему API, чтобы получить актуальные данные клиента (имя, контакты, статус).


⚙️ Настройка интеграции

Для подключения выполните следующие шаги:

  1. Активация: В настройках проекта перейдите в раздел «Интеграция API» и включите его.

  2. Конфигурация URL: Укажите адрес вашего эндпоинта.

    • Placeholder: Используйте {id} для динамических путей (например, https://api.site.com/users/{id}).

    • Query-параметр: Если {id} не указан, мы добавим его автоматически в формате ?id=123.

  3. Безопасность: Добавьте необходимые заголовки авторизации (например, Authorization: Bearer <token>), если ваш API защищен.


Спецификация запроса

Наш сервер отправляет запрос в момент инициализации чата пользователем.

Метод: GET

Тайм-аут: 10 секунд

Формат данных: JSON

✅ Формат успешного ответа (200 OK)

API должен возвращать объект со следующими полями (все поля опциональны, но крайне рекомендуемы):

JSON

{
  "first_name": "Иван",
  "last_name": "Иванов",
  "phone_number": "+79001234567",
  "email": "ivanov@example.com",
  "metadata": {
    "plan": "Premium",
    "registration_date": "2024-05-20",
    "is_active": true
  }
}

⚠️ Обработка ошибок

Система реагирует на HTTP-статусы следующим образом:

  • 200 OK: Успешно. Данные подтянуты, профиль в панели оператора обновлен.

  • 404 Not Found: Пользователь не найден. Виджет продолжит работу, считая пользователя новым.

  • 401 / 403: Ошибка доступа. Проблема фиксируется в логах; проверьте корректность API-ключей в настройках.

  • 500+: Внутренняя ошибка вашего сервера. Запрос игнорируется.


💡 Совет по внедрению

  • Оптимизация скорости: Настройте быстрый ответ API. Тайм-аут составляет 10 секунд; медленные запросы к базе данных могут привести к тому, что данные не успеют подгрузиться в чат.

  • Поле Metadata: Передавайте важный контекст (тариф, ID транзакции) через metadata. Это поможет операторам решать вопросы быстрее, не запрашивая лишних деталей у клиента.

  • Важные поля: Все поля необязательны, но для качественной поддержки рекомендуется возвращать как минимум first_name и email.