UNPKG

@octokit/oauth-methods

Version:

Set of stateless request methods to create, check, reset, refresh, and delete user access tokens for OAuth and GitHub Apps

32 lines (31 loc) 896 B
import { request as defaultRequest } from "@octokit/request"; async function resetToken(options) { const request = options.request || defaultRequest; const auth = btoa(`${options.clientId}:${options.clientSecret}`); const response = await request( "PATCH /applications/{client_id}/token", { headers: { authorization: `basic ${auth}` }, client_id: options.clientId, access_token: options.token } ); const authentication = { clientType: options.clientType, clientId: options.clientId, clientSecret: options.clientSecret, token: response.data.token, scopes: response.data.scopes }; if (response.data.expires_at) authentication.expiresAt = response.data.expires_at; if (options.clientType === "github-app") { delete authentication.scopes; } return { ...response, authentication }; } export { resetToken };