HubSpot

HubSpot コネクタを使用すると、HubSpot データセットに対して挿入、削除、更新、読み取りの各オペレーションを実行できます。

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

このコネクタは、次の HubSpot API のバージョンをサポートしています。

  • HubSpot
  • HubSpotV3
  • HubSpotV4

準備

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

  • 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. コネクタ: 使用可能なコネクタのプルダウン リストから [HubSpot] を選択します。
    2. Connector version: 使用可能なバージョンのプルダウン リストからコネクタのバージョンを選択します。
    3. [接続名] フィールドに、接続インスタンスの名前を入力します。

      接続名は次の条件を満たす必要があります。

      • 接続名には英字、数字、ハイフンを使用できます。
      • 文字は小文字のみを使用できます。
      • 接続名の先頭には英字を設定し、末尾には英字または数字を設定する必要があります。
      • 接続名は 63 文字以内で指定してください。
    4. 必要に応じて、接続インスタンスの [説明] を入力します。
    5. サービス アカウント: 必要なロールを持つサービス アカウントを選択します。
    6. イベント サブスクリプションの接続を使用するには、[イベント サブスクリプションを有効にする] を選択します。これを選択すると、次のオプションが表示されます。
      • エンティティとアクションを使用したイベント サブスクリプションを有効にする: このオプションを選択すると、イベント サブスクリプションとコネクタ オペレーション(エンティティとアクション)の両方に対して接続が使用されます。
      • イベント サブスクリプションのみを有効にする: イベント サブスクリプションに対してのみ接続を使用するには、このオプションを選択します。

      これらのどちらを選択した場合でも、以降のステップでイベントの詳細を構成するように求められます。

    7. スキーマ: 使用する HubSpot API のバージョンを指定します。HubSpotV4 が新しい API です。
    8. BrowsableSchemas: このプロパティは、利用可能なスキーマのサブセットに報告されるスキーマを制限します。例: BrowsableSchemas=SchemaA,SchemaB,SchemaC。
    9. Contact プロパティ: List エンティティ オペレーションから選択する Contacts エンティティのカンマ区切りフィールド名を入力します。例: fieldA, fieldB, fieldC
    10. Company プロパティ: List エンティティ オペレーションから選択する Companies エンティティのカンマ区切りフィールド名を入力します。例: fieldA, fieldB, fieldC
    11. Deals プロパティ: List エンティティ オペレーションから選択する Deals エンティティのカンマ区切りフィールド名を入力します。例: fieldA, fieldB, fieldC
    12. Use proxy: 接続用のプロキシ サーバーを構成するために、このチェックボックスを選択します。
    13. Proxy Auth Scheme: ProxyServer プロキシへの認証に使用する認証タイプ。
    14. Proxy User: ProxyServer プロキシへの認証に使用されるユーザー名。
    15. Proxy Password: ProxyServer プロキシの認証に使用されるパスワード。
    16. Proxy SSL Type: ProxyServer プロキシへの接続時に使用する SSL タイプ。
    17. 必要に応じて、接続ノードの設定を構成します。

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

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

    18. 必要に応じて、[+ ラベルを追加] をクリックして Key-Value ペアの形式でラベルを接続に追加します。
    19. [次へ] をクリックします。
  5. [宛先] セクションに、接続するリモートホスト(バックエンド システム)の詳細を入力します。
    1. 宛先タイプ: 宛先の詳細は、ホストアドレスまたはサービス アタッチメントとして指定できます。次のいずれかの宛先タイプを選択します。
      • ホストアドレス: 宛先のホスト名または IP アドレスを指定する場合。
      • サービス アタッチメント: 内部 IP アドレスのプライベート エンドポイントを指定する場合。サービス アタッチメントを使用すると、外部ネットワークから内部 IP アドレスを非表示にできます。Private Service Connect 機能を使用して、Google Cloud でサービス アタッチメントを作成できます。Private Service Connect の構成については、マネージド サービスを公開するをご覧ください。

      選択した宛先タイプに基づいて、ホストアドレスまたはサービス アタッチメント名を入力します。

      他の宛先を入力するには、[+Add destination] をクリックします。

    2. [次へ] をクリックします。
  6. [認証] セクションで、認証の詳細を入力します。
    1. [認証タイプ] を選択し、関連する詳細を入力します。

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

      • 限定公開アプリ アクセス トークン: 限定公開アプリ アクセス トークンを含む Secret Manager の Secret を選択します。

        限定公開アプリを使用すると、HubSpot の API を使用して、HubSpot アカウントの特定のデータにアクセスできます。 各限定公開アプリがアカウントでリクエストまたは変更できる対象を承認することができ、これにより、限定公開アプリに固有のアクセス トークンが生成されます。限定公開アプリで、少なくとも次のスコープの読み取り権限が指定されていることを確認してください。

        • crm.schemas.line_items.read
        • crm.schemas.quotes.read
        • crm.schemas.deals.read
        • crm.schemas.companies.read
        • crm.schemas.custom.read
        • crm.schemas.contacts.read

        詳細については、限定公開アプリをご覧ください。

    2. [次へ] をクリックします。
  7. イベント サブスクリプションを有効にしている場合は、接続作成ページに [イベント サブスクリプションの詳細] セクションが表示されます。[イベント サブスクリプションの詳細] ステップで、HubSpot トークン ペイロードの検証に使用される認証の詳細を入力します。
    1. クライアント シークレット:(省略可)限定公開アプリのクライアント シークレットの Secret Manager シークレットと、[シークレット バージョン] プルダウンから対応するシークレット バージョンを選択します。
    2. 詳細については、限定公開アプリをご覧ください。

    3. バックエンド アプリケーションと接続間を安全に接続するには、[プライベート接続を有効にする] を選択します。このオプションを選択した場合は、接続の作成後に追加の構成手順を実行する必要があります。詳細については、イベント サブスクリプションのプライベート接続をご覧ください。
    4. デッドレター構成を入力します。デッドレターを構成すると、指定された Pub/Sub トピックに未処理のイベントが書き込まれます。次の詳細情報を入力します。
      1. デッドレター プロジェクト ID: デッドレター Pub/Sub トピックを構成した Google Cloud プロジェクト ID。
      2. デッドレター トピック: 未処理イベントの詳細を書き込む Pub/Sub トピック。
    5. [次へ] をクリックします。
  8. レビュー: 接続と認証の詳細を確認します。
  9. [Create(作成)] をクリックします。

