OAuth Providers Setup β
Enable social login with Google, GitHub, Facebook, and Envato OAuth providers.
Overview β
OAuth login allows users to sign in using their existing accounts from popular platforms, reducing friction and improving user experience.
Supported providers:
- GitHub
- Envato
Benefits
- Faster user onboarding
- No password management for users
- Verified email addresses
- Reduced support requests
Accessing OAuth Settings β
- Navigate to Settings β Authentication Settings
- Scroll to OAuth Providers section
- Enable desired providers
- Enter API credentials
- Save changes

Google OAuth Setup β
Step 1: Create Google Cloud Project β
- Go to Google Cloud Console
- Create a new project or select existing
- Navigate to APIs & Services β Credentials
Step 2: Create OAuth Client ID β
- Click Create Credentials β OAuth client ID
- Application type: Web application
- Name: "FeedbackFlow"
- Authorized redirect URIs:
https://yourdomain.com/auth/google/callback - Click Create
Step 3: Copy Credentials β
Copy the Client ID and Client Secret.
Step 4: Configure in FeedbackFlow β
- Navigate to Settings β Authentication Settings
- Enable Google Login
- Enter:
- Client ID: Your Google Client ID
- Client Secret: Your Google Client Secret
- Redirect URL:
https://yourdomain.com/auth/google/callback(auto-filled)
- Save changes
GitHub OAuth Setup β
Step 1: Register OAuth App β
- Go to GitHub Developer Settings
- Click New OAuth App
- Fill in details:
- Application name: FeedbackFlow
- Homepage URL:
https://yourdomain.com - Authorization callback URL:
https://yourdomain.com/auth/github/callback
- Click Register application
Step 2: Generate Client Secret β
- Click Generate a new client secret
- Copy the Client ID and Client Secret
Step 3: Configure in FeedbackFlow β
- Navigate to Settings β Authentication Settings
- Enable GitHub Login
- Enter:
- Client ID: Your GitHub Client ID
- Client Secret: Your GitHub Client Secret
- Save changes
Facebook OAuth Setup β
Step 1: Create Facebook App β
- Go to Facebook Developers
- Click My Apps β Create App
- Select Consumer app type
- Enter app name and contact email
- Create the app
Step 2: Add Facebook Login β
- In app dashboard, click Add Product
- Select Facebook Login
- Choose Web platform
- Site URL:
https://yourdomain.com
Step 3: Configure OAuth Redirect β
- Go to Facebook Login β Settings
- Add to Valid OAuth Redirect URIs:
https://yourdomain.com/auth/facebook/callback - Save changes
Step 4: Get App Credentials β
- Navigate to Settings β Basic
- Copy App ID and App Secret
Step 5: Configure in FeedbackFlow β
- Navigate to Settings β Authentication Settings
- Enable Facebook Login
- Enter:
- Client ID: Your Facebook App ID
- Client Secret: Your Facebook App Secret
- Save changes
Facebook App Review
For public Facebook apps, you may need to submit for app review. During development, test with users assigned as developers/testers in the Facebook app settings.
Envato OAuth Setup β
Step 1: Create Envato API Application β
- Go to Envato API
- Click Create a new app
- Fill in details:
- App name: FeedbackFlow
- Confirmation URL:
https://yourdomain.com/auth/envato/callback - App description: Brief description
- Agree to terms and create
Step 2: Copy Credentials β
Copy the Client ID and Client Secret.
Step 3: Configure in FeedbackFlow β
- Navigate to Settings β Authentication Settings
- Enable Envato Login
- Enter:
- Client ID: Your Envato Client ID
- Client Secret: Your Envato Client Secret
- Save changes
Testing OAuth Login β
After configuring a provider:
- Log out of admin dashboard
- Go to the login page
- Click the OAuth provider button (e.g., "Sign in with Google")
- Authorize the application
- Verify successful login
User Data Handling β
When a user logs in via OAuth:
Data stored:
- Email address
- First name and last name (if provided)
- OAuth provider name
- OAuth user ID
- Profile avatar (if available)
Security:
- OAuth tokens are encrypted in the database
- No passwords are stored for OAuth users
- Email verification is automatically marked as verified
Disabling OAuth Providers β
To disable a provider:
- Navigate to Settings β Authentication Settings
- Toggle off the provider
- Save changes
Existing users who logged in via that provider can still access their accounts but cannot use OAuth login until re-enabled.
Troubleshooting OAuth β
"Redirect URI mismatch" Error β
Cause: Callback URL doesn't match provider configuration
Solution:
- Verify callback URL matches exactly in provider settings:
https://yourdomain.com/auth/{provider}/callback - Ensure protocol matches (http vs https)
- No trailing slash
OAuth Login Button Not Appearing β
Check:
- Provider is enabled in Authentication Settings
- Client ID and Client Secret are saved
- Cache has been cleared
"Invalid Client" Error β
Cause: Incorrect Client ID or Client Secret
Solution:
- Double-check credentials copied correctly
- Ensure no extra spaces
- Regenerate secret if necessary
Users Cannot Complete OAuth Flow β
Check:
- Application is approved/published (Facebook, Google)
- Email scope is requested
- OAuth app is not in development mode (for production)
Security Considerations β
HTTPS Required β
OAuth providers require HTTPS for production apps. Never use OAuth with plain HTTP in production.
Callback URL Validation β
Ensure callback URLs cannot be manipulated. FeedbackFlow validates redirect URIs automatically.
Token Security β
OAuth tokens are encrypted at rest using Laravel's encryption features.
OAuth vs Email/Password β
Users can have both OAuth and email/password login enabled:
OAuth-only users:
- Cannot reset password (none exists)
- Must use OAuth provider to log in
Email/password users:
- Can add OAuth providers to existing account
- Can use either method to log in
Next Steps β
- RECAPTHA setup - Captcha Setup
- Advanced Settings - More advance Settings