Poco 使用手册
WebHook

介绍

让 Poco 在会话、定时任务、人工输入、发布页或工作区导出状态变化时主动通知外部系统。

WebHook 是 Poco 向外部系统发送的 HTTP POST 通知。你的系统提供一个公开可访问的接收地址,Poco 在订阅事件发生时把 JSON 数据推送过去。

典型流程

  1. 在接收系统创建 HTTPS 端点。
  2. 在 Poco 配置推送地址、事件、范围、签名密钥和重试策略。
  3. 接收端使用原始请求体完成验签。
  4. 使用 event_id 做幂等判断。
  5. 快速返回 HTTP 2xx,再异步执行耗时业务。
  6. 先测试推送,再用真实会话验证事件过滤和业务处理。

支持的事件

业务事件
会话session.completed、session.failed、session.stopped
定时任务scheduled_task.run_status_changed
人工输入user_input.requested、user_input.answered
工作台洞察workbench.insight_status_changed
发布页publish_page.published、publish_page.failed
工作区导出workspace_export.completed

WebHook 不等于 API 响应

API 对话响应适合当前请求立即消费;WebHook 适合异步状态通知。一个业务流程可能同时使用两者,例如:

  • Messages 接口创建任务,WebHook 在会话完成后通知工单系统。
  • session.completed 表示 Agent 运行完成,workspace_export.completed 才表示工作区文件已导出。
  • publish_page.published 表示发布页版本已生成,比会话完成更适合触发内容同步。

接入要求

  • 生产地址使用 HTTPS,并保证 Poco 服务器可以访问。
  • 始终配置签名密钥,并验证时间戳,防止伪造和重放。
  • 接收端必须幂等;Poco 的失败重试可能投递同一个 event_id 多次。
  • 只有 HTTP 2xx 被视为成功,响应正文格式不影响成功判断。

建议按顺序阅读配置 WebHook、投递协议、签名校验和接收端实现。

On this page