Одноразовые токены для интеграций

Одноразовые токены для интеграций

Описание

Одноразовые токены интеграций – это JSON Web Token (JWT) токены,
которые могут переданы вместе с запросом на сторонние ресурсы из Web интерфейса amoCRM.
В токене содержится зашифрованная информация о пользователе, из под которого был сделан запрос к вам на ресурс.

Как получить одноразовый токен?

Мы уже реализовали метод в рамках WEB SDK для работы вашей интеграции.
Метод позволяет сделать запрос с подмешиванием заголовка в запрос.
Подробная информация о методе: this.$authorizedAjax().

Алгоритм декодирования токена

Алгоритм подписи токена – HS256.
В качестве ключа используется секретный ключ интеграции (доступ к этому ключу, есть только у владельца интеграции).
Для декодирования токена мы рекомендуем использовать методы нашей библиотеки или одну из публичных библиотек.
Вы также можете использовать отладчик для декодирования, проверки и генерации JWT.

Параметры токена после декодирования

Параметр Тип данных Описание
iss string Адрес аккаунта в amoCRM
aud string Базовый адрес, который сформирован исходя из значения redirect_uri в интеграции
jti string UUID токена
iat int Timestamp, когда был выдан токен
nbf int Timestamp, когда токен начинает действовать
exp int Timestamp, когда токен будет просрочен
account_id int ID аккаунта, из которого сделан запрос
user_id int ID пользователя, из под которого сделан запрос
client_uuid string UUID интеграции, которая сделала запрос

Пример ответа

{
    "iss": "https://subdomain.amocrm.ru",
    "aud": "https://external.integration.io",
    "jti": "d628f123-5123-473e-a123-ed123ef31f8f",
    "iat": 1594204245,
    "nbf": 1594204245,
    "exp": 1594206045,
    "account_id": 12345678,
    "user_id": 87654321,
    "subdomain": "subdomain",
    "client_uuid": "0b0832f6-d123-4123-9123-e73f236833c"
}