Something went wrong. Try again.
source dump of claude code forked from oppi.li/claude-code
Something went wrong. Try again.
1.6 kB · 53 lines
TypeScript
at main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354import axios from 'axios'import { getOauthConfig, OAUTH_BETA_HEADER } from 'src/constants/oauth.js'import type { OAuthProfileResponse } from 'src/services/oauth/types.js'import { getAnthropicApiKey } from 'src/utils/auth.js'import { getGlobalConfig } from 'src/utils/config.js'import { logError } from 'src/utils/log.js'export async function getOauthProfileFromApiKey(): Promise< OAuthProfileResponse | undefined> { // Assumes interactive session const config = getGlobalConfig() const accountUuid = config.oauthAccount?.accountUuid const apiKey = getAnthropicApiKey()
// Need both account UUID and API key to check if (!accountUuid || !apiKey) { return } const endpoint = `${getOauthConfig().BASE_API_URL}/api/claude_cli_profile` try { const response = await axios.get<OAuthProfileResponse>(endpoint, { headers: { 'x-api-key': apiKey, 'anthropic-beta': OAUTH_BETA_HEADER, }, params: { account_uuid: accountUuid, }, timeout: 10000, }) return response.data } catch (error) { logError(error as Error) }}
export async function getOauthProfileFromOauthToken( accessToken: string,): Promise<OAuthProfileResponse | undefined> { const endpoint = `${getOauthConfig().BASE_API_URL}/api/oauth/profile` try { const response = await axios.get<OAuthProfileResponse>(endpoint, { headers: { Authorization: `Bearer ${accessToken}`, 'Content-Type': 'application/json', }, timeout: 10000, }) return response.data } catch (error) { logError(error as Error) }}