Перейти к основному содержимому

Мастер-токен

Мастер-токенMaster-Api-Token Мастер-токен для M2M-интеграций. Позволяет выполнять запросы от имени любого пользователя системы через заголовки Impersonated-User-Id. Получается через ESA с помощью сертификата интегратора. используют для серверных интеграций, где клиентская система выполняет запросы от имени разных пользователей HRlink.

Аутентификация проходит в два этапа. Сначала интегратор формирует Bearer-токен JWT и подписывает его приватным ключом. Затем интегратор вызывает Создать мастер-токен и получает masterToken для запросов к API тенантаTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов..

Что потребуется

ЗначениеОткуда взять
tenantHostАдрес тенантаTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. HRlink, например company.hr-link.ru
integrator_private.keyРегистрация интегратора
integrator.crtРегистрация интегратора
issРегистрация интегратора
subРегистрация интегратора

Процесс настройки

Быстрый маршрут

ШагЧто сделать
1Зарегистрировать интегратора и сертификат
2Сформировать Bearer-токен JWT
3Вызвать Создать мастер-токен
4Передавать masterToken и impersonationImpersonation Выполнение API-запросов от имени другого пользователя при использовании мастер-токена. Пользователь указывается через заголовки Impersonated-User-Id и Impersonated-User-Id-Type.-заголовки в методы HRlink

Получить мастер-токен

curl -X POST "https://esa.hr-link.ru/api/v1/masterTokens" \
-H "Accept: application/json" \
-H "Authorization: Bearer {integratorToken}" \
-H "Content-Type: application/json" \
-d '{"tenantHost": "{tenantHost}"}'

Ответ:

{
"result": true,
"masterToken": "eyJhbGc..."
}

Срок жизни мастер-токенаMaster-Api-Token Мастер-токен для M2M-интеграций. Позволяет выполнять запросы от имени любого пользователя системы через заголовки Impersonated-User-Id. Получается через ESA с помощью сертификата интегратора. задаёт Служба заботы при регистрации интегратора. Типичное значение — 10 минут.

Выполнять запросы от имени пользователя

При каждом запросе к API тенантаTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. передавайте мастер-токенMaster-Api-Token Мастер-токен для M2M-интеграций. Позволяет выполнять запросы от имени любого пользователя системы через заголовки Impersonated-User-Id. Получается через ESA с помощью сертификата интегратора. и пользователя, от имени которого выполняется запрос.

curl -X GET "https://{tenantHost}/api/v2/currentUser" \
-H "Accept: application/json" \
-H "Master-Api-Token: {masterToken}" \
-H "Impersonated-User-Id: {userId}" \
-H "Impersonated-User-Id-Type: EXTERNAL_ID"

Заголовки для работы от имени пользователя

ЗаголовокОбязательностьОписание
Impersonated-User-IdДаИдентификатор пользователя
Impersonated-User-Id-TypeДаТип идентификатора: HR_LINK_ID, SNILS или EXTERNAL_ID
Impersonated-User-Id-External-System-TypeНетТип внешней системы, если используете EXTERNAL_ID из массива userExternalIds

Используйте:

  • EXTERNAL_ID — если при синхронизации сотрудников передаёте externalId;
  • HR_LINK_ID — если знаете внутренний UUID пользователя HRlink;
  • SNILS — если знаете СНИЛС физического лица.

Перевыпуск токенов

  • Bearer-токен JWT формирует интегратор. Создавайте новый токен до истечения предыдущего.
  • Мастер-токенMaster-Api-Token Мастер-токен для M2M-интеграций. Позволяет выполнять запросы от имени любого пользователя системы через заголовки Impersonated-User-Id. Получается через ESA с помощью сертификата интегратора. выпускайте заново до окончания срока его действия. Количество выпусков не ограничено.

При ошибках 51.205, 51.210 или 22.015 см. ошибки аутентификации.