Google カレンダーと Gmail のアクションを追加する

次のページでは、Google カレンダーと Gmail のアシスタント アクションを設定する方法について説明します。

Google カレンダーのアクション

Google カレンダーのアクションが有効になっている場合、エンドユーザーはアシスタントに Google カレンダーの予定の作成を依頼できます。

たとえば、ユーザーが「明日の午後 3 時に user1@example.com と会議をスケジュールして」と入力することが考えられます。必要に応じて、アシスタントが追加の詳細情報を尋ね、イベントの作成を確認するようユーザーに求めます。

アシスタントは、アクションを通じて次の Google カレンダーのフィールドを読み取り、編集できます。

フィールド 説明
参加者 必須。参加者のメールアドレスのリスト。リクエストしたユーザーは自動的にリストに追加されます。
タイトル 会議のタイトル。
開始時刻 会議の開始時刻。
所要時間 会議の長さ。デフォルトは 30 分です。
タイムゾーン 会議のタイムゾーン。指定しない場合、ユーザーのタイムゾーンが使用されます。
説明 会議の説明。

Google カレンダーの認証と権限を設定する

Google カレンダーのアクションを有効にする前に、 Google Cloud 管理者は Google Calendar API を有効にし、次のように認証を設定する必要があります。

Google Calendar API を有効にする

Google Cloud コンソールで、次の API を有効にします。

OAuth アプリを作成してスコープを追加する

OAuth アプリがない場合は、次の手順を行います。OAuth アプリがすでにある場合は、OAuth クライアント認証情報を作成するに進みます。

  1. Google Auth Platform / 概要に移動します。

  2. [開始] をクリックします。

  3. OAuth アプリの名前を入力します。

  4. ユーザー サポートのメールアドレスを入力します。

  5. [内部] を選択します。

  6. デベロッパーの連絡先情報を入力します。

  7. [作成] をクリックします。

OAuth クライアント認証情報を作成する

この手順では、 Google Cloudアクションの新しい OAuth クライアント ID を作成する方法について説明します。この OAuth クライアント ID とシークレットは、他の Google Cloudアクションにも使用できます。 Google Cloudアクション用の Google Cloud OAuth クライアント ID がすでにある場合は、新しいクライアント ID を作成する代わりに、そのクライアント ID とシークレットを Google カレンダー アクションに使用できます。

  1. Google Auth Platform / Clients に移動します。

  2. [Create client] をクリックします。

  3. [アプリケーションの種類] で [ウェブ アプリケーション] を選択します。

  4. [名前] に、クライアント ID の名前を入力します。

  5. [承認済みのリダイレクト URI] セクションで、[URI を追加] をクリックして次の URI を入力します。 https://vertexaisearch.cloud.google.com/oauth-redirect

  6. [作成] をクリックし、次の情報をコピーします。

    • クライアント ID
    • クライアント シークレット

Google カレンダーのアクションを追加する

コンソールまたは API を使用して Google カレンダーのアクションを作成する手順は次のとおりです。

始める前に

Google カレンダー アクションを追加する前に、既存のアプリや認証情報など、必要な前提条件が満たされていることを確認してください。

  • アクションを追加するには、まず Google Cloud 管理者がGoogle カレンダーの認証と権限を設定するの手順を完了し、クライアント ID とクライアント シークレットを提供する必要があります。

  • Google カレンダー データストアに接続されている既存の Gemini Enterprise アプリが必要です。新しいアプリを作成するには、アプリを作成するをご覧ください。

  • Google Cloud プロジェクトで Discovery Engine API を有効にしてアプリを作成したばかりの場合は、アプリの設定が完了するまで 15 分以上待ってから Google カレンダー アクションを構成してください。

Google カレンダーのアクションを設定する

コンソール

