One request. One JSON document. Inside it: the entire map of how to authenticate, fetch tokens, and identify users without hardcoding URLs or guessing formats. This is OIDC Discovery, and it’s the backbone of secure, scalable authentication on the modern web.
OpenID Connect (OIDC) builds on OAuth 2.0, but its discovery process is what makes it powerful at scale. The provider hosts a .well-known/openid-configuration endpoint. Clients read it to find authorization endpoints, token endpoints, supported scopes, response types, signing algorithms, public keys, and more. The client doesn’t need to be manually configured for each change. The server becomes self-describing.
A standard discovery flow starts like this:
- Your application locates the provider’s base URL.
- It appends
/.well-known/openid-configurationand requests it. - The provider responds with a JSON payload detailing endpoints, claims, and capabilities.
- The client consumes this metadata to drive its authentication requests.
This removes guesswork. No hidden steps. The specification makes the process predictable and repeatable. Engineers use it to integrate with identity providers like Auth0, Okta, Azure AD, and many others, without needing to change code every time the provider updates its URLs or keys.