通知概览#
Apidog 支持你与第三方应用集成,以便在特定事件发生时向指定接收者发送通知。当某个特定事件被触发时,通知会实时发送到 Slack 等平台。目前支持的通知渠道包括:只有项目管理员可以配置通知设置。目前,邮件通知仅适用于以下事件:通知目标#
通知目标是指在特定事件发生时,通过某个特定渠道接收消息的接收者。要设置通知,首先需要通过指定名称、选择渠道并配置其设置来创建通知目标。每个渠道都有独特的设置流程。以下各节将逐步引导你完成配置。Slack#
Apidog 支持通过集成 Slack 应用 —— 指定 Channel 中的 Incoming WebHooks,并配置 Incoming WebHooks 的 Webhook URL,将通知事件发送到 Slack 中的特定 Channel,从而把事件消息发送到 Slack Channel。| 配置字段 | 必填 | 描述 |
|---|
| 通知名称 | 否 | 为第三方集成通知命名,以记录其用途。 |
| 触发事件 | 是 | 支持的事件:API 变更、schema 变更、文档变更、导入数据、自动化测试 |
| 服务 URL | 是 | “Incoming WebHooks - Integration Settings” 中的 Webhook URL |
将 Apidog 通知与 Slack 集成#
项目管理员可以使用第三方集成功能,将 Slack 中添加的 Slack 应用 —— Incoming WebHooks - Channels 与 Apidog 中的项目通知事件关联起来,以将相关 API 变更、文档变更、测试完成等推送到 Slack 中指定的 Channel。步骤 1:打开频道详情
在 Slack 频道中,点击右上角的 “Open channel details” 选项。步骤 2:安装 Incoming WebHook
在特定 Channel 的 Integrations - Apps 中,安装并添加 Incoming WebHook。步骤 3:查看 Incoming WebHooks
安装完成后,点击 Incoming WebHooks 右侧的按钮 - View。步骤 4:配置 Incoming WebHooks
这将打开 Incoming WebHooks 的说明页面,点击 Configuration 进行设置。步骤 5:添加到 Slack
步骤 6:选择 Channel 并添加集成
选择要推送 Apidog 通知事件消息的 Channel,然后点击 Add Incoming WebHooks integration。步骤 7:获取 Webhook URL
步骤 8:在 Apidog 中创建通知目标
点击 “Settings” > “Notifications” > “Notification Targets” > 并创建一个新的通知目标。将从 Incoming WebHooks 设置中获取的 Webhook URL 粘贴到 Service URL 中。
通知事件设置并触发后,你将在指定的 Slack 频道中收到消息。Teams#
支持向 Microsoft Teams 发送通知,允许 Teams 中的 Workflows 使用这些消息作为后续操作的触发器——例如自动在群组或频道中发布消息——帮助团队及时了解来自 Apidog 的重要事件。具体来说,你可以在 Workflow 中配置 Webhook Trigger。当 Apidog 中的某些通知事件被触发时(例如 API 变更、文档更新或自动化测试完成),Apidog 会向该触发器指定的 HTTP POST URL 发送 POST 请求,并携带事件 payload。| 字段 | 必填 | 描述 |
|---|
| Name | 是 | 描述此通知目标用途的名称 |
| HTTP POST URL | 是 | Workflow 中 Webhook Trigger 接收 POST 请求的 URL |
将 Apidog 通知与 Teams 频道集成#
步骤 1:在 Teams 中创建 workflow
在 Microsoft Teams → Workflow 中,点击 Create,你可以通过选择模板 Post to a channel when a webhook request is received 快速开始。步骤 2:设置流名称和账号
为流设置名称,选择合适的账号,然后点击 Next。步骤 3:选择群组和频道
选择你希望接收通知的群组和频道,然后点击 Create flow。步骤 4:获取 HTTP POST URL
流创建完成后,将显示触发步骤下的 HTTP POST URL。你可以直接复制它,或稍后在该流的触发步骤中找到它。步骤 5:在 Apidog 中配置通知目标
将此 HTTP POST URL 粘贴到 Apidog 的通知目标配置中。步骤 6:创建通知事件
在 Apidog 中创建通知事件,并将其与已配置的 Teams 通知目标关联。步骤 7:验证 Teams 通知
当此通知事件被触发时,之前创建的 workflow 将自动向所选 Teams 频道发布消息。Webhook#
支持向 HTTP Server 发送通知事件。你可以通过指定用于接收 POST 请求的 URL 地址,将事件消息发送到 HTTP Server。| 配置字段 | 必填 | 描述 |
|---|
| 通知名称 | 否 | 为第三方集成通知命名,以记录通知用途。 |
| 触发事件 | 是 | 支持的事件:API 变更、数据模型变更、文档变更、导入数据、自动化测试 |
| 服务器 URL | 是 | 用于接收请求的 HTTP Server 的 URL 地址 |
| 签名认证 | 否 | 发送的内容通过 HMAC SHA1 加密算法加密,使用 token 作为 KEY,以十六进制显示其值(需要配置 token),并包含前缀 sha1= |
将 Apidog 通知与自托管 HTTP Server 集成#
项目管理员可以使用第三方集成,将其自托管 HTTP Server 与 Apidog 中的项目通知事件关联起来,以便在其 HTTP Server 中接收相关 API 变更、文档变更和自动化测试完成的通知。要将 Apidog 通知与自托管 HTTP server 集成,请点击 “Settings” > “Notifications” > “Notification Targets” > 并创建一个新的通知目标。3.
将自托管 HTTP Server 的 URL 粘贴到 Service URL 字段中。
4.
如果启用了签名验证,请将密钥复制并粘贴到 Signature Key 字段中。
Jenkins#
它支持向 Jenkins 服务发送通知事件。通过配置 Jenkins Webhook URL,可以将事件消息发送到 Jenkins。将 Apidog 通知与 Jenkins 服务集成#
项目管理员可以使用第三方集成功能,将 Jenkins Generic Webhook Trigger 插件中配置的 Webhook URL 与 Apidog 中的项目通知事件关联起来,以便在 API 变更、文档变更和自动化测试完成等事件被触发时,自动在 Jenkins 中触发构建操作,并在构建历史中查看消息。步骤 1:在 Jenkins Generic Webhook Trigger 插件中配置 Webhook URL
在 Jenkins Dashboard 上创建一个新的视图:点击上一步中的视图,进入 Configure>Build Triggers,并选择 Generic Webhook Trigger。Webhook URL 为 "http://"+"your service address"+"/generic-webhook-trigger/invoke"步骤 2:创建新的通知目标
点击 “Settings” > “Notifications” > “Notification Targets” > 并创建一个新的通知目标。如果使用了自定义 token,请将 Token 复制并粘贴到 Signature Token 字段中。
通知事件设置并触发后,Jenkins 将自动发起构建操作,你可以在构建历史中查看消息:Email#
可以通过电子邮件向指定邮箱地址发送通知。目前,邮件通知仅适用于以下事件:| 字段 | 必填 | 详情 |
|---|
| 名称 | 是 | 一个描述性名称,用于突出通知目标的用途或特点。 |
| 通知邮箱地址 | 是 | 输入用于接收通知的邮箱地址。你可以选择项目成员的邮箱地址,也可以手动输入地址。支持多个邮箱地址。 |
将 Apidog 通知与 Email 集成#
通知事件#
你可以创建通知事件,以指定哪些事件会触发通知并发送给指定接收者(通知目标)。要设置通知事件,你需要配置:触发事件#
| 触发事件 | 详情 |
|---|
| 端点已变更 | 端点已创建 端点已更新 端点已删除 |
| Schema 已变更 | Schema 已创建 Schema 已更新 Schema 已删除 |
| 文档已变更 | 文档已创建 文档已更新 文档已删除 |
| 数据导入 | 导入(手动导入) 导入(自动同步) |
| 响应组件已变更 | 响应组件已创建 响应组件已更新 响应组件已删除 |
| Sprint 分支已变更 | Sprint 分支已合并 Sprint 分支已创建 Sprint 分支已归档 Sprint 分支已删除 Sprint 分支已恢复 |
| API 版本已变更 | API 版本已创建 API 版本已删除 |
| 安全方案已变更 | 安全方案已创建 安全方案已更新 安全方案已删除 |
对于与自动化测试相关的通知(例如自动化测试完成、持续集成完成、定时任务完成),你需要分别为每个测试场景配置设置。这种方式更加灵活,也更适合真实使用场景。
通知目标#
选择当触发事件发生时,哪些通知目标将接收通知。你可以从项目中已设置的通知目标中选择,并可根据需要选择多个目标。