OpenIdProviderMetadata

class OpenIdProviderMetadata(val issuer: String, val authorizationEndpoint: String, val tokenEndpoint: String, val userInfoEndpoint: String? = null, val jwksUri: String, val registrationEndpoint: String? = null, val scopesSupported: List<String>? = null, val responseTypesSupported: List<String>? = null, val responseModesSupported: List<String>? = null, val grantTypesSupported: List<String>? = null, val acrValuesSupported: List<String>? = null, val subjectTypesSupported: List<String>? = null, val idTokenSigningAlgValuesSupported: List<String>? = null, val idTokenEncryptionAlgValuesSupported: List<String>? = null, val idTokenEncryptionEncValuesSupported: List<String>? = null, val userinfoSigningAlgValuesSupported: List<String>? = null, val userinfoEncryptionAlgValuesSupported: List<String>? = null, val userinfoEncryptionEncValuesSupported: List<String>? = null, val requestObjectSigningAlgValuesSupported: List<String>? = null, val requestObjectEncryptionAlgValuesSupported: List<String>? = null, val requestObjectEncryptionEncValuesSupported: List<String>? = null, val tokenEndpointAuthMethodsSupported: List<String>? = null, val tokenEndpointAuthSigningAlgValuesSupported: List<String>? = null, val displayValuesSupported: List<String>? = null, val claimTypesSupported: List<String>? = null, val claimsSupported: List<String>? = null, val claimsLocalesSupported: List<String>? = null, val uiLocalesSupported: List<String>? = null, val claimsParameterSupported: Boolean? = null, val requestParameterSupported: Boolean? = null, val requestUriParameterSupported: Boolean? = null, val requireRequestUriRegistration: Boolean? = null, val authorizationResponseIssParameterSupported: Boolean? = null, val opPolicyUri: String? = null, val opTosUri: String? = null, val endSessionEndpoint: String? = null, val checkSessionIframe: String? = null)(source)

OpenID Connect discovery document containing OAuth 2.0 authorization server metadata.

This class represents the metadata returned from the /.well-known/openid-configuration endpoint as defined in the OpenID Connect Discovery 1.0 specification.

Use HttpClient.fetchOpenIdMetadata to fetch this configuration from an identity provider.

Report a problem

Constructors

Link copied to clipboard
constructor(issuer: String, authorizationEndpoint: String, tokenEndpoint: String, userInfoEndpoint: String? = null, jwksUri: String, registrationEndpoint: String? = null, scopesSupported: List<String>? = null, responseTypesSupported: List<String>? = null, responseModesSupported: List<String>? = null, grantTypesSupported: List<String>? = null, acrValuesSupported: List<String>? = null, subjectTypesSupported: List<String>? = null, idTokenSigningAlgValuesSupported: List<String>? = null, idTokenEncryptionAlgValuesSupported: List<String>? = null, idTokenEncryptionEncValuesSupported: List<String>? = null, userinfoSigningAlgValuesSupported: List<String>? = null, userinfoEncryptionAlgValuesSupported: List<String>? = null, userinfoEncryptionEncValuesSupported: List<String>? = null, requestObjectSigningAlgValuesSupported: List<String>? = null, requestObjectEncryptionAlgValuesSupported: List<String>? = null, requestObjectEncryptionEncValuesSupported: List<String>? = null, tokenEndpointAuthMethodsSupported: List<String>? = null, tokenEndpointAuthSigningAlgValuesSupported: List<String>? = null, displayValuesSupported: List<String>? = null, claimTypesSupported: List<String>? = null, claimsSupported: List<String>? = null, claimsLocalesSupported: List<String>? = null, uiLocalesSupported: List<String>? = null, claimsParameterSupported: Boolean? = null, requestParameterSupported: Boolean? = null, requestUriParameterSupported: Boolean? = null, requireRequestUriRegistration: Boolean? = null, authorizationResponseIssParameterSupported: Boolean? = null, opPolicyUri: String? = null, opTosUri: String? = null, endSessionEndpoint: String? = null, checkSessionIframe: String? = null)

Properties

Link copied to clipboard
@SerialName(value = "acr_values_supported")
val acrValuesSupported: List<String>?

List of Authentication Context Class Reference values supported (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "authorization_endpoint")
val authorizationEndpoint: String

URL of the authorization endpoint for user authentication. See OpenID Connect Discovery 1.0 §3.

@SerialName(value = "authorization_response_iss_parameter_supported")
val authorizationResponseIssParameterSupported: Boolean?

Whether authorization responses include the RFC 9207 iss parameter (optional).

Link copied to clipboard
@SerialName(value = "check_session_iframe")
val checkSessionIframe: String?

URL of the OP iframe for session management (optional). See OpenID Connect Session Management 1.0.

Link copied to clipboard
@SerialName(value = "claims_locales_supported")
val claimsLocalesSupported: List<String>?

