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

37 lines (36 loc) 853 B
import { request as defaultRequest } from "@octokit/request"; async function scopeToken(options) { const { request: optionsRequest, clientType, clientId, clientSecret, token, ...requestOptions } = options; const request = options.request || defaultRequest; const response = await request( "POST /applications/{client_id}/token/scoped", { headers: { authorization: `basic ${btoa(`${clientId}:${clientSecret}`)}` }, client_id: clientId, access_token: token, ...requestOptions } ); const authentication = Object.assign( { clientType, clientId, clientSecret, token: response.data.token }, response.data.expires_at ? { expiresAt: response.data.expires_at } : {} ); return { ...response, authentication }; } export { scopeToken };