enВойти в Senler

OAuth в SDK

Сначала установите SDK и получите токены приложения. Client Secret и refresh token должны оставаться на сервере.

Автоматическое обновление OAuth-токена

Автоматическое обновление предназначено для серверной OAuth-интеграции. Передайте все три значения refreshToken, clientId, clientSecret и сохраните новые токены в onTokenRefreshed:

const client = new AiSenlerClient({
  accessToken: "access_token",
  refreshToken: "refresh_token",
  clientId: "client_id",
  clientSecret: process.env.SENLER_CLIENT_SECRET!,
  onTokenRefreshed: async (newAccessToken, newRefreshToken) => {
    await saveTokensAtomically(newAccessToken, newRefreshToken);
  },
});

После ответа 401 SDK один раз вызывает POST /api/apps/oauth/token, обновляет токены, дожидается onTokenRefreshed и повторяет исходный запрос. Заранее по времени истечения токен не обновляется. Частичная конфигурация refresh-механизма не принимается TypeScript-типами.

Token endpoint заменяет refresh token после успешного обновления, поэтому сохраняйте access token и refresh token вместе. Client Secret и refresh token должны оставаться на сервере.

Замените токен вручную

Если токен обновляется вне SDK, замените его перед следующим запросом:

client.accessToken = newAccessToken;

Причины неуспешных запросов описаны в ошибках SDK.