必须通过webhook回调机制实现审批系统与扣子工作流对接:先开启工作流webhook触发并获取url;再用“结束节点”退出流程并返回instance_id;审批系统审批完成后post含instance_id和approval_result的json至该url;扣子接收后通过选择器节点分支处理通过或驳回逻辑。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在扣子工作流中接入真实审批系统(如飞书、钉钉或自建审批后台),让流程卡在人工节点等待外部审批结果再继续执行,不能只靠“暂停等待”或轮询数据库——那样延迟高、易丢任务、无法感知驳回动作。必须通过 Webhook 回调机制,由审批系统主动通知扣子流程恢复。
确认工作流支持 Webhook 触发与回调
登录 coze.cn → 进入「工作空间」→「资源库」→「工作流」→ 点击目标工作流右侧「…」→「设置」→ 检查「Webhook 触发」是否已开启。未开启则点击启用,并复制生成的 Webhook URL。该 URL 是唯一入口,【所有审批回调必须 POST 到此地址,且 body 必须含 instance_id 字段】。
注意:Webhook 触发仅对新启动的流程生效;已有运行中流程无法中途绑定,需重新触发。
在流程中插入人工审核节点
方法一:使用「HTTP 请求」节点模拟审批挂起
从左侧节点面板拖入「HTTP 请求」节点,命名为「等待审批结果」。配置如下:
请求方式选 GET;URL 填写你自己的中转服务地址(例如 https://your-api.com/wait-for-approval?instance_id={{start.instance_id}});超时设为 86400 秒(24 小时)。这一步不真正等待,而是把流程控制权交出去。
方法二:用「结束节点」主动退出 + 外部唤醒(推荐)
删除默认结束节点,在需要审核的位置插入一个「结束节点」,输出字段填 { "status": "pending", "instance_id": "{{start.instance_id}}" }。此时流程终止,但返回 instance_id 给外部系统。审批系统拿到 ID 后,调用扣子 Webhook URL 并携带该 ID 和审批结果,即可唤醒续跑。
配置审批系统回调扣子
第一步:确保审批系统能发起 HTTP POST 请求
第二步:构造回调 payload,必须包含以下字段:
{ "instance_id": "wf_xxx123", "approval_result": "approved", "approval_comment": "同意上线" }
第三步:POST 到你在上一步复制的 Webhook URL,Content-Type 设为 application/json
【扣子仅识别 instance_id 字段匹配的流程实例;若字段名写错(如写成 id 或 workflow_id)或值为空,回调将静默失败,流程永不恢复】
第四步:在扣子工作流中添加「开始节点」后的第一个节点,勾选「接收 Webhook 输入」,并映射 approval_result 字段到变量,供后续条件分支判断。
在工作流内处理审批结果分支
步骤一:从左侧拖入「选择器」节点,放在 Webhook 开始节点之后
步骤二:点击配置 → 添加分支 → 条件设为 {{approval_result}} == "approved"
步骤三:另一分支条件设为 {{approval_result}} == "rejected"
步骤四:Approved 分支连向后续业务节点(如发送通知、更新数据库);Rejected 分支连向另一个「结束节点」,输出 {"code": 403, "msg": "审批未通过"}
这一步不能用「大模型节点」做判断——它会引入非确定性,且无必要消耗 token。选择器是轻量、确定、可审计的分支控制点。










