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. 连接器版本:从可用版本的下拉列表中选择一个连接器版本。
    3. 连接名称字段中,输入连接实例的名称。

      连接名称必须符合以下条件:

      • 连接名称可以使用字母、数字或连字符。
      • 字母必须小写。
      • 连接名称必须以字母开头,以字母或数字结尾。
      • 连接名称不能超过 49 个字符。
      • 对于支持事件订阅的连接器,连接名称不得以“goog”前缀开头。
    4. (可选)输入连接实例的说明
    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. 使用代理:选中此复选框可为连接配置代理服务器。
    13. 代理身份验证方案:用于向 ProxyServer 代理进行身份验证的身份验证类型。
    14. 代理用户:用于向 ProxyServer 代理进行身份验证的用户名。
    15. 代理密码:用于向 ProxyServer 代理进行身份验证的密码。
    16. 代理 SSL 类型:连接到 ProxyServer 代理时使用的 SSL 类型。
    17. (可选)配置连接节点设置

      • 节点数下限:输入连接节点数下限。
      • 节点数上限:输入连接节点数上限。

      节点是处理事务的连接单元(或副本)。 连接处理越多事务就需要越多节点,相反,处理越少事务需要越少节点。 如需了解节点如何影响连接器价格,请参阅连接节点的价格。如果未输入任何值,则默认情况下,节点数下限设置为 2(以便提高可用性),节点数上限设置为 50。

    18. (可选)点击 + 添加标签,以键值对的形式向连接添加标签。
    19. 点击下一步
  5. 目标部分中,输入要连接到的远程主机(后端系统)的详细信息。
    1. 目标类型:您可以将目标详细信息指定为主机地址或服务连接。选择以下任意目标类型:
      • 主机地址:如果要指定目标的主机名或 IP 地址。
      • 服务连接:如果要为内部 IP 地址指定专用端点。使用服务连接,您可以对外部网络隐藏内部 IP 地址。您可以使用 Private Service Connect 功能在 Google Cloud 中创建服务连接。如需了解如何配置 Private Service Connect,请参阅发布托管式服务

      根据您选择的目标类型,输入主机地址或服务连接名称。

      如需输入其他目标,请点击 + 添加目标

    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. 点击创建

实体、操作和动作

所有集成连接器都会为所连接应用的对象提供抽象层。您只能通过此抽象访问应用的对象。抽象作为实体、操作和动作向您展示。

  • 实体:实体可以被视为连接的应用或服务中的对象或属性集合。不同连接器的实体定义也会有所不同。例如,在数据库连接器中,表是实体;在文件服务器连接器中,文件夹是实体;在消息传递系统连接器中,队列是实体。

    但可能的情况是,连接器不支持或不具有任何实体,在这种情况下,Entities 列表将为空。

  • 操作:操作是指您可以对实体执行的操作。您可以对实体执行以下任一操作:

    从可用列表中选择一个实体,系统会生成该实体可用的操作列表。如需了解操作的详细说明,请参阅连接器任务的实体操作。不过,如果连接器不支持任何实体操作,则 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. 连接器任务的任务输入部分中,点击 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,然后在 Default Value 字段中输入 97

    或者,您也可以将 filterClause 设置为 97,而不是指定 entityId

示例 - 删除表单

以下示例会删除 Forms 实体中 ID 为 78 的记录。

  1. Configure connector task 对话框中,点击 Entities
  2. Entity 列表中选择 Forms
  3. 选择 Delete 操作,然后点击完成
  4. 连接器任务的任务输入部分,点击 entityId,然后在默认值字段中输入 78

使用 Terraform 创建连接

您可以使用 Terraform 资源创建新的连接。

如需了解如何应用或移除 Terraform 配置,请参阅基本 Terraform 命令

如需查看用于创建连接的 Terraform 模板示例,请参阅模板示例

使用 Terraform 创建此连接时,您必须在 Terraform 配置文件中设置以下变量:

参数名称 数据类型 必需 说明
架构 ENUM True 指定要使用的 HubSpot API 版本。HubSpotV4 是新的 API。支持的值包括:HubSpot、HubSpotV3、HubSpotV4
browsable_schemas STRING 错误 此属性将报告的架构限制为部分可用架构。例如,BrowsableSchemas=SchemaA,SchemaB,SchemaC。
contacts_columns STRING 错误 要从 HubSpot 为“联系人”实体选择的属性的逗号分隔列表。
companies_columns STRING 错误 要从 HubSpot 为 Companies 实体选择的属性的逗号分隔列表。
deals_columns STRING 错误 要从 HubSpot 为 Deals 实体选择的属性的逗号分隔列表。
proxy_enabled BOOLEAN 错误 选中此复选框可为连接配置代理服务器。
proxy_auth_scheme ENUM 错误 用于向 ProxyServer 代理进行身份验证的身份验证类型。支持的值包括:BASIC、DIGEST、NONE
proxy_user STRING 错误 用于向 ProxyServer 代理进行身份验证的用户名。
proxy_password SECRET 错误 用于向 ProxyServer 代理进行身份验证的密码。
proxy_ssltype ENUM 错误 连接到 ProxyServer 代理时使用的 SSL 类型。支持的值包括:AUTO、ALWAYS、NEVER、TUNNEL

在集成中使用 HubSpot 连接

创建连接后,该连接将在 Apigee Integration 和 Application Integration 中可用。您可以通过连接器任务在集成中使用该连接。

  • 如需了解如何在 Apigee Integration 中创建和使用连接器任务,请参阅连接器任务
  • 如需了解如何在 Application Integration 中创建和使用连接器任务,请参阅连接器任务

向 Google Cloud 社区寻求帮助

您可以在 Google Cloud 社区的 Cloud 论坛中发布您的问题以及讨论此连接器。

后续步骤