Gmail
Difficulty: GatedYou can connect your own account and up to 100 test users the same day. The scopes most Gmail integrations need (gmail.readonly, gmail.modify, gmail.compose) are restricted, so a public launch needs Google's OAuth verification and a paid, annual third-party CASA security assessment. Expect several weeks.
- Your work
- 3–10 days
- Waiting on Gmail
- 2–8 weeks
- First user connects
- Today, in about 30–60 minutes, with your own account added as a test user
Plan
17 tasksSetupBefore you start
BuildYour account
work 30–60 min · wait noneYou, added as a test user on an External app in Testing status, or anyone in your Workspace org if the app is Internal.
BetaTest users
work 5–15 min · wait noneUp to 100 test users you list by email. Each one counts against a quota that does not reset.
LaunchPublic launch
work 3–10 days · wait 2–8 weeksAny Google account.
Why gated
- Tier
- Typical Gmail scopes are restricted, and Google requires a paid third-party CASA security assessment (assessor fees of about $500–$4,500, renewed every year) before the public can connect.
- Using Composio?
- Composio has a managed Gmail OAuth app, so you can prototype without registering your own. To have your own name on the consent screen, you have to register your own app and go through Google's verification and CASA yourself.GMAIL
- Your account
- Users see: A Google 'hasn't verified this app' warning before consent. Grants expire after 7 days.Next: Add other Google accounts to the test-user list.Docs3, 4
- Test users
- Users see: An unverified-app warning. Grants and refresh tokens expire 7 days after consent, so users have to reconnect weekly.Next: Publish to production, submit for verification, pass restricted-scope review and the CASA security assessment.Docs4
Scopes
5
Google classifies Gmail scopes into three levels. The level decides what review you go through. Most read or modify integrations need restricted scopes.
gmail.labelsbasicView and edit labels. Brand verification only, if you want your name and logo showngmail.sendsensitiveSend email as the user. OAuth app verification (demo video, justification). No CASA.gmail.readonly / gmail.metadatarestrictedRead messages and settings, or headers and labels only. Restricted-scope verification plus annual CASA assessment if data reaches your serversgmail.modify / gmail.compose / gmail.insert / gmail.settings.basicrestrictedRead, write, send, drafts and settings. Restricted-scope verification plus annual CASA assessmenthttps://mail.google.com/restrictedFull mailbox access, including permanent delete. Restricted review. Google asks you to request it only if you need permanent deletion.
When you get stuck
4
Users see 'Google hasn't verified this app' and new sign-ups stop after 100 users
The app is unverified and uses sensitive or restricted scopes. The 100-user cap applies for the project's lifetime and cannot be reset.
FixComplete verification. Keep development in a separate project so you don't use up the production quota.
Docs4invalid_grant on refresh after about a week
In Testing status, grants and refresh tokens expire 7 days after consent.
FixHave users reconnect, or publish to production and get verified.
Docs4Error 403: org_internal
The app's user type is Internal, and the user is outside your Google Cloud organization.
FixSwitch the user type to External.
Docs4Verification sent back for resubmission
Common causes: scope mismatch, unused scopes, weak demo video, vague justifications, homepage behind a login, missing Limited Use disclosure.
FixFix every listed issue, re-record the video if needed and resubmit the form.
Community9· medium confidence
Not confirmed
3
Exact end-to-end time for Gmail restricted-scope approval
Google gives no Gmail-specific timeline. The CASA figures come from a Google Health API page, and the rest from vendor reports.
ResolveWatch the Verification Center and the emails Google sends to your contact address after you submit.
Which CASA tier and fee your app will get
Google assigns the tier based on user count, scopes and other risk signals.
ResolveGoogle Trust & Safety tells you the tier when the assessment starts. Ask assessors for quotes.
Whether you can skip CASA by keeping all Gmail data on the client
The docs say the assessment applies when restricted data is stored or transmitted on servers, but Google decides each case during review.
ResolveDescribe your data flow in the submission and confirm with the review team.
Sources
10
- 1Restricted scope verificationGoogle Cloud Help · Official docs · checked 27 Oct 2026
- 2Choose Gmail API scopesGoogle for Developers · Official docs · checked 27 Oct 2026
- 3When is verification not neededGoogle Cloud Help · Official docs · checked 27 Oct 2026
- 4Manage app audienceGoogle Cloud Help · Official docs · checked 27 Oct 2026
- 5Security assessmentGoogle Cloud Help · Official docs · checked 27 Oct 2026
- 6App verification (Google Health API)Google for Developers · Official docs · checked 27 Oct 2026
- 7Submitting your app for verificationGoogle Cloud Help · Official docs · checked 27 Oct 2026
- 8OAuth App Verification overviewGoogle Cloud Help · Official docs · checked 27 Oct 2026
- 9Google security reviewNango docs · Community · checked 27 Oct 2026
- 10Managed auth toolkitsComposio docs · Composio docs · checked 27 Oct 2026
Feedback
On the version researched 27 Oct 2026- worked
- 0
- waiting on review
- 0
- stuck
- 0
- wrong
- 0