Webhook渠道和内容模板
September 26, 2022About 10 min
Webhook渠道和内容模板
SDK类名:/common/Webhook;
webhook渠道 - 新建
SDK方法名:createWebhook;
URL
/webhook
Method
POST
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
id | String | 即ID,Webhook的唯一标识,不可重复,由界面生成 | |||
name | String | Webhook名称 | |||
type | String | Webhook类型,目前支持: 钉钉 - dd 企业微信 - qywx 飞书 - fs 通用Webhook - general | |||
url | String | Webhook URL地址。 您需要在各个Webhook通知渠道侧完成相关配置,并获取Webhook URL地址。相关说明如下: 钉钉 在钉钉侧创建自定义机器人,并获取Webhook URL地址。更多信息,请参见自定义机器人接入: https://open.dingtalk.com/document/group/custom-robot-access 企业微信 在企业微信侧创建自定义机器人,并获取Webhook URL地址。更多信息,请参见群机器人配置说明: https://developer.work.weixin.qq.com/document/path/91770 飞书 在飞书侧创建自定义机器人,并获取Webhook URL地址。更多信息,请参见如何在群组中创建机器人: https://www.feishu.cn/hc/zh-CN/articles/360024984973?spm=a2c4g.11186623.0.0.2fa667cdYnJS1P Slack 在Slack侧创建Webhook,获取Webhook URL地址。更多信息,请参见Sending messages using Incoming Webhooks: https://api.slack.com/messaging/webhooks?spm=a2c4g.11186623.0.0.2fa667cdYnJS1P | |||
config | Object | webhook配置信息 | |||
method | String | 调用该Webhook的请求方法,当类型为通用Webhook时需要配置,其余类型默认为POST | |||
secret | String | Webhook加签密钥: 选择类型为钉钉或飞书,且在钉钉或飞书侧设置安全校验方式为签名校验时,需配置。如何获取,请参见如下说明: 钉钉:在钉钉侧自定义机器人管理界面启用加签方式,然后获取Webhook加签密钥。更多信息,请参见自定义机器人安全设置: https://open.dingtalk.com/document/group/customize-robot-security-settings 飞书:在飞书侧自定义机器人管理界面启用加签方式,然后获取Webhook加签密钥。更多信息,请参见签名校验: https://open.feishu.cn/document/ukTMukTMukTM/ucTM5YjL3ETO24yNxkjN?spm=a2c4g.11186623.0.0.2fa667cdYnJS1P#348211be | |||
headers | Array | 调用该Webhook的自定义Headers 当类型为通用Webhook时需要配置 |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
ret | Number | 200 | |||
msg | String | ||||
data | Object | ||||
message | String | ||||
code | Number | 0 |
Webhook渠道 - 修改
SDK方法名:modifyWebhook;
URL
/webhook/:uuid([A-F0-9-]+)
Method
PUT
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
id | String | ||||
name | String | ||||
url | String | ||||
random_str | String | ||||
config | Object |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
ret | Number | 200 | |||
msg | String | ||||
data | Object | ||||
message | String | ||||
code | Number | 0 |
Webhook渠道 - 列表
SDK方法名:listWebhook;
URL
/webhook
Method
GET
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
where_args[type] | String | 根据类型过滤,不传获取所有 | |||
like_args[name] | String | 根据名称进行过滤,支持模糊搜索 | |||
page | Number | 可选 | |||
limit | Number | 可选 |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
data | Object | ||||
info_list | Array | 3-15 | |||
uuid | String | @pick(["0DD4E727-70AB-62C6-BEB5-D012DFAE46E3", "0DD4E727-70AB-62C6-BEB5-D012DFAE46E4"]) | @uuid() | ||
id | String | @string() | |||
name | String | @pick(["kevin", "Jane", "Grey"]) | @first() | ||
type | String | @pick(['dd', 'fs', 'qywx']) | |||
url | String | @url() | |||
config | Object | ||||
username | String | @pick(["admin", "user", "super"]) | |||
can_del | Number | 1 | |||
can_op | Number | 1 | |||
total | Number | 10 | |||
code | Number | 0 | |||
message | String | ||||
ret | Number | 200 | |||
msg | String |
Webhook渠道 - 单个
SDK方法名:describeWebhook;
URL
/webhook/:uuid([A-F0-9-]+)
Method
GET
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
ret | Number | 200 | |||
msg | String | ||||
data | Object | ||||
message | String | ||||
webhook | Object | ||||
name | String | @cname | |||
type | String | @pick(['qywx', 'fs']) | |||
id | String | ||||
uuid | String | @uuid | |||
url | String | ||||
config | Object | ||||
random_str | String | ||||
code | Number | 0 |
Webhook渠道 - 删除
SDK方法名:deleteWebhook;
URL
/webhook
Method
DELETE
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
uuids | Array |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
ret | Number | 200 | |||
msg | String | ||||
data | Object | ||||
message | String | ||||
code | Number | 0 |
内容模板 - 新建
SDK方法名:createWebhookContentTemplate;
URL
/webhook/content_template
Method
POST
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
id | String | ID | |||
name | String | 名称 | |||
warn_type | String | 告警类型 资源管理-res 文件复制-rule Nas文件复制-nas 整机保护-fsp 整机迁移-fsp_move 副本管理-cdm 云容灾-cloud 虚拟化支持-vp 应用保护-timing 应用高可用-ha Oracle同步-active 巡检通知-routing_inspection 整体状态-all_status 告警通知-alarm 存储监控-storage 许可-lic DTO管理-dto | |||
config | Object | ||||
dd|qywx | fs | kafka | general | sms | Object |
language | String | 非定制内容语音:zh-中文 en-英文 | zh | ||
title | String | 主题 | |||
content | String | 资源管理-res 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 状态:${status} 管理地址:${config_addr} 数据地址:${data_addr} 时间:${time} 文件复制-rule 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 状态:${status} 资源类型:${res_type_0} 资源名称:${res_name_0} 资源状态:${res_status_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 资源类型:${res_type_1} 资源名称:${res_name_1} 资源状态:${res_status_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 时间:${time} 延迟:${latency} 延迟阈值:${latency_threshold} 提示:${tips} NAS文件复制-nas 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 状态:${status} 资源类型:${res_type_0} 资源名称:${res_name_0} 资源状态:${res_status_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 资源类型:${res_type_1} 资源名称:${res_name_1} 资源状态:${res_status_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 资源类型:${res_type_2} 资源名称:${res_name_2} 资源状态:${res_status_2} 管理地址:${config_addr_2} 数据地址:${data_addr_2} 时间:${time} 整机保护-fsp 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 状态:${status} 资源类型:${res_type_0} 资源名称:${res_name_0} 资源状态:${res_status_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 资源类型:${res_type_1} 资源名称:${res_name_1} 资源状态:${res_status_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 时间:${time} 副本管理-cdm 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 状态:${status} 资源类型:${res_type_0} 资源名称:${res_name_0} 资源状态:${res_status_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 资源类型:${res_type_1} 资源名称:${res_name_1} 资源状态:${res_status_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 时间:${time} 云容灾-cloud 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 状态:${status} 资源类型:${res_type_0} 资源名称:${res_name_0} 资源状态:${res_status_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 资源类型:${res_type_1} 资源名称:${res_name_1} 资源状态:${res_status_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 时间:${time} 虚拟化支持-vp 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 虚机名称:${vm_name} 状态:${status} 资源类型:${res_type_0} 资源名称:${res_name_0} 资源状态:${res_status_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 资源类型:${res_type_1} 资源名称:${res_name_1} 资源状态:${res_status_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 资源类型:${res_type_2} 资源名称:${res_name_2} 资源状态:${res_status_2} 管理地址:${config_addr_2} 数据地址:${data_addr_2} 时间:${time} 应用保护-timing 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 状态:${status}} 资源类型:${res_type_0} 资源名称:${res_name_0} 资源状态:${res_status_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 资源类型:${res_type_1} 资源名称:${res_name_1} 资源状态:${res_status_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 时间:${time} 应用高可用-ha 模板必须包含 用户名:${username} 高可用:${name} 提示:${tips} 初始主节点:${res_name_0} 当前状态:${res_status_0} 当前角色:${res_type_0} 管理地址:${config_addr_0} 数据地址:${data_addr_0} 初始从节点:${res_name_1} 当前状态:${res_status_1} 当前角色:${res_type_1} 管理地址:${config_addr_1} 数据地址:${data_addr_1} 时间:${time} Oracle同步-active 模板必须包含 用户名:${username} Active数据同步:${name} 告警类型:${type} code: ${code} 进程:${module} 信息:${summary} 时间:${time} 巡检通知-routing_inspection 模板必须包含 用户名:${username} 时间:${time} 整体状态-all_status 模板必须包含 用户名:${username} 节点:${node} 虚拟平台:${vp} 集群:${cls} 复制规则:${rep_backup} NAS:${nas} 全服备份:${fsp_backup} 全服迁移:${fsp_move} 定时备份:${timing_backup} 高可用:${ha} 虚机备份:${vp_backup} 虚机恢复:${vp_recovery} 虚机迁移:${vp_move} 虚机复制:${vp_rep} 时间:${time} 告警通知-alarm 模板必须包含 用户名:${username} 名称:${name} 类型:${module} 内容:${msg} 时间:${time} 存储监控-storage 模板必须包含 节点名称:${bk_node_name} 节点地址:${bk_ip} 存储名称:${dev_mount} 当前已用:${dev_used_percent} 告警阈值:${threshold} 用户名:${username} 时间:${time} 许可-lic 模板必须包含 用户名:${username} SN:${sn} 功能:${feature} 告警原因:${alarm_for} 过期类型:${expired_type} 过期日期:${expired_date} 剩余天数:${days_remaining} 时间:${time} | |||
method | String | 发送方式: 合并转发:combine 逐条发送:separate | |||
count | Number | 单个分组中最多发送条数 0表示无限制 |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
ret | Number | 200 | |||
msg | String | ||||
data | Object | ||||
code | Number | 0 | |||
message | String |
内容模板 - 修改
SDK方法名:modifyWebhookContentTemplate;
URL
/webhook/content_template/:uuid([A-F0-9-]+)
Method
PUT
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
id | String | ||||
name | String | ||||
warn_type | String | ||||
webhook_type | String | ||||
random_str | String | ||||
config | Object | ||||
language | String | ||||
title | String | ||||
content | String |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
ret | Number | 200 | |||
msg | String | ||||
data | Object | ||||
message | String | ||||
code | Number | 0 |
内容模板 - 列表
SDK方法名:listWebhookContentTemplate;
URL
/webhook/content_template
Method
GET
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
uuid | String | 为空表示列表,不为空表示单个 | |||
limit | Number | 可选 | |||
page | Number | 可选 | |||
like_args[name] | String | 可选, 名称搜索,支持模糊搜索 | |||
where_args[warn_type] | String | 可选,根据告警类型过滤,告警类型对应消息类型 |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
data | Object | ||||
info_list | Array | ||||
id | String | ||||
uuid | String | @pick(["0DD4E727-70AB-62C6-BEB5-D012DFAE46E3", "0DD4E727-70AB-62C6-BEB5-D012DFAE46E4"]) | |||
name | String | @pick(["kevin", "Jane", "Grey"]) | |||
webhook_type | String | @pick(['dd', 'fs', 'qywx']) | |||
warn_type | String | @pick(['rep']) | |||
username | String | @pick(["admin", "user", "super"]) | |||
config | Object | ||||
can_del | Number | 1 | |||
can_op | Number | 1 | |||
create_time | String | 创建时间 | |||
update_time | String | 上次修改时间 | |||
total | Number | 100 | |||
code | Number | 0 | |||
message | String | ||||
ret | Number | 200 | |||
msg | String |
内容模板 - 删除
SDK方法名:delteWebhookContentTemplate;
URL
/webhook/content_template
Method
DELETE
Request
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
uuids | Array |
Response
名称 | 类型 | 必选 | 简介 | Mock初始值 | Mock规则 |
---|---|---|---|---|---|
ret | Number | 200 | |||
msg | String | ||||
data | Object | ||||
message | String | ||||
code | Number | 0 |