Использование Refresh Token
Поток с refresh token — это более безопасный способ авторизации API-запросов. Вместо прямого использования одних долгоживущих учетных данных вы обмениваете refresh token на краткоживущий access token. Когда срок действия этого access token истекает, вы выполняете обмен снова.
Чтобы использовать этот поток, выберите параметр refresh token при создании токена в Admin → Developer. При создании вы получите три значения:
-
Client ID – идентифицирует вашу интеграцию
-
Client secret – аутентифицирует запрос на обмен
-
Refresh token – используется для получения access token
Обмен Refresh Token на Access Token
Отправьте запрос POST к endpoint токена Altium Identity.
Token Endpoint
Область |
URL |
Altium 365 |
|
Altium 365 Gov Cloud |
|
Request Body (application/x-www-form-urlencoded)
grant_type=refresh_token
refresh_token={refresh-token}
client_id={client-id}
client_secret={client-secret}
Response
{
"access_token": "...",
"expires_in": 14400,
"token_type": "Bearer",
"refresh_token": "...",
"scope": "..."
}
Используйте access_token из ответа для авторизации API-запросов. expires_in указывается в секундах и показывает, как долго действителен access token.
curl Example:
curl -X POST https://auth.altium.com/connect/token \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode "grant_type=refresh_token" \
--data-urlencode "refresh_token={refresh-token}" \
--data-urlencode "client_id={client-id}" \
--data-urlencode "client_secret={client-secret}"
Интеграция в ваше приложение
Типовой шаблон для долгосрочных интеграций:
-
Надежно храните refresh token, client ID и client secret (например, в переменных окружения или в менеджере секретов).
-
При запуске вызывайте endpoint токена, чтобы получить новый access token.
-
Используйте access token для API-запросов. Кэшируйте его до истечения срока действия.
-
После истечения срока действия (
401 Unauthorized) снова обменяйте refresh token, чтобы получить новый access token.
Срок действия refresh token истекает по истечении периода, заданного при создании (до 1 года). После истечения срока действия refresh token вам потребуется создать новый в Admin → Developer.
См. также