AutoDiscoveryOAuthToken
fun ClientFilters.AutoDiscoveryOAuthToken(authServerDiscovery: AuthServerDiscovery, clientCredentials: Credentials, backend: HttpHandler, clock: Clock = Clock.systemUTC(), scopes: List<String> = emptyList(), resourceUri: Uri? = null, gracePeriod: Duration = Duration.ofSeconds(10)): Filter(source)
Discovers the authorization server and obtains tokens using the standard client_credentials grant. Suitable for machine-to-machine scenarios with a client ID and secret.
fun ClientFilters.AutoDiscoveryOAuthToken(authServerDiscovery: AuthServerDiscovery, clientCredentials: Credentials, backend: HttpHandler, oAuthFlowFilter: Filter, clock: Clock = Clock.systemUTC(), scopes: List<String> = emptyList(), resourceUri: Uri? = null, gracePeriod: Duration = Duration.ofSeconds(10)): Filter(source)
Discovers the authorization server and obtains tokens using a custom initial grant flow but standard client_credentials-based refresh. Use when the initial grant is non-standard (e.g. JWT assertion) but refresh still uses client credentials.
fun ClientFilters.AutoDiscoveryOAuthToken(authServerDiscovery: AuthServerDiscovery, backend: HttpHandler, oAuthFlowFilter: Filter, oAuthRefreshFilter: (RefreshToken) -> Filter, clock: Clock = Clock.systemUTC(), gracePeriod: Duration = Duration.ofSeconds(10)): Filter(source)
Discovers the authorization server and obtains tokens with fully pluggable grant and refresh flows. Use for scenarios where neither the initial grant nor refresh use client credentials (e.g. JWT assertions).