Gmail

Gmail コネクタを使用すると、Gmail で読み取りと削除のオペレーションを実行できます。

サポート対象のバージョン

このコネクタは Gmail REST API をサポートしています。

始める前に

Gmail コネクタを使用する前に、次の作業を行います。

  • Google Cloud プロジェクトで次の操作を行います。
    • コネクタを構成するユーザーに roles/connectors.admin IAM ロールを付与します。
    • コネクタに使用するサービス アカウントに、次の IAM ロールを付与します。
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      サービス アカウントは特別なタイプの Google アカウントで、Google API のデータにアクセスするのに認証を受ける必要がある人間以外のユーザーを表します。サービス アカウントがない場合は、サービス アカウントを作成する必要があります。詳細については、サービス アカウントを作成するをご覧ください。

    • 次のサービスを有効にします。
      • secretmanager.googleapis.com(Secret Manager API)
      • connectors.googleapis.com(Connectors API)

      サービスを有効にする方法については、サービスを有効にするをご覧ください。

    以前にプロジェクトでこうしたサービスを有効にしていない場合は、コネクタを構成するときにそれを有効にすることを求められます。

コネクタを構成する

接続はデータソースに特有です。つまり、多数のデータソースがある場合は、データソースごとに別々の接続を作成する必要があります。接続を作成する手順は次のとおりです。

  1. Cloud コンソールで、[Integration Connectors] > [接続] ページに移動し、Google Cloud プロジェクトを選択または作成します。

    [接続] ページに移動

  2. [+ 新規作成] をクリックして [接続の作成] ページを開きます。
  3. [ロケーション] セクションで、次の操作を行います。
    1. リージョン: プルダウン リストからロケーションを選択します

      サポートされているすべてのリージョンのリストについては、ロケーションをご覧ください。

    2. [次へ] をクリックします。
  4. [接続の詳細] セクションで、次の操作を行います。
    1. コネクタ: 使用可能なコネクタのリストから [Gmail] を選択します。
    2. コネクタのバージョン: 使用可能なバージョンのリストからコネクタのバージョンを選択します。
    3. [接続名] フィールドに、接続インスタンスの名前を入力します。接続名には、小文字、数字、ハイフンを使用できます。名前の先頭は英字、末尾は英字または数字にする必要があります。名前は 49 文字以下にする必要があります。
    4. 説明: 接続インスタンスの説明を入力します。
    5. 必要に応じて、Cloud Logging を有効にして、ログレベルを選択します。デフォルトのログレベルは Error に設定されています。
    6. サービス アカウント: 必要なロールを持つサービス アカウントを選択します。
    7. 必要に応じて、接続ノードの設定を構成します。

      • ノードの最小数: 接続ノードの最小数を入力します。
      • ノードの最大数: 接続ノードの最大数を入力します。

      ノードは、トランザクションを処理する接続の単位(またはレプリカ)です。1 つの接続でより多くのトランザクションを処理するには、より多くのノードが必要になります。逆に、より少ないトランザクションを処理するには、より少ないノードが必要になります。ノードがコネクタの料金に与える影響については、接続ノードの料金をご覧ください。値を入力しない場合は、デフォルトで最小ノード数は 2 に設定され(可用性を高めるため)、最大ノード数は 50 に設定されます。

    8. + ラベルを追加: これをクリックして、Key-Value ペアの形式でラベルを接続に追加します。
    9. [次へ] をクリックします。
  5. [認証] セクションで、認証の詳細を入力します。
    1. [認証タイプ] を選択し、関連する詳細を入力します。

      Gmail 接続でサポートされる認証タイプは次のとおりです。

      • サービス アカウント認証
      • OAuth 2.0 - JWT Bearer
      • OAuth 2.0 - 認証コード

      これらの認証タイプの構成方法については、認証を構成するをご覧ください。

    2. [次へ] をクリックします。
  6. Review: 接続と認証の詳細を確認します。
  7. [作成] をクリックします。

認証を構成する

使用する認証に基づいて詳細を入力します。

  • サービス アカウント認証: この認証タイプでは、追加の構成は必要ありません。[接続の詳細] セクションで選択したサービス アカウントが認証に使用されます。
  • OAuth 2.0 - JWT Bearer
    • JWT 証明書: JWT 認証に使用する証明書を選択します。
    • シークレット バージョン: JWT 証明書のシークレット バージョンを入力します。
    • JWT サブジェクト: JWT サブジェクトを入力します。
    • Enable Authentication Override: 認証をオーバーライドする場合は有効にします。
  • OAuth 2.0 - 認証コード
    • クライアント ID: OAuth 認証に使用するクライアント ID を入力します。
    • スコープ: 必要なスコープのリストを入力します。
    • クライアント シークレット: OAuth 認証に使用するクライアント シークレット。
    • シークレット バージョン: クライアント シークレットのシークレット バージョンを入力します。
    • Enable Authentication Override: 認証をオーバーライドする場合は有効にします。

