Try It
Experience the full OAuth flow from a user's perspective
Authorization Code + PKCE + Dilithium3 post-quantum signatures
Get Started in 3 Steps
Standard OAuth 2.0 flow — works with any language or framework
Register your app
Create an organization and register an OAuth client to get a client_id
Add the login button
Redirect users to the authorization endpoint with PKCE
https://app.locke.id/oauth/consent
Handle the callback
Exchange the authorization code for tokens at the token endpoint
POST https://api.locke.id/oauth/token
OAuth Endpoints
Copy these URLs into your OAuth client configuration
api.locke.id with devapi.locke.id for testing
https://app.locke.id/oauth/consent
https://api.locke.id/oauth/token
https://api.locke.id/oauth/userinfo
https://api.locke.id/oauth/introspect
https://api.locke.id/oauth/revoke
https://api.locke.id/.well-known/jwks.json
https://api.locke.id/.well-known/openid-configuration
openid profile email
Integration Examples
<!-- Login with Locke Button --> <a href="/auth/locke" class="login-with-locke"> <img src="https://lockeidentity.com/images/login-with-locke-icon.webp" alt="Locke" width="24" height="24"> Login with Locke </a> <!-- Required CSS --> <style> .login-with-locke { display: inline-flex; align-items: center; gap: 12px; padding: 14px 28px; background: #0891b2; color: white; border-radius: 10px; font-family: 'Merriweather', Georgia, serif; font-size: 16px; text-decoration: none; transition: background 0.2s; } .login-with-locke:hover { background: #0e7490; } </style>
Post-Quantum Signatures
Every ID token includes a pq_sig claim with a Dilithium3 signature. Verify it using the PQ public key from JWKS.
First identity provider with quantum-resistant signatures (NIST FIPS 204)
Security Requirements
- PKCE mandatory (S256)
- Redirect URIs: HTTPS only in production
- Auth codes expire in 10 minutes
- State parameter for CSRF protection