Webhook

管理员可以设置 Webhook,以便人们可以将提醒发送到特定 URL。这意味着您可以设置提醒,将问题的结果发送到您选择的端点:您的应用程序、第三方服务或任何其他位置。

目前,Webhook 仅适用于提醒;您无法选择 Webhook 作为仪表板订阅的接收者。

创建 Webhook

在您可以将提醒发送到 Webhook 之前,管理员需要创建一个要定位的 Webhook。

管理员可以通过单击齿轮图标 > 管理设置 > 通知渠道来创建 Webhook。在 Webhook 提醒中,单击 + 添加另一个。Metabase 将为您提供一个简短的表格来填写

  • Webhook URL。您希望 Metabase 将提醒结果发送到的位置。必须是有效的 URL。
  • 为其命名。您必须命名 Webhook,以便人们在设置问题提醒时可以选择正确的 Hook。
  • 描述。您应该告诉人们 Hook 的用途。
  • 身份验证方法。请参阅下文。

Webhook 身份验证方法

您可以为 Webhook 指定身份验证方法。

  • :一切皆可。
  • 基本:设置用户名和密码。
  • Bearer:包含一个 密钥令牌
  • API 密钥:您可以将 API 密钥添加到标头或作为查询参数。这两种方法都需要密钥和值(API 密钥本身)。

Webhook 有效负载

Metabase 将以 JSON 格式发送提醒的结果。JSON 将包含有关问题的一些元数据,例如提醒的创建者及其 ID(在测试提醒的情况下为 null)。

Metabase 将以 base64 编码的 PNG 格式发送“附加”可视化,位于 data 键下的 visualization 中。

The encoded PNG chart

以及在表格视图中看到的数据,Metabase 将其作为 raw_data 发送。

Results as table view

这是一个提醒的有效负载示例(我们截断了 PNG 编码,因为它很长且非常无聊)

{
  "type": "alert",
  "alert_id": null,
  "alert_creator_id": 2666,
  "alert_creator_name": "Roberto Bolaño",
  "data": {
    "type": "question",
    "question_id": 108,
    "question_name": "Sales",
    "question_url": "http://example.com/question/108",
    "visualization": "data:image/png;base64,=...LONG_ENCODED_PNG_HERE...",
    "raw_data": {
      "cols": [
        "CREATED_AT",
        "count"
      ],
      "rows": [
        [
          "2023-09-01T00:00:00Z",
          346
        ],
        [
          "2023-10-01T00:00:00Z",
          354
        ],
        [
          "2023-11-01T00:00:00Z",
          394
        ],
        [
          "2023-12-01T00:00:00Z",
          418
        ],
        [
          "2024-01-01T00:00:00Z",
          457
        ],
        [
          "2024-02-01T00:00:00Z",
          404
        ],
        [
          "2024-03-01T00:00:00Z",
          445
        ],
        [
          "2024-04-01T00:00:00Z",
          439
        ],
        [
          "2024-05-01T00:00:00Z",
          520
        ],
        [
          "2024-06-01T00:00:00Z",
          455
        ],
        [
          "2024-07-01T00:00:00Z",
          523
        ],
        [
          "2024-08-01T00:00:00Z",
          501
        ]
      ]
    }
  },
  "sent_at": "2024-09-30T20:16:15.76582Z"
}

进一步阅读

阅读其他Metabase 版本的文档。