接続構成のサンプル

このセクションでは、接続の作成時に構成するさまざまなフィールドのサンプル値を示します。

OAuth 2.0 - JWT Bearer 接続タイプ

フィールド名 詳細
場所 asia-east1
コネクタ Gmail
コネクタのバージョン 1
接続名 gmail-jwt-conn
Cloud Logging を有効にする true
サービス アカウント my-service-account@my-project.iam.gserviceaccount.com
ノードの最小数 2
ノードの最大数 50
認証 OAuth 2.0 - JWT Bearer
JWT 証明書 JWT 証明書
シークレットのバージョン 1

OAuth 2.0 - 認証コードの接続タイプ

フィールド名 詳細
ロケーション us-central1
コネクタ Gmail
コネクタのバージョン 1
接続名 gmail-auth-conn
Cloud Logging を有効にする
サービス アカウント my-service-account@my-project.iam.gserviceaccount.com
ノードの最小数 2
ノードの最大数 50
認証 OAuth 2.0 - 認証コード
クライアント ID 60875425788659-mt0cm1tguyiagvst468fvaw7.apps.googleusercontent.com
スコープ https://mail.google.com/
クライアント シークレット ygdruoX-Rtyah9gzkdZc-7CB0Eng9hyaufD0VD
シークレットのバージョン 1

システムの上限

Gmail コネクタは、ノードごとに 1 秒あたり最大 1 件のトランザクションを処理することができ、この上限を超えるトランザクションはすべてスロットルされます。デフォルトでは、Integration Connectors は、接続に 2 つのノードを割り当てます(可用性を高めるため)。

Integration Connectors に適用される上限の詳細については、上限をご覧ください。

統合で Gmail 接続を使用する

接続を作成すると、Apigee Integration と Application Integration の両方で使用できるようになります。この接続は、コネクタタスクを介して統合で使用できます。

  • Apigee Integration でコネクタタスクを作成して使用する方法については、コネクタタスクをご覧ください。
  • Application Integration で Connectors タスクを作成して使用する方法については、コネクタタスクをご覧ください。

操作

このセクションでは、このコネクタでアクションの一部を実行する方法について説明します。

SendMailMessages アクション

このアクションは Gmail メッセージを送信します。

SendMailMessages アクションの入力パラメータ

パラメータ名 データ型 必須 説明
To 文字列 はい メインの受信者のメールアドレス。複数の受信者を指定する場合は、カンマ区切りのリストを使用します。
AttachmentHasBytes 文字列 × 添付ファイルの内容が AttachmentContentBytes(Base64 エンコード)で提供されている場合は true、内容が AttachmentContent で文字列として提供されている場合は false に設定します。デフォルトは false です。
AttachmentFileName 文字列 × 添付するファイルの名前。このパラメータは、AttachmentHasBytes が false の場合、または指定されていない場合に使用されます。
件名 文字列 はい メールの件名。
AttachmentContent 文字列 × 添付するファイルの文字列コンテンツ。このパラメータは、AttachmentHasBytes が false に設定されている場合、または指定されていない場合に使用されます。
BCC 文字列 × BCC で送信された受信者のメールアドレス。複数の受信者を指定する場合は、カンマ区切りのリストを使用します。
AttachmentContentBytes 文字列 × 添付するファイルの Base64 でエンコードされたバイト コンテンツ。このパラメータは、AttachmentHasBytes が true に設定されている場合に使用されます。
CC 文字列 × CC に追加された受信者のメールアドレス。複数の受信者を指定する場合は、カンマ区切りのリストを使用します。
コンテンツ 文字列 はい メール メッセージのメイン コンテンツ。
AttachmentPath 文字列 × メールに添付するローカル ファイル パスのカンマ区切りリスト。

SendMailMessages アクションの構成例については、をご覧ください。

DownloadAttachment アクション

このアクションでは、Gmail から添付ファイルをダウンロードします。

DownloadAttachment アクションの入力パラメータ

パラメータ名 データ型 必須 説明
MessageId 文字列 はい メールの ID。
DownloadLocation 文字列 × 添付ファイルが保存される場所。
FileStream 文字列 × ファイルデータが書き込まれる出力ストリームのインスタンス。
AttachmentId 文字列 × 添付ファイルの ID。FileStream が指定されている場合は、指定する必要があります。

DownloadAttachment アクションの構成例については、をご覧ください。

