Discovery
/.well-known/openid-configuration and the OAuth
metadata endpoint describe the issuer and supported endpoints.
Daptin
Run Daptin →
OAuth provider guide
Daptin issues tokens to registered applications. This is separate from connecting Daptin to an upstream provider such as Google or GitHub.
Register the client
curl -X POST http://localhost:6336/action/oauth_app/register_client \
-H "Authorization: Bearer $ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"attributes":{
"name":"Example Client",
"redirect_uris":"https://client.example.com/callback",
"scopes":"openid profile email",
"grants":"authorization_code,refresh_token",
"is_confidential":true
}}'
Store the returned client secret immediately; registration and secret rotation return it once. HTTPS is required for non-localhost redirects, wildcards and URI fragments are rejected, and the authorization request must match a registered URI exactly.
Authorization
code_verifier and its
base64url SHA-256 challenge.
/oauth/authorize with the client,
exact redirect URI, allowed scopes, state, challenge, method
S256, and an OIDC nonce when needed.
/oauth/token with the same
redirect URI and original verifier.
PKCE is required. Daptin also reports plain support for compatibility, but new clients should use S256.
Provider endpoints
/.well-known/openid-configuration and the OAuth
metadata endpoint describe the issuer and supported endpoints.
/oauth/userinfo returns permitted identity claims;
/oauth/jwks publishes public RS256 signing keys.
/oauth/introspect lets an authorized confidential
client check whether an access token is active.
/oauth/revoke invalidates access or refresh tokens.
Client-management actions can revoke all tokens for one
application.
Security verification