JUNOHUB-test/Documents/REMOVE_OAUTH_WARNING.md
root 284fb12576 Set up JUNOHUB app and EC2 deployment
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-09 20:12:52 +05:00

155 lines
4.8 KiB
Markdown

# 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:
1. Go to [Google Cloud Console > OAuth consent screen](https://console.cloud.google.com/apis/credentials/consent)
2. Click **"Back to testing"** button (if your app is currently "In production")
3. Add all Gmail addresses as **test users**:
- Scroll to "Test users" section
- Click "+ ADD USERS"
- Add each Gmail address (one per line)
- Click "Add"
4. 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:
1. **Privacy Policy** (Required)
- Must be publicly accessible URL
- Must explain how you use Gmail data
- Example: `https://yourdomain.com/privacy-policy`
2. **Terms of Service** (Required)
- Must be publicly accessible URL
- Example: `https://yourdomain.com/terms`
3. **App Homepage** (Required)
- Your app's main website URL
- Example: `https://yourdomain.com`
4. **Authorized Domains**
- Add your production domain
- Example: `yourdomain.com`
### Verification Steps:
1. **Go to Verification Center**:
- [OAuth consent screen](https://console.cloud.google.com/apis/credentials/consent)
- Click "Verification Center" in left sidebar
- Or go directly: [Verification Center](https://console.cloud.google.com/apis/credentials/consent/verification)
2. **Start Verification**:
- Click "Start Verification" or "Submit for verification"
- Fill out the verification form
3. **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
4. **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
5. **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)**:
1. Click "Back to testing" in OAuth consent screen
2. Add test users (your vendors' Gmail addresses)
3. Test users won't see the warning
**For later (Production)**:
1. Create Privacy Policy and Terms of Service pages
2. Submit app for Google verification
3. Wait for approval (4-6 weeks)
4. Warning will disappear automatically
---
## Privacy Policy Template (Gmail Data Usage)
Your Privacy Policy must mention Gmail data usage. Example section:
```markdown
## 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.
```
---
## Need Help?
- [Google OAuth Verification Guide](https://support.google.com/cloud/answer/9110914)
- [OAuth Consent Screen Documentation](https://developers.google.com/identity/protocols/oauth2/policy)
- [Gmail API Scopes Documentation](https://developers.google.com/gmail/api/auth/scopes)