クイックスタートでは、Google Workspace API を呼び出すアプリを設定して実行する方法について説明します。
Google Workspace のクイックスタートでは、API クライアント ライブラリを使用して、認証と承認フローの詳細の一部を処理します。ご自身でアプリを開発する際には、このクライアント ライブラリを使用することをおすすめします。このクイックスタートでは、テスト環境に適した簡素な認証方法を使用します。本番環境では、アプリに適したアクセス認証情報を選択する前に、認証と承認について学習することをおすすめします。
Gmail API にリクエストを送信する Java コマンドライン アプリケーションを作成します。
目標
- 環境をセットアップする。
- サンプルを設定します。
- サンプルを実行します。
前提条件
- Java 1.8 以降。
- Gradle 7.0 以降。
- Google Cloud プロジェクト。
- Gmail が有効になっている Google アカウント。
環境の設定
このクイックスタートを完了するには、環境を設定します。
API を有効にする
Google API を使用する前に、Google Cloud プロジェクトで API を有効にする必要があります。1 つの Google Cloud プロジェクトで 1 つ以上の API を有効にできます。Google Cloud コンソールで、Gmail API を有効にします。
OAuth 同意画面を構成する
このクイックスタートを完了するために新しい Google Cloud プロジェクトを使用している場合は、OAuth 同意画面を構成し、自分自身をテストユーザーとして追加します。Cloud プロジェクトでこの手順をすでに完了している場合は、次のセクションに進みます。
- Google Cloud コンソールで、メニュー > [API とサービス] > [OAuth 同意画面] に移動します。
- [ユーザーの種類] で [内部] を選択し、[作成] をクリックします。
- アプリ登録フォームに入力し、[保存して続行] をクリックします。
ここではスコープの追加をスキップして、[保存して次へ] をクリックします。今後、Google Workspace 組織の外部で使用するアプリを作成する場合は、[ユーザータイプ] を [外部] に変更し、アプリに必要な認可スコープを追加する必要があります。
- アプリ登録の概要を確認します。変更するには、[編集] をクリックします。アプリの登録に問題がなければ、[ダッシュボードに戻る] をクリックします。
デスクトップ アプリケーションの認証情報を承認する
エンドユーザーを認証し、アプリ内のユーザーデータにアクセスするには、1 つ以上の OAuth 2.0 クライアント ID を作成する必要があります。クライアント ID は、Google の OAuth サーバーで個々のアプリを識別するために使用します。アプリが複数のプラットフォームで実行される場合は、プラットフォームごとに個別のクライアント ID を作成する必要があります。- Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。
- [認証情報を作成] > [OAuth クライアント ID] をクリックします。
- [アプリケーションの種類] > [デスクトップ アプリ] をクリックします。
- [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
- [作成] をクリックします。[OAuth クライアントを作成しました] 画面が表示され、新しいクライアント ID とクライアント シークレットが表示されます。
- [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] の下に表示されます。
- ダウンロードした JSON ファイルを
credentials.json
として保存し、ファイルを作業ディレクトリに移動します。
職場環境を整える
作業ディレクトリに新しいプロジェクト構造を作成します。
gradle init --type basic mkdir -p src/main/java src/main/resources
src/main/resources/
ディレクトリで、先ほどダウンロードしたcredentials.json
ファイルをコピーします。デフォルトの
build.gradle
ファイルを開き、その内容を次のコードに置き換えます。
サンプルのセットアップ
src/main/java/
ディレクトリに、build.gradle
ファイルのmainClassName
値と一致する名前の新しい Java ファイルを作成します。新しい Java ファイルに次のコードを含めます。
サンプルの実行
サンプルを実行する
gradle run
-
サンプルを初めて実行すると、アクセスを承認するよう求められます。
- Google アカウントにログインしていない場合は、プロンプトが表示されたらログインします。複数のアカウントにログインしている場合は、承認に使用するアカウントを 1 つ選択します。
- [Accept] をクリックします。
Java アプリケーションが実行され、Gmail API が呼び出されます。
認証情報はファイル システムに保存されるため、次回サンプルコードを実行するときに認証を求められることはありません。
次のステップ
- 認証と認可に関する問題のトラブルシューティング
- Gmail API リファレンス ドキュメント
- Google APIs Client for Java のドキュメント
- Gmail API Javadoc ドキュメント