4.8 KiB
How to Remove "Google hasn't verified this app" Warning
Quick Answer
The warning appears because your app requests Gmail scopes which are sensitive/restricted and require Google verification. You have 3 options:
Option 1: Keep in Testing Mode (Easiest - For Development)
Best for: Development, testing, or apps with fewer than 100 users
Steps:
- Go to Google Cloud Console > OAuth consent screen
- Click "Back to testing" button (if your app is currently "In production")
- Add all Gmail addresses as test users:
- Scroll to "Test users" section
- Click "+ ADD USERS"
- Add each Gmail address (one per line)
- Click "Add"
- Save changes
Result:
- ✅ Test users won't see the warning
- ✅ Can connect Gmail without verification
- ❌ Limited to 100 test users
- ❌ Must manually add each user
Option 2: Get Google Verification (For Production)
Best for: Production apps that need to scale beyond 100 users
Prerequisites:
Before starting verification, you need:
-
Privacy Policy (Required)
- Must be publicly accessible URL
- Must explain how you use Gmail data
- Example:
https://yourdomain.com/privacy-policy
-
Terms of Service (Required)
- Must be publicly accessible URL
- Example:
https://yourdomain.com/terms
-
App Homepage (Required)
- Your app's main website URL
- Example:
https://yourdomain.com
-
Authorized Domains
- Add your production domain
- Example:
yourdomain.com
Verification Steps:
-
Go to Verification Center:
- OAuth consent screen
- Click "Verification Center" in left sidebar
- Or go directly: Verification Center
-
Start Verification:
- Click "Start Verification" or "Submit for verification"
- Fill out the verification form
-
Complete Verification Form:
- App name: Your app name (e.g., "JunoHub")
- Support email: Your support email address
- App domain: Your production domain
- Authorized domains: Add your domain
- Scopes: Gmail scopes will be automatically listed
- Privacy Policy URL: Your privacy policy URL
- Terms of Service URL: Your terms of service URL
- App homepage: Your app's homepage URL
- App logo: Optional but recommended
-
Additional Information (may be requested):
- Video demonstration: Show how your app uses Gmail
- Use case explanation: Why you need Gmail access
- Data handling: How you store/process Gmail data
-
Submit for Review:
- Review all information
- Submit the form
- Google will review (typically 4-6 weeks)
After Verification:
- ✅ Warning disappears for ALL users
- ✅ No user limit
- ✅ Can request sensitive/restricted scopes
- ✅ Professional appearance
Option 3: Use Domain-Wide Delegation (Advanced - For Google Workspace)
Best for: Google Workspace organizations only
If you're using Google Workspace, you can use domain-wide delegation instead of OAuth, but this requires admin access and is more complex.
Current Status Check
Based on your Google Cloud Console screenshot:
- ✅ App is "In production"
- ✅ User type is "External"
- ⚠️ OAuth user cap: 0/100 users
- ⚠️ Warning appears because Gmail scopes are unapproved
Recommended Action
For now (Development/Testing):
- Click "Back to testing" in OAuth consent screen
- Add test users (your vendors' Gmail addresses)
- Test users won't see the warning
For later (Production):
- Create Privacy Policy and Terms of Service pages
- Submit app for Google verification
- Wait for approval (4-6 weeks)
- Warning will disappear automatically
Privacy Policy Template (Gmail Data Usage)
Your Privacy Policy must mention Gmail data usage. Example section:
## Gmail Integration
When you connect your Gmail account to [Your App Name], we access:
- Read emails: To sync customer emails and create support tickets
- Send emails: To send automated responses and notifications
- Modify emails: To manage email threads and mark emails as read
We store:
- OAuth tokens (encrypted) for Gmail API access
- Email addresses for account identification
We do NOT:
- Store email content permanently
- Share your emails with third parties
- Access emails outside of the app's functionality
You can revoke access at any time by disconnecting Gmail in your account settings.