エンティティ、オペレーション、アクション

すべての Integration Connectors が、接続されたアプリケーションのオブジェクトを抽象化するレイヤを提供します。アプリケーションのオブジェクトには、この抽象化を通じてのみアクセスできます。抽象化は、エンティティ、オペレーション、アクションとして公開されます。

  • エンティティ: エンティティは、接続されているアプリケーションやサービスのオブジェクト、またはプロパティのコレクションと考えることができます。エンティティの定義は、コネクタによって異なります。たとえば、データベース コネクタでは、テーブルがエンティティであり、ファイル サーバー コネクタでは、フォルダがエンティティです。また、メッセージング システム コネクタでは、キューがエンティティです。

    ただし、コネクタでいずれのエンティティもサポートされていない、またはエンティティが存在しない可能性があります。その場合、Entities リストは空になります。

  • オペレーション: エンティティに対して行うことができるアクティビティです。エンティティに対して次のいずれかのオペレーションを行うことができます。

    使用可能なリストからエンティティを選択すると、そのエンティティで使用可能なオペレーションのリストが生成されます。オペレーションの詳細については、コネクタタスクのエンティティ オペレーションをご覧ください。ただし、コネクタがどのエンティティ オペレーションもサポートしていない場合、サポートされていないオペレーションは Operations リストに表示されません。

  • アクション: コネクタ インターフェースを介して統合で使用できる最初のクラス関数です。アクションを使用すると、1 つまたは複数のエンティティに対して変更を加えることができます。また、使用できるアクションはコネクタごとに異なります。ただし、コネクタがどのアクションもサポートしていない可能性があります。その場合は、Actions リストが空になります。

既知の問題

  • 一部のエンティティでは更新オペレーションが成功しても、空のレスポンスが返されます。そのような場合は、HubSpot インスタンスで更新を検証することをおすすめします。
  • HubSpot では、次のエンティティに対して多数のカスタム フィールドが存在する場合があります。
    • コンタクト
    • 会社
    • ディール

    これらのエンティティの場合、List エンティティ オペレーションですべてのフィールドを一度に選択すると、HubSpot コネクタからエラーが返されることがあります。List オペレーションからのカスタム フィールドの数を制限するシナリオでは、HubSpot コネクタの構成で、必須フィールドの名前(カンマ区切りの値)を指定します。たとえば、Contacts エンティティのフィールドを制限するには、コネクタ構成の Contacts Properties フィールドに必須フィールド名を指定します。同様に、Companies エンティティでは、Companies Properties フィールドに必須フィールド名を指定し、Deals エンティティには、Deals Properties フィールドに必須フィールド名を指定します。

    フィールドは、接続作成ステップで指定できます。ただし、既存の接続がある場合は、接続を編集して必須フィールドを指定する必要があります。

  • 非常に大きな結果セットがある場合、接続タイムアウトのために List オペレーションが失敗する可能性があります。このようなシナリオでは、List オペレーションの フィルタ句を指定すると、結果セットを制限できます。

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

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

