跳到主要内容 跳到补充内容

为工作流创建和管理 Webhook

Webhook 是当某些操作发生时自动发送事件数据,从而实现应用程序之间自动通信的一种简单方法。在Qlik Cloud 中,Webhook 可以触发其他应用程序中的操作,而无需手动干预,这样就可以更轻松地将 Qlik Cloud 集成到您的工作流中,并根据系统事件实现任务的自动执行。每次发生定义的事件时,都会向指定的 Webhook 端点发送 JSON 请求,将事件数据发送到您选择的应用程序。

所需的 Webhook 权限

使用 Qlik Cloud Webhooks API 和自动化用户界面创建或管理 Webhook 时,您必须申请其中一个或两个权限:

  • 使用 Webhook:创建、查看、更新和删除用户拥有的 Webhook 时需要使用。

  • 管理 Webhook:管理租户中的所有 Webhook(包括其他用户创建的)所需。

了解 Webhook

Webhook 如何工作?

Qlik Cloud 中发生事件时(例如,创建了新应用程序或删除了用户),Webhook 会使用 HTTP 回调将 JSON 格式的信息发送到指定的外部应用程序。然后,该外部应用程序可使用事件数据来触发其他操作。

例如:

  • 创建新应用程序时,通过 Slack 通知您的团队。

  • 当新的团队成员添加到租户时,自动发送欢迎电子邮件。

  • 当从租户中删除了用户时,更新电子表格。

使用 Webhook 的优势

Webhook 允许与其他系统进行实时集成,无需持续手动检查或重复 API 请求。通过监听事件和立即发送相关数据,Webhook 可减少不必要的工作,实现平滑的自动化。

用于 Webhook 集成的主流平台

为了处理和响应 Webhook 数据,您可以构建自定义服务,或使用第三方平台,例如:

webhook 限制

为了保持系统性能和管理资源,有以下限制适用:

  • Webhook 交付历史记录将保留 7 天。

  • 每个用户最多可以拥有 150 个 Webhook。

  • 每个租户最多可以创建 100 个 Webhook。

Webhook 请求结构

当 Webhook 被事件触发时,它会在创建 Webhook 期间向指定的端点发送 HTTP JSON 请求。此请求的结构包含事件元数据和有效载荷详细信息,如事件类型、时间戳和对象属性。

Webhook 请求示例:应用程序已删除事件

以下是删除应用程序时发送的 JSON 请求的示例:

请求 URL

https://<your-tenantURL>/api/v1/webhooks/{id}

标题


{
    "Content-Type": "application/json",
    "X-Execution-Token: <your-execution-token>",
    "Qlik-Signature": "446bd5e3f5b635f491d17557e4bec6ebc61b7bd2bc9cc7b612e4e",
    "User-Agent": "Qlik Webhook"
}

正文


{
    "cloudEventsVersion": "0.1",
    "source": "com.qlik/engine",
    "contentType": "application/json",
    "eventId": "e65c1481-e8a-4be-a5ca-27dfcde077d7",
    "eventTime": "2021-03-08T14:51:29Z",
    "eventTypeVersion": "1.0.0",
    "eventType": "com.qlik.v1.app.deleted",
    "extensions": {
        "ownerId": "vNRGrDZIypJzauw59BbpvkRhqbmI",
        "tenantId": "oZcMPa_1PwH4FUdrh6839YHHdEJN",
        "userId": "vNRGrDZIypJtcGTzauw59BbpqbmI"
    },
    "data": {
        "attributes": {
            "id": "0984fec4-aa8c-4253-b1d1-4fd4f9c78",
            "name": "New App",
            "createdDate": "2021-03-08T14:51:28.888Z",
            "modifiedDate": "2021-03-08T14:51:29.316Z",
            "owner": "auth0|b62a17c577a4abe6e807b07d18c4d82286352542d633d120100b03fb11",
            "ownerId": "vNRGrDZIypJtcGTzauw59BbpvbmI",
            "published": false,
            "hasSectionAccess": false
        }
    }
}

