/api/auth/*.
Implementation
Fromsrc/app/api/auth/[...all]/route.ts:1-5:
Base URL
All endpoints are prefixed with/api/auth. The base URL is configured in src/lib/auth/auth.ts:20:
Email & Password Endpoints
Sign Up
string
required
User’s email address
string
required
User’s password (minimum requirements defined by Better-Auth)
string
required
User’s display name
object
Created user object
object
Session object if auto-signin is enabled
Sign In
string
required
User’s email address
string
required
User’s password
object
Authenticated user object
object
Created session
Forget Password
string
required
Email address to send reset link
string
URL to redirect after clicking reset link
Reset Password
string
required
New password
string
required
Reset token from email
Email OTP Endpoints
Send OTP
string
required
Email to send OTP code
string
required
OTP type:
sign-in, email-verification, or forget-passwordsrc/lib/auth/auth.ts:186-188):
- OTP Length: 6 digits
- Expiration: 15 minutes
- Delivery: Via configured email service
Verify OTP
string
required
Email address
string
required
6-digit OTP code from email
object
Authenticated user object
object
Created session
OAuth Endpoints
Initiate OAuth Flow
string
required
OAuth provider:
google, github, microsoft, or facebookstring
URL to redirect after authentication
src/lib/auth/auth.ts:45-78):
Google OAuth
Google OAuth
Required Environment Variables:
GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRET
email, profileGitHub OAuth
GitHub OAuth
Required Environment Variables:
GITHUB_CLIENT_IDGITHUB_CLIENT_SECRET
user:emailMicrosoft OAuth
Microsoft OAuth
Required Environment Variables:
MICROSOFT_CLIENT_IDMICROSOFT_CLIENT_SECRETMICROSOFT_TENANT_ID(optional, defaults to ‘common’)
Facebook OAuth
Facebook OAuth
Required Environment Variables:
FACEBOOK_CLIENT_IDFACEBOOK_CLIENT_SECRET
email, public_profileOAuth Callback
Better-Auth automatically handles OAuth callbacks at:Session Endpoints
Get Session
object | null
Current session or null if not authenticated
Sign Out
Organization Endpoints
Create Organization
string
required
Organization name
string
required
URL-friendly slug
object
Created organization
Invite Member
string
required
Organization ID
string
required
Email of person to invite
string
required
Role:
member or adminError Responses
All endpoints return standard HTTP status codes:Bad Request
Invalid request parameters or validation error
Unauthorized
Authentication required or invalid credentials
Forbidden
Insufficient permissions
Not Found
Resource not found
Internal Server Error
Server error
Cookie Configuration
Fromsrc/lib/auth/auth.ts:26-33:
Next Steps
Authentication Overview
Learn about authentication features
Database Schema
View auth-related database tables