Skip to content
Visit Kinde’s marketing website
Kinde
Docs
SDKs
APIs
Sign in
GitHub
Theme
Light
Dark
System
Search docs
Get started
Guides
First things first
Add Kinde to your codebase
Common setup tasks
Common errors and codes
Learn about Kinde
What does Kinde do?
Supported data regions
Kinde product security information
Supported browsers
Switch to Kinde
Migration overview
Auth0
FusionAuth
Clerk
Supabase
Firebase
AWS Cognito
Azure B2C
ASP.NET Identity
Bulk import
Create users with API
Drip-feed migration
Connect
Get app keys
Set callback and redirect URLs
Customize email sender
APIs and SDKs
About Kinde APIs
Team and account
Add team members
Team member roles in Kinde
Claim credits with Kinde perk code
Access Kinde via an enterprise connection
Add MFA for accessing Kinde
Get a referral code for sharing Kinde
Build on Kinde
Set up options
Kinde for different business models
Run multiple businesses
Configure attack protection
Set up and manage user access requests
Set global access policies
Manage your code in Kinde
Self-service portal
Customer self-service portal
Enable self-serve portal for orgs
Enable self-service portal for users
Environments
Manage environments
Go live checklist
Applications
Applications in Kinde
Add and manage applications
Rotate client secret
Authenticating single-page apps (SPAs) with Kinde
Set a default login route for an application
Organizations
About organizations
Kinde organizations for developers
Add and manage organizations
Import organizations
Manage user sign up to organizations
Allow organization creation on sign up
Set access policies for an organization
Give API access to an organization using M2M
Delete an organization
Customize email sender for an organization
Customize the self-serve portal for an organization
Tokens
Configure token and session expiry
Access tokens
ID tokens
Refresh tokens
Token customization
OAuth 2.0 access token validation and error codes
Using OAuth scopes
Verifying JSON Web Tokens
Decoding JSON Web Tokens
Env variables
Store environment variables in Kinde
Add and update environment variables
Domain management
Use your own custom domain
Add a custom domain for an organization
Org handles and dynamic callbacks for subdomains
SDKs and APIs
Overview
Kinde SDKs
Use Kinde without an SDK
Front end SDKs
JavaScript SDK
React SDK
Angular
Back end SDKs
Elixir SDK
Express.js SDK
.NET SDK
Go SDK
Java SDK
Next.js App Router SDK
Next.js Pages Router SDK
TanStack Start React SDK
Nuxt module
Remix SDK
SvelteKit SDK
Node.js SDK
TypeScript SDK
PHP SDK
Python SDK
Ruby SDK
Node/Apollo GraphQL
Node/Express GraphQL
Native app SDKs
Android SDK
iOS SDK
React Native SDK
Expo
Flutter SDK
Kinde Management API
Quickstart
Call the API - General Guide
Call the API - Postman
Call the API - JavaScript Backends
Guide - Advanced User Search
API Scopes
API Rate Limits
Troubleshooting
Account API
About Kinde's Account API
Special guides
Integrate Kinde with ASP.NET using Open ID Connect
Deploy a Kinde app on Vercel
Deploy a Kinde app on Netlify
Deploy a Kinde app on Cloudflare Workers
Kinde in Electron desktop app
Protect FastAPI routes with Kinde
Troubleshoot code sync errors
Kinde config as code
Use Kinde permissions in React and any backend
Terraform provider
Manage your APIs
Register and manage your APIs
Register and manage APIs
Get a M2M token to test your APIs
Get a user access token to test your APIs (Postman method)
Protect your API
Secure your API using scopes
Give others access to your API
Manage API scopes for M2M applications
Manage API scopes for users
Get a M2M access token to test your APIs (Postman method)
Integrate Kinde auth into .NET-based APIs
About API keys
API keys overview
API keys quick start
API key best practices
Using API keys for AI products
API best practice for AI apps
Organization-level API keys
User-level API keys
Add and manage API keys
Create an API key
Scopes for API keys
Self-serve API keys
Verify API keys in your API
Rotate API keys
Revoke API keys
Test and troubleshoot
Troubleshoot API key errors
MCP Servers
About MCP servers
Add a new MCP connection
Manage Kinde account with AI agents
Operations and Scopes for Kinde MCP server
Auth and access
About authentication
About Kinde authentication
Configure auth flows
Ways to authenticate
User identity and verification
Top questions about Kinde authentication
User communication in Kinde
Top questions about authentication
Authentication guides
Mixed auth set up for B2B and B2C
Pass parameters to identity providers
Guide to enterprise auth and user identities
Authentication methods
Set up auth methods
Email authentication
Password authentication
Passwordless authentication
Username authentication
Phone authentication
WhatsApp authentication
Passkeys
Use both password and passwordless auth
Email deliverability in Kinde
SMS deliverability in Kinde
Manage authentication
Authenticated sessions across multiple applications
Change authentication for an application
Set custom authentication per organization
Build a switch to navigate between organizations
Sign users in to last organization
Keep your product in sync with Kinde
Session management
Session management per organization
Custom configurations
Manage the authentication experience
Disable self-sign up
Use custom sign-up and sign-in screens with Kinde
Pre-populate user identity on sign in
Invited user sign-up experience
Manage organization-level auth features
Redirect users
Static IP