此有效负载提供关于已删除应用程序的详细信息,例如应用程序的 ID、名称、所有者和删除时间戳,帮助接收系统处理事件。有关事件有效负载的更多详细信息,请参阅 Qlik 开发人员门户:API 事件

加密标头

Qlik cloud 支持加密 HTTP 标头。加密标头可让您进一步保护敏感元数据。工作方式:

  • 加密的标头值:为 webhook 配置的标头值可以在配置 webhook 时接受加密。这确保了不记名令牌或 API 密钥这样的凭据能够安全地存储和处理。Webhook 密钥是一次性写入的。保存之后,密钥无法查看或检索,以降低意外泄露的风险。

信息注释标头在存储中加密,而非在传输过程中加密。

创建 Webhook

Webhook 可由以下角色创建:

  • Administration 活动中心的租户管理员。

  • Qlik Automate 界面的所有用户。

有关将 Webhook 用于 Qlik Automate 的更多信息,请参阅使用 Webhook (仅提供英文版本)

执行以下操作:

  1. Administration 活动中心中,转到 webhook

  2. 单击新建

  3. 输入 Webhook 的名称,并可选择添加描述。

  4. 对于 URL(端点),输入 Webhook 将在其中发送 JSON 数据的完全限定域名 (FQDN)。

    • 该 URL 必须使用 HTTPS 协议(示例:https://domain.com)。IP 地址不能用作 Webhook 端点。

  5. 可选择性输入用于 Webhook 身份验证的密钥。

    • 密钥必须在 32 至 64 个字符之间。

    • 如果创建了密钥,密钥将作为哈希值的一部分纳入,作为 qlik-signature 附加到 HTTP 请求中。

  6. 可选择性添加 HTTP 标头以附加至请求。选中复选框以便加密标头值

    信息注释出于安全原因,您无法编辑加密标头;要删除标头,请单击删除图标。若要移除该值,请单击移除图标并输入一个新值。
  7. 事件下,选择将触发 Webhook 的系统事件。可用的事件包括:

    • 应用程序事件:已创建、已删除、已导出、数据已更新(已刷新)、已发布、已重新加载。

    • 用户事件:已创建、已删除。

  8. 单击创建

管理 webhook

Webhook 排序和搜索

要对表格中的 Webhook 进行排序和搜索:

  • 单击某列顶部的 上-下箭头 ,即可更改排序顺序。

  • 单击列顶部的 筛选器 搜索 Webhook。搜索筛选器对完全和部分匹配有效。

Webhook 表格。

管理控制台 Webhook 表格

打开或关闭 Webhook

执行以下操作:

  1. Administration 活动中心中,转到 webhook

  2. 单击 Webhook 旁边的 更多

  3. 要打开 Webhook,请选择启用 Webhook

  4. 要关闭 Webhook,请选择禁用 Webhook

默认情况下,会启用新创建的 Webhook。

编辑 Webhook

执行以下操作:

  1. Administration 活动中心中,转到 webhook

  2. 对于您要编辑的 Webhook,单击 更多

  3. 选择编辑

  4. 进行编辑并单击保存

删除 Webhook

执行以下操作:

  1. Administration 活动中心中,转到 webhook

  2. 选择要删除的 webhook。

  3. 单击删除

  4. 确认删除。

查看 Webhook 历史记录

Webhook 事件历史记录将保留 7 天。

执行以下操作:

  1. Administration 活动中心中,转到 webhook

  2. 单击 Webhook 旁边的 向下箭头 UI 图标用于展开 Webhook 菜单 ,展开其事件历史记录。

    Webhook 历史记录。

    管理控制台 Webhook 历史
  3. 要手动重新发送事件交付,请单击事件行上的 重新发送图标

  4. 要查看事件响应有效负载,请单击事件行上的 向下箭头 按钮。

    有效负载会显示应用程序的 ID、名称和时间戳等详细信息,这对调试或审计过去的事件非常有用。

    事件响应有效负载。

    管理控制台 Webhook 事件类型有效负载信息

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们!