OAuth callback URI
Array of permission scopes or space-separated string
Optional
state: stringOptional state parameter for security validation
Full authorization URL for redirect
export function getAuthorizationUrl(
redirectUri: string,
scopes: string[] | string,
state?: string,
): string {
ensureCredentialsSet();
// Convert scopes to string if it's an array, or ensure it's a string if not
const scopeString = Array.isArray(scopes) ? scopes.join(" ") : scopes;
const { clientId } = getCredentials();
const params = {
client_id: clientId,
response_type: "code",
redirect_uri: redirectUri,
scope: scopeString,
state: state || "",
};
return `${AUTH_URL}?${querystring.stringify(params)}`;
}
Generates the authorization URL for initiating OAuth flow