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 / クライアント] に移動します。

  2. [クライアントの作成] をクリックします。

  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 カレンダーの場合は、[接続] をクリックします。

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

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

    1. 管理者が OAuth クライアント認証情報を作成するセクションで作成したクライアント ID とクライアント シークレットを [新しいクライアント ID] と [新しいクライアント シークレット] に入力します。
    2. [認証を確認する] をクリックし、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 フィールドを読み取り、編集できます。

フィールド 説明
送信先 必須。受信者のメールリスト。
件名 必須。メールの件名
コンテンツ 必須。メールのコンテンツ(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 / クライアント] に移動します。

  2. [クライアントの作成] をクリックします。

  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. 管理者が OAuth クライアント認証情報を作成するセクションで作成したクライアント ID とクライアント シークレットを [新しいクライアント ID] と [新しいクライアント シークレット] に入力します。
    2. [認証を確認する] をクリックし、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 のアクションの実行を初めて依頼したときに、アカウントへのアクセスを承認するよう求められます。