アクションの例

このセクションでは、このコネクタでアクションの一部を実行する方法について説明します。

例 - Gmail メッセージを送信する

  1. [Configure connector task] ダイアログで、[Actions] をクリックします。
  2. [SendMailMessages] アクションを選択してから、[完了] をクリックします。
  3. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
    {
      "To": "testbristleconeemail@gmail.com",
      "Subject": "Data MapperCheck",
      "Content": "Gmail",
    }
    
  4. アクションが成功すると、コネクタタスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

    [{
    "Id": "199334f660ff462a"
    }]
    

例 - JPG 添付ファイルを含む Gmail メッセージを送信する

  1. [Configure connector task] ダイアログで、[Actions] をクリックします。
  2. [SendMailMessages] アクションを選択してから、[完了] をクリックします。
  3. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
     {
    "To": "testbristleconeemail@gmail.com",
    "Subject": "Data Mapper Email Sep10 JPG",
    "Content": "Gmail",
    "AttachmentFileName": "TestSep10.jpg",
    "AttachmentContentBytes": "/9j/4AAQSkZJRgABAQEBLAEsAAD/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr/wAARCANUBdwDAREAAhEBAxEB/8QAHgABAAAGAwEAAAAAAAAAAAAAAAEDBAcICQIFBgr/xABsEAABAwMCBAMFBQQHAwUJACMBAgMEAAURBgcIEiExCRNBChQiUWEVIzJxgUJSkaEWFzNicrHBJEPRNFOCkqIYJTlEY4O14fDxJmRzdXZ3k7PCNTY4haOytLYZN1RVV8NIVmV0eJSWpNLT4v/EAB0BAQABBAMBAAAAAAAAAAAAAAAHAQQFBgIDCAn/xABXEQABAwURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIlESiJREoiURKIv/Z",
    "AttachmentHasBytes": true
    }
    
  4. アクションが成功すると、コネクタタスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

    [{
      "Id": "199334f660ff462a"
    }]
    

例 - PDF 添付ファイル付きの Gmail メッセージを送信する

  1. [Configure connector task] ダイアログで、[Actions] をクリックします。
  2. [SendMailMessages] アクションを選択してから、[完了] をクリックします。
  3. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
    {
      "To": "testbristleconeemail@gmail.com",
      "Subject": "Data Mapper Email Sep10",
      "Content": "Gmail",
      "AttachmentFileName": "TestSep10.pdf",
      "AttachmentContent": "JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0ZpbHRlci9GbGF0ZURlY29kZT4+CnN0cmVhbQp4nD2OywoCMQxF9/mKu3YRk7bptDAIDuh+oOAP+AAXgrOZ37etjmSTe3ISIljpDYGwwrKxRwrKGcsNlx1e31mt5UFTIYucMFiqcrlif1ZobP0do6g48eIPKE+ydk6aM0roJG/RegwcNhDr5tChd+z+miTJnWqoT/3oUabOToVmmvEBy5IoCgplbmRzdHJlYW0KZW5kb2JqCgozIDAgb2JqCjEzNAplbmRvYmoKCjUgMCBvYmoKPDwvTGVuZ3RoIDYgMCBSL0ZpbHRlci9GbGF0ZURlY29kZS9MZW5ndGgxIDIzMTY0Pj4Kc3RyZWFtCnic7Xx5fFvVlf+59z0tdrzIu7xFz1G8Kl7i2HEWE8vxQlI3iRM71A6ksSwrsYptKZYUE9omYStgloZhaSlMMbTsbSPLAZwEGgNlusxQ0mHa0k4Z8muhlJb8ynQoZVpi/b736nkjgWlnfn/8Pp9fpNx3zz33bPecc899T4oVHA55KIEOkUJO96DLvyQxM5WI/omIpbr3BbU/3J61FPBpItOa3f49g1948t/vI4rLIzL8dM/A/t3vn77ZSpT0LlH8e/0eV98jn3k0mSj7bchY2Q/EpdNXm4hyIIOW9g8Gr+gyrq3EeAPGVQM+t+uw5VrQ51yBcc6g6wr/DywvGAHegbE25Br0bFR/ezPGR4kq6/y+QPCnVBYl2ijka/5hjz95S8kmok8kEFl8wDG8xQtjZhRjrqgGo8kcF7+I/r98GY5TnmwPU55aRIhb9PWZNu2Nvi7mRM9/C2flx5r+itA36KeshGk0wf5MWfQ+y2bLaSOp9CdkyxE6S3dSOnXSXSyVllImbaeNTAWNg25m90T3Rd+ii+jv6IHoU+zq6GOY/yL9A70PC/5NZVRHm0G/nTz0lvIGdUe/Qma6nhbRWtrGMslFP8H7j7DhdrqDvs0+F30fWtPpasirp0ZqjD4b/YDK6Gb1sOGVuCfoNjrBjFF31EuLaQmNckf0J9HXqIi66Wv0DdjkYFPqBiqgy+k6+jLLVv4B0J30dZpmCXy",
      "AttachmentHasBytes": true
    }
    
  4. アクションが成功すると、コネクタタスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

    [{
      "Id": "1993341d558d7b07"
    }]
    

