OAuth authorization endpoint redirect proxy
const url = 'https://example.com/api/oauth/authorize?response_type=code&code_challenge_method=S256';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/api/oauth/authorize?response_type=code&code_challenge_method=S256'Redirects to Supabase /auth/v1/oauth/authorize while preserving the
original query string. Discovered as authorization_endpoint from
/.well-known/oauth-authorization-server so clients keep AppHandoff as
the authorization-server issuer and use the AppHandoff token proxy for
code exchange and refresh.
Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ”OAuth client identifier.
Client callback URI registered with the OAuth client.
OAuth response type.
PKCE S256 code challenge.
PKCE challenge method.
Opaque client state.
Space-separated OAuth scopes.
Optional RFC 8707 resource indicator. The canonical value is the
/mcp endpoint; the API base URL and legacy /api/mcp-bot endpoint
remain accepted as exact transition aliases.
Responses
Section titled “ Responses ”Redirect to Supabase authorization endpoint.
Headers
Section titled “Headers ”Invalid authorization request. Error codes:
invalid_request— required redirect or client metadata is missinginvalid_client— the CIMD document is rejected or does not authorize the callbackinvalid_target— the RFC 8707 resource is not an accepted MCP audience
object
OAuth server unavailable or CIMD lookup failed (temporarily_unavailable).
object
Human-readable error message
Stable machine-readable error code for client branching
First validation message per field path
object
Structured validation issues (Zod)
object
Seconds until rate limit resets (429 responses)