Languages and scripts supported for values in claims as BCP 47 language tags (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "claims_parameter_supported")
val claimsParameterSupported: Boolean?

Whether the claims request parameter is supported (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "claims_supported")
val claimsSupported: List<String>?

List of claim names supported by the server (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "claim_types_supported")
val claimTypesSupported: List<String>?

List of claim types supported, e.g. normal, aggregated, distributed (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "display_values_supported")
val displayValuesSupported: List<String>?

List of display parameter values supported, e.g. page, popup, touch, wap (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "end_session_endpoint")
val endSessionEndpoint: String?

URL of the end session endpoint for RP-Initiated Logout (optional). See OpenID Connect Session Management 1.0.

Link copied to clipboard
@SerialName(value = "grant_types_supported")
val grantTypesSupported: List<String>?

List of OAuth 2.0 grant type values supported, e.g. authorization_code, implicit (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "id_token_encryption_alg_values_supported")
val idTokenEncryptionAlgValuesSupported: List<String>?

List of JWE encryption algorithm values supported for ID Tokens (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "id_token_encryption_enc_values_supported")
val idTokenEncryptionEncValuesSupported: List<String>?

List of JWE encryption encoding values supported for ID Tokens (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "id_token_signing_alg_values_supported")
val idTokenSigningAlgValuesSupported: List<String>?

List of JWS signing algorithm values supported for ID Tokens (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard

The authorization server's issuer identifier URL. See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "jwks_uri")
val jwksUri: String

URL of the JSON Web Key Set document containing the server's public keys. See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "op_policy_uri")
val opPolicyUri: String?

URL of the OP's data usage policies document (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "op_tos_uri")
val opTosUri: String?

URL of the OP's terms of service document (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "registration_endpoint")
val registrationEndpoint: String?

URL of the dynamic client registration endpoint (optional). See OpenID Connect Discovery 1.0 §3.

@SerialName(value = "request_object_encryption_alg_values_supported")
val requestObjectEncryptionAlgValuesSupported: List<String>?

List of JWE encryption algorithm values supported for Request Objects (optional). See OpenID Connect Discovery 1.0 §3.

@SerialName(value = "request_object_encryption_enc_values_supported")
val requestObjectEncryptionEncValuesSupported: List<String>?

List of JWE encryption encoding values supported for Request Objects (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "request_object_signing_alg_values_supported")
val requestObjectSigningAlgValuesSupported: List<String>?

List of JWS signing algorithm values supported for Request Objects (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "request_parameter_supported")
val requestParameterSupported: Boolean?

Whether the request request parameter is supported (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "request_uri_parameter_supported")
val requestUriParameterSupported: Boolean?

Whether the request_uri request parameter is supported (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "require_request_uri_registration")
val requireRequestUriRegistration: Boolean?

Whether request_uri values must be pre-registered (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "response_modes_supported")
val responseModesSupported: List<String>?

List of OAuth 2.0 response mode values supported, e.g. query, fragment, form_post (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "response_types_supported")
val responseTypesSupported: List<String>?

List of OAuth 2.0 response types supported by the server (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "scopes_supported")
val scopesSupported: List<String>?

List of OAuth 2.0 scope values supported by the server (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "subject_types_supported")
val subjectTypesSupported: List<String>?

List of Subject Identifier types supported, e.g. pairwise, public (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "token_endpoint")
val tokenEndpoint: String

URL of the token endpoint for obtaining access tokens. See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "token_endpoint_auth_methods_supported")
val tokenEndpointAuthMethodsSupported: List<String>?

List of client authentication methods supported at the token endpoint (optional). See OpenID Connect Discovery 1.0 §3.

@SerialName(value = "token_endpoint_auth_signing_alg_values_supported")
val tokenEndpointAuthSigningAlgValuesSupported: List<String>?

List of JWS signing algorithm values supported at the token endpoint for private_key_jwt and client_secret_jwt (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "ui_locales_supported")
val uiLocalesSupported: List<String>?

Languages and scripts supported for the user interface as BCP 47 language tags (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "userinfo_encryption_alg_values_supported")
val userinfoEncryptionAlgValuesSupported: List<String>?

List of JWE encryption algorithm values supported for the UserInfo endpoint response (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "userinfo_encryption_enc_values_supported")
val userinfoEncryptionEncValuesSupported: List<String>?

List of JWE encryption encoding values supported for the UserInfo endpoint response (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "userinfo_endpoint")
val userInfoEndpoint: String?

URL of the userinfo endpoint for retrieving user claims (optional). See OpenID Connect Discovery 1.0 §3.

Link copied to clipboard
@SerialName(value = "userinfo_signing_alg_values_supported")
val userinfoSigningAlgValuesSupported: List<String>?

List of JWS signing algorithm values supported for the UserInfo endpoint response (optional). See OpenID Connect Discovery 1.0 §3.