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」>「Connections」頁面,然後選取或建立 Google Cloud 專案。

    前往「連線」頁面

  2. 按一下「+ 建立新項目」開啟「建立連線」頁面。
  3. 在「位置」部分中,選擇連線位置。
    1. 區域:從下拉式清單中選取位置。

      連接器支援的地區包括:

      如需所有支援的地區清單,請參閱「位置」一文。

    2. 點選「下一步」
  4. 在「連線詳細資料」部分,完成下列步驟:
    1. 連接器:從可用連接器的下拉式清單中選取「HubSpot」
    2. 連接器版本:從可用版本的下拉式清單中選取連接器版本。
    3. 在「連線名稱」欄位中,輸入連線執行個體的名稱。

      連線名稱必須符合下列條件:

      • 連線名稱可使用英文字母、數字或連字號。
      • 字母必須為小寫。
      • 連線名稱開頭須為英文字母,結尾則須為英文字母或數字。
      • 連結名稱不得超過 49 個字元。
      • 如果連接器支援事件訂閱,連接名稱開頭不得為「goog」前置字串。
    4. 視需要輸入連線執行個體的「Description」(說明)
    5. 服務帳戶:選取具備必要角色的服務帳戶。
    6. 如要將連線用於事件訂閱,請選取「啟用事件訂閱」。選取這個選項後,會顯示下列選項:
      • 啟用事件訂閱功能,並使用實體和動作:選取這個選項,即可將連線用於事件訂閱和連接器作業 (實體和動作)。
      • 只啟用事件訂閱項目:選取這個選項,即可只將連線用於事件訂閱。如果選取這個選項,請按一下「下一步」,然後設定事件訂閱
    7. 結構定義:指定要使用的 HubSpot API 版本。HubSpotV4 是新的 API。
    8. BrowsableSchemas:這項屬性會將回報的結構定義限制為可用結構定義的子集。例如 BrowsableSchemas=SchemaA,SchemaB,SchemaC。
    9. 聯絡人屬性:輸入要從 List 實體作業選取的 Contacts 實體欄位名稱,並以半形逗號分隔。例如:fieldA, fieldB, fieldC
    10. 公司屬性:輸入要從 List 實體作業選取的 Companies 實體欄位名稱,並以半形逗號分隔。例如:fieldA, fieldB, fieldC
    11. 交易屬性:輸入要從 List 實體作業選取的 Deals 實體欄位名稱,並以半形逗號分隔。例如:fieldA, fieldB, fieldC
    12. 使用 Proxy:選取這個核取方塊,為連線設定 Proxy 伺服器。
    13. Proxy 驗證配置:用於向 ProxyServer Proxy 驗證身分的驗證類型。
    14. Proxy 使用者:用於向 ProxyServer Proxy 驗證身分的使用者名稱。
    15. Proxy 密碼:用於向 ProxyServer Proxy 驗證的密碼。
    16. Proxy SSL Type:連線至 ProxyServer Proxy 時要使用的 SSL 類型。
    17. 視需要設定「連線節點設定」

      • 節點數量下限:輸入連線節點數量下限。
      • 節點數量上限:輸入連線節點數量上限。

      節點是用來處理交易的連線單位 (或備用資源)。連線處理的交易量越多,就需要越多節點;反之,處理的交易量越少,需要的節點就越少。如要瞭解節點對連接器定價的影響,請參閱「 連線節點定價」。如未輸入任何值,系統預設會將節點下限設為 2 (提高可用性),節點上限則設為 50。

    18. (選用) 按一下「+ 新增標籤」,以鍵/值組合的形式為連線新增標籤。
    19. 點選「下一步」
  5. 在「目的地」部分,輸入要連線的遠端主機 (後端系統) 詳細資料。
    1. 目的地類型:您可以將目的地詳細資料指定為主機位址或服務附件。選取下列任一目的地類型:
      • 主機位址:如要指定目的地的主機名稱或 IP 位址。
      • 服務連結:如要為內部 IP 位址指定私人端點,請選取這個選項。服務連結可讓您對外部網路隱藏內部 IP 位址。您可以使用 Private Service Connect 功能,在 Google Cloud 中建立服務連結。如要瞭解如何設定 Private Service Connect,請參閱「發布代管服務」。

      根據您選取的目的地類型,輸入主機地址或服務連結名稱。

      如要輸入其他目的地,請按一下「+新增目的地」

    2. 點選「下一步」
  6. 在「Authentication」(驗證) 部分中,輸入驗證詳細資料。
    1. 選取「驗證類型」並輸入相關詳細資料。

      HubSpot 連線支援下列驗證類型:

      • 私人應用程式存取權杖: 選取包含私人應用程式存取權杖的 Secret Manager 密鑰。

        透過私人應用程式,您可以使用 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. 如果已啟用事件訂閱功能,連線建立頁面會顯示「事件訂閱詳細資料」部分。在「Event subscription details」(事件訂閱詳細資料) 步驟中,提供用於驗證 HubSpot 權杖酬載的驗證詳細資料:
    1. 用戶端密鑰: (選用) 從「密鑰版本」下拉式選單中,選取私有應用程式用戶端密鑰的 Secret Manager 密鑰,以及對應的密鑰版本。
    2. 詳情請參閱「私人應用程式」。

    3. 選取「啟用私人連線」,在後端應用程式和連線之間建立安全連線。如果選取這個選項,您必須在建立連線後執行額外設定步驟。詳情請參閱「活動訂閱的私人連線」。
    4. 輸入無法傳送郵件的設定。如果設定無效信件,連線會將未處理的事件寫入指定的 Pub/Sub 主題。輸入下列詳細資料:
      1. 無法傳送的訊息專案 ID: 您已設定無法傳送的訊息 Pub/Sub 主題的 Google Cloud 專案 ID。
      2. 無效信件主題: 要寫入未處理事件詳細資料的 Pub/Sub 主題。
    5. 點選「下一步」
  8. 檢查:檢查連線和驗證詳細資料。
  9. 點選「建立」

