This document contains Gmail API-specific authorization and authentication information . Before reading this document, be sure to read the Google Workspace's general authentication and authorization information at Learn about authentication & authorization.
To define the level of access granted to your app, you need to identify and declare authorization scopes. An authorization scope is a OAuth 2.0 URI string that contains the Google Workspace app name, what kind of data it accesses, and the level of access.
For more information about scopes, see How to choose scopes for your app.
The Gmail API supports the following scopes:
||Create, read, update, and delete labels only.||Recommended|
||Send messages only. No read or modify privileges on mailbox.||Sensitive|
||Read all resources and their metadata—no write operations.||Restricted|
||Create, read, update, and delete drafts. Send messages and drafts.||Restricted|
||Insert and import messages only.||Restricted|
||All read/write operations except immediate, permanent deletion of threads and messages, bypassing Trash.||Restricted|
||Read resources metadata including labels, history records, and email message headers, but not the message body or attachments.||Restricted|
||Manage basic mail settings.||Restricted|
Manage sensitive mail settings, including forwarding rules and aliases.
Note:Operations guarded by this scope are restricted to administrative use only. They are only available to Google Workspace customers using a service account with domain-wide delegation.
||Full access to the account’s mailboxes, including permanent deletion of threads and messages This scope should only be requested if your application needs to immediately and permanently delete threads and messages, bypassing Trash; all other actions can be performed with less permissive scopes.||Restricted|
The Usage column in the table above indicates the sensitivity of each scope, according to the following definitions:
Recommended—These scopes provide the smallest scope of authorization access and do not require any app verification or security assessment.
Sensitive—These scopes allow access to Google User Data and require a sensitive scope verification process. For information on this requirement, see Google API Services: User Data Policy. These scopes do not require a security assessment.
Restricted—These scopes provide wide access to Google User Data and require you to go through a restricted scope verification process. For information on this requirement, see Google API Services: User Data Policy and Additional Requirements for Specific API Scopes. If you store restricted scope data on servers (or transmit), then you need to go through a security assessment.
If your app requires access to any other Google APIs, you can add those scopes as well. For more information about Google API scopes, see Using OAuth 2.0 to Access Google APIs.
Using certain sensitive OAuth scopes may require that your app go through Google's OAuth verification process. Read the OAuth verification FAQ to determine when your app should go through verification and what type of verification is required. See also the Google API Services: User Data Policy.