コンソールを使用してアプリにアクションを追加する手順は次のとおりです。

  1. Gemini Enterprise で、[Gemini Enterprise ページ] に移動します。
  2. Gemini Enterprise アプリを選択します。
  3. ナビゲーション メニューで [アクション] をクリックします。
  4. アクションを追加する:

    • 最初のアクションの場合は、[アクションを追加] をクリックします。

    • 以前にアクションを作成したことがある場合は、[作成] をクリックします。

  5. Google カレンダーの場合は、[Connect] をクリックします。

  6. アクション コネクタの名前を入力します。

  7. アクション コネクタの認証情報を入力します。

    1. [新しいクライアント ID] と [新しいクライアント シークレット] に、管理者が作成したクライアント ID とクライアント シークレットを [OAuth クライアント認証情報を作成する] セクションに入力します。
    2. [Verify Auth] をクリックして、Gemini Enterprise アプリに Google カレンダーへのアクセス権を付与します。
  8. 有効にするアクションを選択します。

  9. [設定を終了する] をクリックします。アクションが [アクション] ページに表示されます。

REST

API を使用してアプリにアクションを追加する手順は次のとおりです。

  1. Google カレンダー アクションのアクション コネクタを作成します。

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-GFE-SSL: yes" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION:setUpDataConnector" \
    -d '{
      "collection_id":"CONNECTOR_ID",
      "collection_display_name":"CONNECTOR_DISPLAY_NAME",
      "data_connector":{
          "data_source":"google_calendar",
          "action_config":{
            "is_action_configured":true,
            "action_params":{
                "client_id":"CLIENT_ID",
                "client_secret":"CLIENT_SECRET"
            }
          },
          "connector_modes": ["ACTIONS"]
      }
    }'
    
    • PROJECT_ID: Google カレンダー アクション コネクタを作成するプロジェクトの ID。
    • LOCATION: Google カレンダー アクション コネクタのマルチリージョン(globaluseu)。
    • CONNECTOR_ID: 作成するコネクタの ID。この ID に使用できるのは、小文字、数字、アンダースコア、ハイフンのみです。
    • CONNECTOR_DISPLAY_NAME: 作成するコネクタの表示名。
    • CLIENT_ID: 管理者が OAuth クライアント認証情報の作成で作成したクライアント ID。
    • CLIENT_SECRET: 管理者が OAuth クライアント認証情報の作成で作成したクライアント シークレット。
  2. 作成した Google カレンダー アクション コネクタを既存のアプリにリンクします。

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant?update_mask=enabled_tools" \
    -d '{
      "name": "projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant",
      "enabled_tools": {
        "projects/PROJECT_ID/locations/LOCATION/collections/CONNECTOR_ID/dataConnector": {
          "tool_info": [
            {
              "tool_name": "create_calendar_event",
              "tool_display_name": "Create Calendar Event"
            }
          ]
        }
      }
    }'
    
    • PROJECT_ID: アプリと Google カレンダー アクション コネクタが配置されているプロジェクトの ID。
    • LOCATION: アプリとアクション コネクタのマルチリージョン(globaluseu)。
    • APP_ID: アクションを関連付けるアプリの ID。
    • CONNECTOR_ID: 前の手順で作成した Google カレンダー アクション コネクタの ID。

アクションを追加すると、アシスタントはアプリ内でエンドユーザーに代わってそれらのアクションを実行できるようになります。ユーザーがアシスタントに Google カレンダーのアクションの実行を初めて依頼したときに、Google カレンダー アカウントへのアクセスを承認するよう求められます。

Gmail の操作

Gmail アクションが有効になっている場合、エンドユーザーはアシスタントにメールの送信を依頼できます。

たとえば、ユーザーが「件名が「Hi there」、内容が「how are you doing?」のメールを user1@example.com に送信して」と入力することが考えられます。必要に応じて、アシスタントが追加の詳細情報を尋ね、メールの送信を確認するようお客様に求めます。

アシスタントは、アクションを通じて次の Gmail フィールドを読み取り、編集できます。