HubSpot V1 伺服器連線類型

下表列出建立 HubSpot 連線時設定各個欄位的範例值。
欄位名稱 詳細資料
區域 us-central1
連接器 HubSpot
連接器版本 1
連線名稱 hub-spot-conn
服務帳戶 SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com/td>
結構定義 HubSpot
節點數量下限 2
節點數量上限 50
私人應用程式存取權杖 PRIVATE_APP_ACCESS_TOKEN
Secret 版本 1

在 HubSpot 建立私人應用程式存取權杖

  1. 建立新的 HubSpot 帳戶,並登入 HubSpot
  2. 按一下「設定」,然後依序前往「整合」>「私人應用程式」
  3. 按一下「建立私人應用程式」
  4. 在「基本資訊」分頁中,設定應用程式的詳細資料,例如名稱、標誌和說明。
  5. 在「範圍」分頁中,為您要私人應用程式存取的每個範圍選取「讀取」或「寫入」
  6. 設定應用程式後,按一下「建立應用程式」
  7. 查看應用程式存取權杖的相關資訊,然後依序點選「繼續建立」和「顯示權杖」
  8. 在 Google Cloud中設定連線時,請使用這個權杖值指定私人應用程式存取權杖。

實體、作業和動作

所有整合連接器都會為所連應用程式的物件提供抽象層。您只能透過這個抽象化程序存取應用程式的物件。抽象化會以實體、作業和動作的形式呈現。

  • 實體: 實體可以視為已連結應用程式或服務中的物件,或是屬性集合。實體的定義因連接器而異。舉例來說,在資料庫連接器中,資料表是實體;在檔案伺服器連接器中,資料夾是實體;在訊息系統連接器中,佇列是實體。

    不過,連接器可能不支援或沒有任何實體,在這種情況下,Entities 清單會是空白。

  • 作業: 作業是指您可以在實體上執行的活動。您可以對實體執行下列任一操作:

    從可用清單中選取實體,系統會產生該實體可用的作業清單。如需作業的詳細說明,請參閱 Connectors 工作的實體作業。 不過,如果連接器不支援任何實體作業,系統就不會在 Operations 清單中列出這些不支援的作業。

  • 動作: 動作是透過連接器介面提供給整合的第一類函式。動作可讓您變更一或多個實體,且因連接器而異。一般來說,動作會有一些輸入參數和輸出參數。不過,連接器可能不支援任何動作,此時 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」作業,然後按一下「完成」

範例 - 取得交易記錄

這個範例會從 Deals 實體取得 ID 為 45 的記錄。

  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. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 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. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Description": "New description"
    }
  5. 按一下「entityId」,然後在「Default Value」欄位中輸入 97

    或者,您也可以將 filterClause 設為 97,而非指定 entityId

範例 - 刪除表單

這個範例會刪除 Forms 實體中 ID 為 78 的記錄。

  1. 在「Configure connector task」對話方塊中,按一下 Entities
  2. Entity 清單中選取 Forms
  3. 選取「Delete」作業,然後按一下「完成」
  4. 在「連線器」工作的「Task Input」(工作輸入內容) 區段中,按一下「entityId」,然後在「Default Value」(預設值) 欄位中輸入 78

使用 Terraform 建立連線

您可以使用 Terraform 資源建立新連線。

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

如要查看用於建立連線的 Terraform 範本範例,請參閱範本範例

使用 Terraform 建立這項連線時,您必須在 Terraform 設定檔中設定下列變數:

參數名稱 資料類型 必填 說明
結構定義 ENUM 指定要使用的 HubSpot API 版本。HubSpotV4 是新的 API。支援的值包括:HubSpot、HubSpotV3、HubSpotV4
browsable_schemas STRING 這項屬性會將回報的結構定義限制為可用結構定義的子集。例如 BrowsableSchemas=SchemaA,SchemaB,SchemaC。
contacts_columns STRING 以半形逗號分隔的屬性清單,可從 HubSpot 中選取聯絡人實體。
companies_columns STRING 以半形逗號分隔的屬性清單,可從 HubSpot 中選取公司實體的屬性。
deals_columns STRING 以半形逗號分隔的清單,列出要從 HubSpot 選擇的「交易」實體屬性。
proxy_enabled BOOLEAN 選取這個核取方塊,即可為連線設定 Proxy 伺服器。
proxy_auth_scheme ENUM 用於向 ProxyServer Proxy 驗證的驗證類型。支援的值包括:BASIC、DIGEST、NONE
proxy_user STRING 用於向 ProxyServer Proxy 驗證的使用者名稱。
proxy_password SECRET 用於向 ProxyServer 代理程式驗證的密碼。
proxy_ssltype ENUM 連線至 ProxyServer Proxy 時要使用的 SSL 類型,支援的值包括:AUTO、ALWAYS、NEVER、TUNNEL

在整合中建立 HubSpot 連線

建立連線後,Apigee Integration 和 Application Integration 都會提供該連線。您可以在整合中透過「連接器」工作使用連線。

  • 如要瞭解如何在 Apigee Integration 中建立及使用「連線器」工作,請參閱「連線器工作」。
  • 如要瞭解如何在 Application Integration 中建立及使用「連線器」工作,請參閱「連線器工作」。

向 Google Cloud 社群尋求協助

如要發布問題及討論這個連接器,請前往 Cloud 論壇的 Google Cloud 社群。

後續步驟