Introduction
AuthStack is a usage-based authentication platform designed to provide secure, scalable authentication without subscription fees.
What is AuthStack?
Section titled “What is AuthStack?”AuthStack provides:
- Social Login Providers - Google, GitHub, Microsoft, Apple, and Discord
- OAuth 2.0 & OpenID Connect - Industry-standard authentication protocols
- JWT Tokens - Secure access and refresh tokens
- Usage-Based Pricing - Pay only for active users, 1,000 MAU free
- Audit Trail - Track user activity across applications
- Per-App Provider Control - Configure which providers each application can use
Supported OAuth Providers
Section titled “Supported OAuth Providers”| Provider | Authentication Method |
|---|---|
| ID Token validation | |
| GitHub | OAuth code exchange |
| Microsoft | Azure AD / Personal accounts |
| Apple | Sign in with Apple |
| Discord | OAuth2 code exchange |
Why AuthStack?
Section titled “Why AuthStack?”Usage-Based Pricing
Section titled “Usage-Based Pricing”No subscriptions, no tiers, no hidden fees. Pay only for what you use:
- 1,000 MAU free every month
- $0.005 per MAU above free tier
- 10,000 API calls free, then $0.10 per 1,000
Hybrid Provider Configuration
Section titled “Hybrid Provider Configuration”Configure OAuth credentials globally once, then enable specific providers per-application. This gives you:
- Centralized credential management
- Granular control over which apps use which providers
- Easy onboarding for new applications
Security First
Section titled “Security First”Built with security best practices:
- Password hashing with bcrypt
- JWT with configurable expiration
- Rate limiting and brute force protection
- Secure token storage
- Encrypted OAuth credentials at rest
Easy Integration
Section titled “Easy Integration”SDKs and documentation for:
- Flutter
- React
- Vue
- REST API
Quick Example
Section titled “Quick Example”// Flutter integration - login with any providerfinal response = await authApi.loginWithProvider( provider: OAuthProvider.google, token: credential.idToken,);
if (response.isSuccess) { storage.saveTokens(response.tokens); router.go('/dashboard');}Next Steps
Section titled “Next Steps”- Quick Start - Get up and running in minutes
- Installation - Install the SDK for your platform
- Concepts - Understand the core concepts