Busabase

Webhook 与事件

实时响应审批、@提及和文件上传——简单场景无需写代码,需要时也可以写一小段代码。

Webhook 与事件

点开左上角的空间菜单,选择 Webhooks,就能配置自动化规则——简单场景完全不用写代码,需要更灵活的能力时,也可以写一小段沙箱函数。

Webhooks 弹窗,列出了三条不同动作的规则,其中一条已成功运行。

Webhooks 弹窗,列出了三条不同动作的规则,其中一条已成功运行。

什么会触发一条规则

创建规则时选择一个事件。你还可以把规则限定到某一个 Base,或者保持空间级生效。

一条规则可以响应的四种事件类型。

事件触发时机
New Record(新建记录)一条记录被创建并合并进某个 Base
@AI mention(@ 提及智能体)有人在评论里 @ 了某个智能体
Changes requested(要求修改)审核人把变更请求打回去要求修改
Asset uploaded(文件已上传)上传了一个 Busabase 暂时读不出文字内容的文件(比如图片或扫描版 PDF)——很适合用来接一个外部的 OCR 或转写流程

一条规则能做什么

每条规则做以下三件事之一:

动作会发生什么
Webhook向你提供的 URL 发送一个带签名的 HTTP POST——最经典的"通知其他系统"webhook
Notify agent(通知智能体)同样是带签名的 POST,只是目标是你的 AI 智能体的接口,让它接手处理
Run function(运行函数)在 Busabase 内部直接运行一小段你写的 JavaScript——不需要你自己搭服务器

WebhookNotify agent 只需要一个 URL(可选:一个密钥,Busabase 会用它给请求签名,方便接收端验证请求确实来自你)。

写一个函数

Run function 是最灵活的选项:你写一小段脚本,它会以 input 的形式收到事件数据,并且可以直接调用 fetch(url, options) 联系任何带 URL 的其他服务——Slack、工单系统、你自己的 API,都行。

函数编辑器:代码、一段说明能力范围的提示文字,以及超时设置。

函数编辑器:代码、一段说明能力范围的提示文字,以及超时设置。

一个函数可以:

  • 读取 input——事件携带的数据(记录字段、所属的 base 等等)
  • 调用 console.log(...)——你打的日志之后都会出现在投递日志里,是调试规则最简单的方式
  • 调用 fetch(url, options),最多 10 次,用来通知其他系统、查点什么,或者把几个请求串起来
  • return 一个值——它只是被记录下来供你参考,不会再触发别的动作

你还可以设置一个超时时间(100ms~5000ms),限制整个函数(包括它发起的所有 fetch 调用)最长能跑多久。

保证安全

函数运行在一个隔离的沙箱里——读不到你的文件、环境变量,或者服务器上的任何其他东西。它唯一能碰的是网络,而且是通过 fetch 受限访问:任何指向你自己内网的请求(本机地址、内网 IP 段,或云服务商的基础设施地址)都会被自动拦截。函数是用来跟外部世界打交道的,不是用来探测你自己的基础设施的。

确认它是否生效

每条规则都会保留最近几次运行的简要记录——展开规则即可查看。Success(成功)条目会显示你打印的日志内容;Failed(失败)条目会显示具体错误,方便你定位问题并修复。

一条规则的投递日志,展示了一次成功运行及其打印的输出。

一条规则的投递日志,展示了一次成功运行及其打印的输出。

随时可以点 Test now(立即测试)按钮,用一份逼真的示例数据立刻触发规则——不用等真实事件发生,即使规则还处于关闭状态也能测试。

另请参阅:核心概念 · 快速开始 · REST API

On this page