例 - すべての連絡先を一覧表示する

この例では、Contacts エンティティ内のすべてのレコードを一覧表示します。

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Contacts を選択します。
  3. [LIST] オペレーションを選択してから、[完了] をクリックします。

例 - 取引レコードを取得する

この例では、ID が 45 のレコードを Deals エンティティから取得します。

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Deals を選択します。
  3. [GET] オペレーションを選択してから、[完了] をクリックします。
  4. [コネクタ] タスクの [タスク入力] セクションで [entityId] をクリックし、[デフォルト値] フィールドに 45 を入力します。

    ここで、45Deals エンティティの主キー値です。

例 - チケットを作成する

この例では、Ticket エンティティにチケットを作成します。

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Tickets を選択します。
  3. [Create] オペレーションを選択してから、[完了] をクリックします。
  4. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
    {
    "Name": "Test735362767",
    "Label": "Test735362767",
    "Type": "String",
    "FieldType": "Insert ticket1",
    "GroupName": "ticketinformation",
    "Description": "Test ticket"
    }

    統合に成功すると、コネクタタスクの connectorOutputPayload フィールドの値は次のようになります。

    {
    "Name": "Test1695971640609"
    }

例 - 取引のエントリを更新する

この例では、Contacts エンティティ内の ID が 97 のレコードを更新します。

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Deals を選択します。
  3. [Update] オペレーションを選択してから、[完了] をクリックします。
  4. [コネクタ] タスクの [タスク入力] セクションで、connectorInputPayload をクリックし、Default Valueフィールドに次のような値を入力します。
    {
    "Description": "New description"
    }
  5. [entityId] をクリックし、[デフォルト値] フィールドに「97」と入力します。

    [entityId] を指定する代わりに、[filterClause] を 97 に設定することもできます。

例 - フォームを削除する

この例では、Forms エンティティ内の ID が 78 のレコードを削除します。

  1. [Configure connector task] ダイアログで、[Entities] をクリックします。
  2. Entity から Forms を選択します。
  3. [Delete] オペレーションを選択してから、[完了] をクリックします。
  4. [コネクタ] タスクの [タスク入力] セクションで [entityId] をクリックし、[デフォルト値] フィールドに「78」と入力します。

Terraform を使用して接続を作成する

Terraform リソースを使用して、新しい接続を作成できます。

Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。

接続作成用の Terraform テンプレートのサンプルを表示するには、サンプル テンプレートをご覧ください。

Terraform を使用してこの接続を作成する場合は、Terraform 構成ファイルで次の変数を設定する必要があります。

パラメータ名 データ型 必須 説明
schema ENUM True 使用する HubSpot API のバージョンを指定します。HubSpotV4 が新しい API です。サポートされている値は、HubSpot、HubSpotV3、HubSpotV4 です。
browsable_schemas STRING False このプロパティは、利用可能なスキーマのサブセットに報告されるスキーマを制限します。例: BrowsableSchemas=SchemaA,SchemaB,SchemaC。
contacts_columns STRING False Contact エンティティの HubSpot から選択するプロパティのカンマ区切りリスト。
companies_columns STRING False Company エンティティの HubSpot から選択するプロパティのカンマ区切りのリスト。
deals_columns STRING False 取引エンティティの HubSpot から選択するプロパティのカンマ区切りリスト。
proxy_enabled BOOLEAN False 接続用のプロキシ サーバーを構成するには、このチェックボックスをオンにします。
proxy_auth_scheme ENUM False ProxyServer プロキシへの認証に使用する認証タイプです。サポートされている値は、BASIC、DIGEST、NONE です。
proxy_user 文字列 False ProxyServer プロキシへの認証に使用されるユーザー名です。
proxy_password SECRET False ProxyServer プロキシの認証に使用されるパスワード。
proxy_ssltype ENUM False ProxyServer プロキシへの接続時に使用する SSL のタイプです。サポートされている値は AUTO、ALWAYS、NEVER、TUNNEL です。

統合で HubSpot 接続を使用する

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

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

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

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

次のステップ