OAuth guides
Use dummyoauth with Clerk
Point Clerk at a dummyoauth mock issuer for local OAuth and OIDC development. Dashboard Integration env vars, redirect URI, and production swap steps.
Clerk expects an OAuth/OIDC issuer, client credentials, and a registered redirect URI. dummyoauth is a mock IdP for development and test. Clerk hosts production users. Use the companion example to exercise OAuth paths before wiring Clerk to real social connections.
Dashboard setup
- Sign in and create a project in the dashboard.
- Add the generic OIDC provider preset.
- Register redirect URI
http://localhost:3003/callbackon your OAuth client. - Add dummy users for consent screens.
- Copy env vars from the Integration panel.
Environment and config
Replace placeholders with values from Integration:
EXAMPLE_APP_ORIGIN=http://localhost:3003
OAUTH_ISSUER=https://dummyoauth.com/p/your-project
OAUTH_CLIENT_ID=<client-id>
OAUTH_CLIENT_SECRET=<client-secret>Limitations
Clerk is not configured to use dummyoauth as its production IdP. This flow is for parallel integration testing in development.
Run the example repo
Clone dummyOAuth/example/clerk (port 3003). In the main dummyoauth monorepo you can also run:
pnpm dev:example:clerkProduction swap
Update issuer and client credentials to your production IdP. Keep variable names stable. Do not use dummyoauth for real user authentication.
Related guides
Local OAuth development: localhost callbacks and mock issuers
Run your app on localhost while OAuth discovery, consent, and tokens come from a mock issuer. Loopback redirect URIs, stable env vars, and common pitfalls.
Mock OAuth and OIDC for development and tests
Use a mock IdP for dev and CI: your app keeps localhost callbacks while discovery, consent, and tokens come from an issuer like dummyÔauth.
Understanding the OAuth 2.0 authorization code flow
How browsers, your app, and an authorization server cooperate to let a user sign in without handing your app their password.