钉钉机器人Webhook构建器

在浏览器本地拼装钉钉群机器人 text/markdown/link/actionCard/feedCard 消息 JSON,本地完成 HMAC-SHA256 加签,生成 curl 命令不代发。

免费在线工具
Loading…

使用说明

  1. 填入群机器人的 access_token。如果安全设置选择了“加签”,勾选“启用加签”并填入 secret(SEC 开头),timestamp 会在点击生成时自动取当前毫秒时间戳,sign 会在浏览器本地按官方算法(timestamp+"\n"+secret 做 HMAC-SHA256 再 Base64)实时计算,secret 全程不会离开你的浏览器,不会上传到任何服务器
  2. 选择消息类型:text/markdown(都支持 at.atMobiles、at.atUserIds、at.isAtAll)、link(图文链接)、actionCard(整体跳转填单按钮,独立跳转填多个按钮)、feedCard(多条图文链接列表)。
  3. 填写对应字段后点击“生成 JSON + curl 命令”,输出符合钉钉自定义机器人官方协议的 JSON payload 和 curl POST 命令(地址已带上 access_token、timestamp、sign 参数)。
  4. 点击“复制”把内容复制到剪贴板。生成的内容需要你自己用 curl 或程序发送,本工具不会代你发送,也不会向钉钉服务器发起任何请求。
  5. 可点击“加载示例数据”快速体验完整流程,包括加签示例。

功能介绍

本工具面向需要对接钉钉自定义机器人的开发者,覆盖官方文档定义的五种 msgtype:

  • text:content 正文,配合 at 对象实现 @指定手机号/@指定 userId/@所有人。
  • markdown:title + text,同样支持 at。
  • link:text/title/picUrl/messageUrl 图文链接卡片。
  • actionCard:支持整体跳转(singleTitle+singleURL)和独立跳转(btns 按钮数组)两种模式,可设置按钮横排或竖排(btnOrientation)。
  • feedCard:links 数组,多条图文摘要列表。

核心亮点是加签(安全设置为“加签”时必需):按钮触发时,工具用 Web Crypto API 在浏览器本地对 timestamp+"\n"+secret 做 HMAC-SHA256 并 Base64 编码,全程不联网、不上传 secret,计算完成后自动拼进 webhook 地址。

使用场景

加签机器人本地验证
开启了加签的机器人,先在这里本地生成一次带 sign 的 webhook 地址和 curl 命令,确认签名算法无误再接入生产脚本。
CI/CD 构建通知
构建流水线里用 actionCard 消息推送构建结果,附带“查看详情”按钮直达构建日志页面。
运营卡片式推送
用 feedCard 一次性拼出多条资讯摘要,用于周报、活动预告等图文列表消息。
值班/告警@提醒
在 text 或 markdown 消息里配置 atMobiles,把值班同事的手机号加入@列表,故障发生时自动定向提醒。

常见问题

我的 secret 会被上传到服务器吗?
不会。加签所需的 HMAC-SHA256 计算全部通过浏览器内置的 Web Crypto API 在本地完成,secret 和 access_token 都不会发送到任何服务端,也不会被本工具存储。
这个工具会帮我把消息发出去吗?
不会。工具只生成 JSON payload 和 curl 命令,发送动作需要你自己复制后执行,工具本身不会向钉钉服务器发起任何网络请求。
什么时候需要启用加签?
钉钉群机器人安全设置里选择“加签”方式时才需要,如果你选择的是“自定义关键词”或“IP 地址”方式,不勾选“启用加签”即可,直接用 access_token 拼出的地址。
actionCard 的整体跳转和独立跳转有什么区别?
整体跳转只需填 singleTitle 和 singleURL,点击卡片任意位置都会跳转同一链接;独立跳转通过 btns 数组配置多个按钮,每个按钮可以跳到不同链接,填了按钮列表时会优先生效。
timestamp 会不会过期?
钉钉要求 timestamp 与当前时间误差在 1 小时以内,所以本工具在你点击“生成”的那一刻才计算 timestamp 和 sign,建议生成后尽快复制发送,不要放置太久再使用。