フィールド 説明
To 必須。受信者のメールリスト。
件名 必須。メールの件名
コンテンツ 必須。メールのコンテンツ(Markdown 形式)。
CC メールの CC リスト。
BCC メールの BCC リスト。

Gmail の認証と権限を設定する

Gmail アクションを有効にする前に、 Google Cloud 管理者は Gmail API を有効にして認可を設定する必要があります。

Gmail API を有効にする

Google Cloud コンソールで、次の API を有効にします。

OAuth アプリを作成してスコープを追加する

OAuth アプリがない場合は、次の手順を行います。OAuth アプリがすでにある場合は、OAuth クライアント認証情報を作成するに進みます。

  1. Google Auth Platform / 概要に移動します。

  2. [開始] をクリックします。

  3. OAuth アプリの名前を入力します。

  4. ユーザー サポートのメールアドレスを入力します。

  5. [内部] を選択します。

  6. デベロッパーの連絡先情報を入力します。

  7. [作成] をクリックします。

OAuth クライアント認証情報を作成する

この手順では、 Google Cloudアクションの新しい OAuth クライアント ID を作成する方法について説明します。この OAuth クライアント ID とシークレットは、他の Google Cloudアクションにも使用できます。 Google Cloudアクション用の Google Cloud OAuth クライアント ID がすでにある場合は、新しいクライアント ID を作成する代わりに、そのクライアント ID とシークレットを Google カレンダー アクションに使用できます。

  1. Google Auth Platform / Clients に移動します。

  2. [Create client] をクリックします。

  3. [アプリケーションの種類] で [ウェブ アプリケーション] を選択します。

  4. [名前] に、クライアント ID の名前を入力します。

  5. [承認済みのリダイレクト URI] セクションで、[URI を追加] をクリックして次の URI を入力します。 https://vertexaisearch.cloud.google.com/oauth-redirect

  6. [作成] をクリックし、次の情報をコピーします。

    • クライアント ID
    • クライアント シークレット

Gmail アクションを追加する

コンソールまたは API を使用して Gmail アクションを作成する手順は次のとおりです。

始める前に

Gmail アクションを追加する前に、既存のアプリや認証情報など、必要な前提条件が満たされていることを確認してください。

  • アクションを追加するには、まず Google Cloud 管理者がGmail の認証と権限を設定するの手順を完了し、クライアント ID とクライアント シークレットを提供する必要があります。

  • Gmail データストアに接続されている既存の Gemini Enterprise アプリが必要です。新しいアプリを作成するには、アプリを作成するをご覧ください。

  • Google Cloud プロジェクトで Discovery Engine API を最近有効にしてアプリを作成した場合は、アプリのセットアップが完了するまで 15 分以上待ってから Gmail アクションを構成してください。

Gmail アクションを設定する

コンソール

コンソールを使用してアプリにアクションを追加する手順は次のとおりです。

  1. Gemini Enterprise で、[Gemini Enterprise ページ] に移動します。
  2. Gemini Enterprise アプリを選択します。
  3. ナビゲーション メニューで [アクション] をクリックします。
  4. アクションを追加する:

    • 最初のアクションの場合は、[アクションを追加] をクリックします。

    • 以前にアクションを作成したことがある場合は、[作成] をクリックします。

  5. Gmail の場合は、[接続] をクリックします。

  6. アクション コネクタの名前を入力します。

  7. アクション コネクタの認証情報を入力します。

    1. [新しいクライアント ID] と [新しいクライアント シークレット] に、管理者が作成したクライアント ID とクライアント シークレットを [OAuth クライアント認証情報を作成する] セクションに入力します。
    2. [Verify Auth] をクリックして、Gemini Enterprise アプリに Gmail へのアクセス権を付与します。
  8. 有効にするアクションを選択します。

  9. [設定を終了する] をクリックします。アクションが [アクション] ページに表示されます。

REST

