Parameters
- authorizationServerUrl: string | URL
- options: {
addClientAuthentication?: (
headers: Headers,
params: URLSearchParams,
url: string | URL,
metadata?: objectOutputType<
{
authorization_endpoint: ZodString;
code_challenge_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
grant_types_supported: ZodOptional<ZodArray<ZodString, "many">>;
introspection_endpoint: ZodOptional<ZodString>;
introspection_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
introspection_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
issuer: ZodString;
registration_endpoint: ZodOptional<ZodString>;
response_modes_supported: ZodOptional<ZodArray<ZodString, "many">>;
response_types_supported: ZodArray<ZodString, "many">;
revocation_endpoint: ZodOptional<ZodString>;
revocation_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
revocation_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
scopes_supported: ZodOptional<ZodArray<ZodString, "many">>;
service_documentation: ZodOptional<ZodString>;
token_endpoint: ZodString;
token_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
token_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
},
ZodTypeAny,
"passthrough",
>,
) => void
| Promise<void>;
authorizationCode: string;
clientInformation: {
client_id: string;
client_id_issued_at?: number;
client_secret?: string;
client_secret_expires_at?: number;
};
codeVerifier: string;
fetchFn?: FetchLike;
metadata?: objectOutputType<
{
authorization_endpoint: ZodString;
code_challenge_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
grant_types_supported: ZodOptional<ZodArray<ZodString, "many">>;
introspection_endpoint: ZodOptional<ZodString>;
introspection_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
introspection_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
issuer: ZodString;
registration_endpoint: ZodOptional<ZodString>;
response_modes_supported: ZodOptional<ZodArray<ZodString, "many">>;
response_types_supported: ZodArray<ZodString, "many">;
revocation_endpoint: ZodOptional<ZodString>;
revocation_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
revocation_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
scopes_supported: ZodOptional<ZodArray<ZodString, "many">>;
service_documentation: ZodOptional<ZodString>;
token_endpoint: ZodString;
token_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
token_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
},
ZodTypeAny,
"passthrough",
>;
redirectUri: string
| URL;
resource?: URL;
}OptionaladdClientAuthentication?: (
headers: Headers,
params: URLSearchParams,
url: string | URL,
metadata?: objectOutputType<
{
authorization_endpoint: ZodString;
code_challenge_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
grant_types_supported: ZodOptional<ZodArray<ZodString, "many">>;
introspection_endpoint: ZodOptional<ZodString>;
introspection_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
introspection_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
issuer: ZodString;
registration_endpoint: ZodOptional<ZodString>;
response_modes_supported: ZodOptional<ZodArray<ZodString, "many">>;
response_types_supported: ZodArray<ZodString, "many">;
revocation_endpoint: ZodOptional<ZodString>;
revocation_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
revocation_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
scopes_supported: ZodOptional<ZodArray<ZodString, "many">>;
service_documentation: ZodOptional<ZodString>;
token_endpoint: ZodString;
token_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
token_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
},
ZodTypeAny,
"passthrough",
>,
) => void
| Promise<void>
authorizationCode: string
clientInformation: {
client_id: string;
client_id_issued_at?: number;
client_secret?: string;
client_secret_expires_at?: number;
}
codeVerifier: string
Optionalmetadata?: objectOutputType<
{
authorization_endpoint: ZodString;
code_challenge_methods_supported: ZodOptional<ZodArray<ZodString, "many">>;
grant_types_supported: ZodOptional<ZodArray<ZodString, "many">>;
introspection_endpoint: ZodOptional<ZodString>;
introspection_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
introspection_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
issuer: ZodString;
registration_endpoint: ZodOptional<ZodString>;
response_modes_supported: ZodOptional<ZodArray<ZodString, "many">>;
response_types_supported: ZodArray<ZodString, "many">;
revocation_endpoint: ZodOptional<ZodString>;
revocation_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
revocation_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
scopes_supported: ZodOptional<ZodArray<ZodString, "many">>;
service_documentation: ZodOptional<ZodString>;
token_endpoint: ZodString;
token_endpoint_auth_methods_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
token_endpoint_auth_signing_alg_values_supported: ZodOptional<
ZodArray<ZodString, "many">,
>;
},
ZodTypeAny,
"passthrough",
>
redirectUri: string | URL
Optionalresource?: URL
Returns Promise<
{
access_token: string;
expires_in?: number;
id_token?: string;
refresh_token?: string;
scope?: string;
token_type: string;
},
>
Promise resolving to OAuth tokens
Exchanges an authorization code for an access token with the given server.
Supports multiple client authentication methods as specified in OAuth 2.1: