CustomProviderUpdateBuilder

@Serializable
data class CustomProviderUpdateBuilder(var name: String? = null, var clientId: String? = null, var clientSecret: String? = null, var acceptableClientIds: List<String>? = null, var scopes: List<String>? = null, var pkceEnabled: Boolean? = null, var attributeMapping: JsonObject? = null, var authorizationParams: JsonObject? = null, var enabled: Boolean? = null, var emailOptional: Boolean? = null, var issuer: String? = null, var discoveryUrl: String? = null, var skipNonceCheck: Boolean? = null, var authorizationUrl: String? = null, var tokenUrl: String? = null, var userinfoUrl: String? = null, var jwksUri: String? = null, val customClaimsAllowlist: List<String>? = null)(source)

Parameters for updating an existing custom provider. All fields are optional. Only provided fields will be updated.

Parameters

name

Human-readable name

clientId

OAuth client ID

clientSecret

OAuth client secret (write-only, not returned in responses)

acceptableClientIds

Additional client IDs accepted during token validation

scopes

OAuth scopes requested during authorization

pkceEnabled

Whether PKCE is enabled

attributeMapping

Mapping of provider attributes to Supabase user attributes

authorizationParams

Additional parameters sent with the authorization request

enabled

Whether the provider is enabled

emailOptional

Whether email is optional for this provider

issuer

OIDC issuer URL

discoveryUrl

OIDC discovery URL

skipNonceCheck

Whether to skip nonce check (OIDC)

authorizationUrl

OAuth2 authorization URL

tokenUrl

OAuth2 token URL

userinfoUrl

OAuth2 userinfo URL

jwksUri

JWKS URI for token verification

customClaimsAllowlist

Allowlist of raw identity provider claim keys to copy verbatim into the user's custom_claims field (within identity_data and raw_user_meta_data), e.g. ["groups", "org_id", "mail"]. This is an opt-in allowlist that defaults to empty (no claims captured) and operates independently from attribute_mapping.

Constructors

Link copied to clipboard
constructor(name: String? = null, clientId: String? = null, clientSecret: String? = null, acceptableClientIds: List<String>? = null, scopes: List<String>? = null, pkceEnabled: Boolean? = null, attributeMapping: JsonObject? = null, authorizationParams: JsonObject? = null, enabled: Boolean? = null, emailOptional: Boolean? = null, issuer: String? = null, discoveryUrl: String? = null, skipNonceCheck: Boolean? = null, authorizationUrl: String? = null, tokenUrl: String? = null, userinfoUrl: String? = null, jwksUri: String? = null, customClaimsAllowlist: List<String>? = null)

Properties

Link copied to clipboard
@SerialName(value = "acceptable_client_ids")
var acceptableClientIds: List<String>?
Link copied to clipboard
@SerialName(value = "attribute_mapping")
var attributeMapping: JsonObject?
Link copied to clipboard
@SerialName(value = "authorization_params")
var authorizationParams: JsonObject?
Link copied to clipboard
@SerialName(value = "authorization_url")
var authorizationUrl: String?
Link copied to clipboard
@SerialName(value = "client_id")
var clientId: String?
Link copied to clipboard
@SerialName(value = "client_secret")
var clientSecret: String?
Link copied to clipboard
@SerialName(value = "custom_claims_allowlist")
val customClaimsAllowlist: List<String>?
Link copied to clipboard
@SerialName(value = "discovery_url")
var discoveryUrl: String?
Link copied to clipboard
@SerialName(value = "email_optional")
var emailOptional: Boolean?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@SerialName(value = "jwks_uri")
var jwksUri: String?
Link copied to clipboard
var name: String?
Link copied to clipboard
@SerialName(value = "pkce_enabled")
var pkceEnabled: Boolean?
Link copied to clipboard
Link copied to clipboard
@SerialName(value = "skip_nonce_check")
var skipNonceCheck: Boolean?
Link copied to clipboard
@SerialName(value = "token_url")
var tokenUrl: String?
Link copied to clipboard
@SerialName(value = "userinfo_url")
var userinfoUrl: String?