API を使用してアプリにアクションを追加する手順は次のとおりです。

  1. Gmail アクションのアクション コネクタを作成します。

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-GFE-SSL: yes" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION:setUpDataConnector" \
    -d '{
      "collection_id":"CONNECTOR_ID",
      "collection_display_name":"CONNECTOR_DISPLAY_NAME",
      "data_connector":{
          "data_source":"gmail",
          "action_config":{
            "is_action_configured":true,
            "action_params":{
                "client_id":"CLIENT_ID",
                "client_secret":"CLIENT_SECRET"
            }
          },
          "connector_modes": ["ACTIONS"]
      }
    }'
    
    • PROJECT_ID: Gmail アクション コネクタを作成するプロジェクトの ID。
    • LOCATION: Gmail アクション コネクタのマルチリージョン(globaluseu)。
    • CONNECTOR_ID: 作成するコネクタの ID。この ID に使用できるのは、小文字、数字、アンダースコア、ハイフンのみです。
    • CONNECTOR_DISPLAY_NAME: 作成するコネクタの表示名。
    • CLIENT_ID: 管理者が OAuth クライアント認証情報の作成で作成したクライアント ID。
    • CLIENT_SECRET: 管理者が OAuth クライアント認証情報の作成で作成したクライアント シークレット。
  2. 作成した Gmail アクション コネクタを既存のアプリにリンクします。

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant?update_mask=enabled_tools" \
    -d '{
      "name": "projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant",
      "enabled_tools": {
        "projects/PROJECT_ID/locations/LOCATION/collections/CONNECTOR_ID/dataConnector": {
          "tool_info": [
            {
              "tool_name": "send_email",
              "tool_display_name": "Send Email"
            }
          ]
        }
      }
    }'
    
    • PROJECT_ID: アプリと Gmail アクション コネクタが配置されているプロジェクトの ID。
    • LOCATION: アプリとコネクタのマルチリージョン(globaluseu)。
    • APP_ID: アクションを関連付けるアプリの ID。
    • CONNECTOR_ID: 前の手順で作成した Gmail アクション コネクタの ID。

アクションを追加すると、アシスタントはアプリ内でエンドユーザーに代わってアクションを実行できるようになります。ユーザーがアシスタントに Gmail アクションの実行を初めてリクエストしたときに、Gmail アカウントへのアクセスを承認するよう求められます。

Google カレンダーと Gmail の両方のアクションをアプリにリンクする

次の API リクエストは、Google カレンダーと Gmail の両方のアクションを既存のアプリにリンクする方法を示しています。

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant?update_mask=enabled_tools" \
-d '{
   "name":"projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant",
   "enabled_tools":{
      "projects/PROJECT_ID/locations/LOCATION/collections/GMAIL_CONNECTOR_ID/dataConnector":{
         "tool_info":[
            {
               "tool_name":"send_email",
               "tool_display_name":"Send Email"
            }
         ]
      },
      "projects/PROJECT_ID/locations/LOCATION/collections/CALENDAR_CONNECTOR_ID/dataConnector":{
         "tool_info":[
            {
               "tool_name":"create_calendar_event",
               "tool_display_name":"Create Calendar Event"
            }
         ]
      }
    }
  }'
  • PROJECT_ID: アプリ、Google カレンダー、Gmail アクション コネクタが配置されているプロジェクトの ID。
  • LOCATION: アプリとコネクタのマルチリージョン: globaluseu
  • APP_ID: アクションを関連付けるアプリの ID。
  • CALENDAR_CONNECTOR_ID: 前の手順で作成した Google カレンダー アクション コネクタの ID。
  • GMAIL_CONNECTOR_ID: 前の手順で作成した Gmail アクション コネクタの ID。

アクションを追加すると、アシスタントはアプリ内でエンドユーザーに代わってそれらのアクションを実行できるようになります。ユーザーがアシスタントに Google カレンダーまたは Gmail のアクションの実行を初めてリクエストしたときに、アカウントへのアクセスを承認するよう求められます。