Gmail API のスコープの選択

このドキュメントでは、Gmail API 固有の認可と認証情報について説明します。このドキュメントを読む前に、認証と認可についてで Google Workspace の認証と認可に関する一般的な情報を確認してください。

認可用に OAuth 2.0 を構成する

OAuth 同意画面を構成し、スコープを選択することで、ユーザーとアプリの審査担当者に表示される情報を定義し、後でアプリを公開できるようにアプリを登録します。

Gmail API のスコープ

アプリに付与するアクセスレベルを定義するには、承認スコープを特定して宣言する必要があります。認証スコープは、Google Workspace アプリ名、アクセスするデータの種類、アクセスレベルを含む OAuth 2.0 URI 文字列です。スコープとは、ユーザーの Google アカウント データを含む Google Workspace データを操作するためのアプリのリクエストのことです。

アプリがインストールされると、アプリで使用されるスコープの検証を求めるメッセージがユーザーに表示されます。一般に、できる限り狭い範囲のスコープを選択し、アプリで必要ないスコープはリクエストしないようにします。ユーザーは、明確に説明された限定的なスコープに対してアクセス権限を付与する傾向があります。

Gmail API は、次のスコープをサポートしています。

スコープコード 説明 用途
https://www.googleapis.com/auth/gmail.addons.current.action.compose アドオン操作時の下書きの管理とメールの送信。 機密情報ではない
https://www.googleapis.com/auth/gmail.addons.current.message.action アドオンの操作時にメール メッセージを表示します。 機密情報ではない
https://www.googleapis.com/auth/gmail.addons.current.message.metadata アドオンの実行時にメール メッセージのメタデータを表示します。 デリケートなコンテンツ
https://www.googleapis.com/auth/gmail.addons.current.message.readonly アドオンの実行時にメール メッセージを表示します。 デリケートなコンテンツ
https://www.googleapis.com/auth/gmail.labels ラベルの作成、読み取り、更新、削除のみ。 機密情報ではない
https://www.googleapis.com/auth/gmail.send メッセージのみを送信します。メールボックスに対する読み取り権限または変更権限がない。 デリケートなコンテンツ
https://www.googleapis.com/auth/gmail.readonly すべてのリソースとそのメタデータを読み取ります(書き込みオペレーションはありません)。 制限付き
https://www.googleapis.com/auth/gmail.compose 下書きの作成、読み取り、更新、削除。メッセージと下書きを送信する。 制限付き
https://www.googleapis.com/auth/gmail.insert メッセージの挿入とインポートのみ。 制限付き
https://www.googleapis.com/auth/gmail.modify スレッドとメッセージの即時かつ完全な削除(ゴミ箱をバイパス)を除く、すべての読み取り/書き込みオペレーション。 制限付き
https://www.googleapis.com/auth/gmail.metadata ラベル、履歴レコード、メール メッセージのヘッダーなど、リソースのメタデータを読み取ります。メッセージの本文や添付ファイルは読み取りません。 制限付き
https://www.googleapis.com/auth/gmail.settings.basic メールの基本設定を管理します。 制限付き
https://www.googleapis.com/auth/gmail.settings.sharing 転送ルールやエイリアスなどの機密メールの設定を管理します。

注: このスコープで保護されているオペレーションは、管理用途にのみ制限されます。これらは、ドメイン全体の委任を使用するサービス アカウントを使用している Google Workspace のお客様のみが利用できます。
制限付き
https://mail.google.com/ アカウントのメールボックスへのフルアクセス(スレッドやメッセージの完全削除を含む)。このスコープは、アプリケーションがスレッドやメッセージをすぐに完全に削除し、ゴミ箱をバイパスする必要がある場合にのみリクエストする必要があります。他のすべてのアクションは、より制限の少ないスコープで実行できます。 制限付き

上の表の [使用状況] 列は、次の定義に従って、各スコープの機密性を示します。

  • センシティブでない - これらのスコープは、最小限の認可アクセスを提供し、基本的なアプリの確認のみを必要とします。この要件については、確認の準備手順をご覧ください。

  • 機密性の高い - これらのスコープは Google ユーザーデータへのアクセスを許可し、機密性の高いスコープの検証プロセスを必要とします。この要件については、Google API サービス: ユーザーデータに関するポリシーをご覧ください。これらのスコープではセキュリティ評価は必要ありません。

  • 制限付き - これらのスコープは Google ユーザーデータへの広範なアクセスを提供するため、制限付きスコープの確認プロセスを完了する必要があります。この要件については、Google API サービス: ユーザーデータ ポリシー特定の API スコープの追加要件をご覧ください。制限付きスコープのデータをサーバーに保存(または送信)する場合は、セキュリティ評価を受ける必要があります。

ユーザーデータへのアクセスをリクエストする際の Gmail API の使用とアクセスに適用される追加情報については、Gmail API サービスのユーザーデータとデベロッパー ポリシーをご覧ください。

アプリで他の Google API へのアクセスが必要な場合は、それらのスコープも追加できます。Google API スコープの詳細については、OAuth 2.0 を使用して Google API にアクセスするをご覧ください。

OAuth の確認

特定のプライベートな OAuth スコープを使用するには、アプリが Google の OAuth 審査プロセスを完了する必要がある場合があります。OAuth 検証に関するよくある質問を読んで、アプリの検証が必要になるタイミングと、必要な検証の種類を確認してください。Google API サービス: ユーザーデータ ポリシーもご覧ください。