UAT Studioby Salvion
帮助 · 连接

连接 webhook

以 JSON 格式将问题发送到 Power Automate、Zapier、Make、n8n 或您自己的服务,再转发到团队工作的任何地方:Slack、ServiceNow、电子表格,或我们尚未连接的工单系统。

耗时 约 10 分钟执行者 工作区管理员,以及搭建流程的人员套餐 Team、Business、Partner 和 Enterprise
一分钟了解

先看一下

为 Power Automate、Zapier 或 Make 设置 webhook:地址、自动发送、密钥、测试以及它发送的消息(51 秒,画面内含英文字幕)。
开始之前

您需要准备

  • 一个接受 JSON 格式 POST 请求的地址,以 https:// 开头。大多数自动化工具都会提供(见示例)。
  • 您的 UAT Studio 工作区的管理员权限。
使用 Jira、Azure DevOps 或 Teams?请改用这些连接:它们会创建附带文件的真实工单、回传状态并合并重复项。请参阅所有指南概览。webhook 只负责发送,不会接收回传。
设置 · 每个地址一次

连接您的 webhook

1

获取流程的地址

先在您使用的工具中创建接收端,并复制其地址。想在搭建之前先看看消息?打开 webhook.site:它会提供一个临时地址,并显示发送到该地址的所有内容。请仅用于测试数据。

2

在 UAT Studio 中添加 webhook

打开您的工作区,点击 Connections,在 Add a connection 下选择 Webhook,然后点击 Add。再填写:

  • Webhook address:第 1 步中的地址。
  • Send automatically:
    • Only when I click Send on an issue(默认):由管理员决定发送哪些问题。
    • Every new issue and every status change, by itself:所有内容都会立即发送。

点击 Save settings。Send automatically 下的选项在更改后会立即保存。

Webhook 连接:已填写地址,Send automatically 设为每个新问题和每次状态变化
3

添加密钥(可选,推荐)

为了让您的流程确认消息确实来自 UAT Studio,请设定一个较长的随机密钥(至少 8 个字符,最好 32 个或更多),粘贴到 Secret (optional) 下,然后点击 Store token。此后每条消息都会带有以下标头:

Authorization: Bearer <您的密钥>

让您的流程拒绝没有正确标头的消息。密钥会加密存储,无法读取;粘贴新密钥即可替换。

4

测试连接

点击 Test connection。UAT Studio 会发送:

{ "event": "test", "message": "Test message from UAT Studio" }

200 到 299 之间的任何响应都视为成功;您会看到 The webhook answered 200。请确保您的流程能接受或跳过测试事件,且不报错。

使用方法

何时发送

事件时机
issue.sent管理员在问题上点击 Send to Webhook。只要连接为 On 就始终可用。
issue.created测试人员报告新问题。仅当 Send automatically 设为每个新问题时。
issue.status_changed问题状态发生变化,例如变为 Ready for retest 或 Closed。仅在开启 Send automatically 时。包含 from 和 to。
test您点击 Test connection。

作为重复项合并到另一问题中的问题,不会发送新的 issue.created。

参考

发送内容

一个带有 Content-Type: application/json 的 POST 请求。所有问题事件的结构都相同:

{
  "event": "issue.status_changed",
  "project": { "id": "6b1f…", "name": "CRM UAT" },
  "issue": {
    "id": "a41c…",
    "key": "ISS-012",
    "title": "Save button greyed out",
    "description": "After changing the phone number, Save stays grey.",
    "severity": "High",
    "priority": "High",
    "status": "Ready for retest",
    "assignee": "Dev team",
    "ticket": "PORTAL-41",
    "ticket_url": "https://acme.atlassian.net/browse/PORTAL-41"
  },
  "test_case": { "num": 4, "title": "Edit a contact", "step": 3 },
  "reported_by": "Tess Tester",
  "from": "In progress",
  "to": "Ready for retest",
  "url": "https://app.uat.studio/p/6b1f…/issues"
}
字段含义
eventissue.sent、issue.created、issue.status_changed 或 test。
projectUAT 项目:id 和名称。
issue.keyUAT Studio 中的编号,例如 ISS-012。使用 issue.id 在后续消息中识别同一个问题。
issue.severityCritical、High、Medium 或 Low。issue.priority:High、Medium 或 Low。
issue.statusUAT Studio 中的状态:New、In progress、Ready for retest、Closed 或 Rejected。
issue.ticket关联的 Jira 或 Azure DevOps 工单(如有);否则为 null。
test_case发现问题时所在的测试和步骤编号;测试之外的问题为 null。使用 issue.sent 时,还包括该步骤的 action 和 expected 结果。
reported_by发现该问题的测试人员姓名。
from、to仅用于 issue.status_changed:旧状态和新状态。
urlUAT Studio 中该项目的问题列表。打开需要登录。

字段可能为 null,我们以后也可能增加字段,因此请让您的流程忽略无法识别的内容。截图和文件从不发送;它们保留在 UAT Studio 中。

示例

搭建接收端

Power Automate

  1. 创建一个 Instant cloud flow,触发器为 When an HTTP request is received,适用于 Anyone。
  2. 在 Request Body JSON Schema 下点击 Use sample payload to generate schema,并粘贴上面的示例。
  3. 针对 event 添加一个 Condition(例如:is not equal to test),然后添加所需的操作:Planner 任务、Excel 中的一行、一封邮件、SharePoint 中的一个项目。
  4. 保存流程。触发器现在会显示 HTTP URL:这就是 webhook 地址。

注意:HTTP 触发器在 Power Automate 中属于高级连接器。如果只是在 Teams 频道中发布内容,则不需要它:请使用 Microsoft Teams 连接。

Zapier

创建一个触发器为 Webhooks by Zapier › Catch Hook 的 Zap,复制地址,在 UAT Studio 中点击 Test connection,然后发送一个问题,让 Zapier 识别字段。再添加所需的操作,例如在 Slack 中发送消息。

Make

以 Webhooks › Custom webhook 开始一个场景,复制地址,并在从 UAT Studio 发送问题之前点击 Redetermine data structure。

您自己的服务

接受 JSON 格式的 POST 请求,用您的密钥校验 Authorization 标头,迅速返回 200,耗时的处理放到之后进行。发送失败后消息不会重发,因此请记录您收到的内容。

帮助

出现问题时

您看到处理方法
webhook 返回 401 或 403您的流程拒绝了消息:请检查两端的密钥,或确认该流程允许任何人调用。
webhook 返回 404地址有误,或流程已被删除或关闭。请重新复制地址。
webhook 返回 400 或 500您的流程不接受该消息。通常是因为它无法处理 test 事件,或值为 null 的字段。请查看流程的运行历史。
新问题没有任何消息到达请检查 Send automatically 是否设为每个新问题,并确认连接为 On。然后手动发送一个问题,查看流程的响应。
没有 Send to Webhook 按钮只有管理员能看到它,且仅当连接为 On 时才显示。
您的套餐不包含连接功能Team、Business、Partner 和 Enterprise 套餐包含连接功能,Project 套餐可作为附加组件购买。您的管理员可以在 Plan & billing 中升级。

仍未解决?请将您看到的提示信息发送至 [email protected]。切勿将密钥本身发送给我们。

安全

哪些数据会离开 UAT Studio

  • 消息仅通过 HTTPS 发送。
  • 消息包含问题文本、测试和测试人员姓名,从不包含文件或截图。请只发送到您的组织信任、可以处理这些信息的服务。
  • 密钥加密存储(AES-256),解密密钥与数据库分开保存。任何人都无法读取它。
  • 将连接切换为 Off 或将其删除,就不会再发送任何内容。