例 - TXT 添付ファイル付きの Gmail メッセージを送信する

  1. [Configure connector task] ダイアログで、[Actions] をクリックします。
  2. [SendMailMessages] アクションを選択してから、[完了] をクリックします。
  3. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
    {
      "To": "testbristleconeemail@gmail.com",
      "Subject": "Data Mapper Email Sep10",
      "Content": "Gmail",
      "AttachmentFileName": "TestSep10.txt",
      "AttachmentContent": "TestingwithAttachment",
      "AttachmentHasBytes": true
    }
    
  4. アクションが成功すると、コネクタタスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

    [{
        "Id": "1993341d558d7b07"
    }]
    

例 - Gmail から添付ファイルをダウンロードする

  1. [Configure connector task] ダイアログで、[Actions] をクリックします。
  2. [DownloadAttachment] アクションを選択してから、[完了] をクリックします。
  3. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
    {
      "MessageId": "198acdcde5c09ce5"
    }
    
  4. アクションが成功すると、コネクタタスクの connectorOutputPayload レスポンス パラメータの値は次のようになります。

    [{
        "Success": "true",
        "MessageId": "198acdcde5c09ce5",
        "AttachmentId": "1",
        "Size": "58005",
        "Data": "JVBERi0xLjQKJdPr6eEKMSAwIG9iago8PC9UaXRsZSAoYWJvdXQ6YmxhbmspCi9DcmVhdG9yIChNb3ppbGxhLzUuMCBcKFgxMTsgTGludXggeDg2XzY0XCkgQXBwbGVXZWJLaXQvNTM3LjM2IFwoS0hUTUwsIGxpa2UgR2Vja29cKSBIZWFkbGVzc0Nocm9tZS8xMzguMC4wLjAgU2FmYXJpLzUzNy4zNikKL1Byb2R1Y2VyIChTa2lhL1BERiBtMTM4KQovQ3JlYXRpb25EYXRlIChEOjIwMjUwODE1MDgwMDE2KzAwJzAwJykKL01vZERhdGUgKEQ6MjAyNTA4MTUwODAwMTYrMDAnMDAnKT4-CmVuZG9iagozIDAgb2JqCjw8L2NhIDEKL0JNIC9Ob3JtYWw-PgplbmRvYmo",
        "Filename": "My_Store_404672162.pdf",
        "@isoutervalue": null
    }]
    

エンティティ オペレーションの例

このセクションでは、このコネクタでエンティティ オペレーションの一部を実行する方法について説明します。

例 - すべての Gmail メッセージを一覧表示する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Messages を選択します。
  3. [List] オペレーションを選択し、[完了] をクリックします。
  4. [コネクタ] タスクの [タスク入力] セクションで、お客様の要件に応じて filterClause を設定できます。
  5. filterClause の値を囲むには、単一引用符(')を使用する必要があります。filterClause を使用すると、列に基づいてレコードをフィルタできます。

例 - 受信トレイから Gmail メールの詳細を取得する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Inbox を選択します。
  3. [Get] オペレーションを選択し、[完了] をクリックします。
  4. entityId1 に設定します。これは渡されるキーです。entityId を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに 1 を入力し、entityId をローカル変数として選択します。
  5. entityId の値は直接渡す必要があります("1" など)。ここで、"1" は渡される一意の主キー値です。

    エンティティに 2 つの複合キーがあるため、単一の entityId を渡すとエラーが発生することがあります。このような場合は、filterClause を使用して、id='1' などの値を渡すことができます。

例 - Gmail メッセージを削除する

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Messages を選択します。
  3. [Delete] オペレーションを選択し、[完了] をクリックします。
  4. entityId1 に設定します。これは渡されるキーです。
  5. entityId を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに 1 を入力し、ローカル変数として entityId を選択します。

    エンティティに 2 つの複合ビジネスキーまたは主キーがある場合、entityId を指定する代わりに、filterClauseid='1' に設定することもできます。

Google Cloud コミュニティの助けを借りる

Google Cloud コミュニティの Cloud フォーラムで質問を投稿したり、このコネクタについてディスカッションしたりできます。

次のステップ