带重试功能的可靠 Webhook
在请求完成时获得通知。非常适合后台处理,无需保持连接处于打开状态。.
可视化
Webhook 交付流程
事件进入队列,以退避方式重试,如果失败则进入 DLQ。.
创建事件
完成或状态更改触发
进入交付队列
已排序,使用密钥签名
带重试功能的交付
直到收到 200 OK 为止的退避
交付成功
200 OK,签名已验证
如果失败则进入 DLQ
检查并重放失败的事件
记录尝试次数与时间
请求日志中的完整审计追踪
webhook_url: "https://api.yourapp.com/hooks/ai" signature_header: "mr-signature" attempts: - status: 500, backoff_ms: 500 - status: 200, backoff_ms: 0 payload: { workflow, status, data, meta }
队列 + 重试
Webhook 任务将以退避方式重试,直到您的端点确认交付。.
已签名且可验证
每个请求都包含签名,因此您可以验证真实性。.
完整审计追踪
成功和失败以及时间会显示在分析和请求日志中。.
重试策略
退避
自动重试直至确认。.
Security
已签名
使用共享密钥验证完整性。.
Monitoring
Logged
按状态和时间检查交付。.
01 · 队列
完成事件进入队列,包含有效负载和签名密钥。.
02 · 交付
发送带有 mr-signature 标头的 Webhook;等待 2xx。.
03 · 重试
退避并重试,直至确认或预算耗尽。.
04 · 日志
在分析和请求日志中记录尝试。.
使用场景
- ● 异步工作流完成时通知您的应用。.
- ● 保持 CRM、计费或分析同步。.
- ● 为长时间运行的任务提供动力,无需保持客户端打开。.
独特之处
- ● 用于保证完整性的签名有效负载。.
- ● 带有退避和清晰审计追踪的重试。.
- ● 与流式传输和异步请求协同工作。.
事件驱动工作流
对于需要在 AI 生成后进行后端处理的复杂工作流,请使用事件驱动工作流。在您的工作流上设置一个 event_name,以启用三步流程:AI 生成 → 您的后端处理 → 最终响应。.
AI 生成
ModelRiver 处理 AI 请求,并将结果以 type: "task.ai_generated" 发送给您的 Webhook
您来处理
您的后端执行自定义逻辑(例如数据库更新、工具调用),并回拨到 ModelRiver 的回调端点
最终响应
ModelRiver 将完成的结果广播到 WebSocket 通道,实时更新您的前端
// Set event_name on workflow creation { "name": "movie_suggestion", "event_name": "new_movie_suggestion", ... } // Webhook payload includes callback_url { "type": "task.ai_generated", "event": "new_movie_suggestion", "ai_response": {...}, "callback_url": "https://api.modelriver.com/v1/callback/{channel_id}", "callback_required": true } // Your backend calls back with execution results POST /api/v1/callback/{channel_id} Authorization: Bearer YOUR_API_KEY { "data": {...}, "task_id": "abc123", "metadata": {...} }
自动超时处理
如果您的后端在 5 分钟内没有回拨,ModelRiver 会自动向 WebSocket 通道发送超时错误。.
测试事件驱动工作流
当测试设置了 event_name 的工作流时,演练场会自动模拟完整的事件驱动流程,帮助您在生产前理解并验证该流程。.
模拟流程
- AI 生成响应数据
- 触发 Webhook 事件 (模拟)
- 后端处理数据 (模拟约 1.5 秒延迟)
- 后端向 AI 数据中注入 id 字段
- 返回合并后的数据 + 原始的 ai_response
您所看到的
- ● “AI 已生成”状态及进度指示器
- ● “正在模拟后端回调”消息
- ●
datawith AI's fields + injectedid - ●
ai_responsewith original AI data
无需设置后端:: The playground simulation helps you visualize and validate your workflow logic before implementing the actual webhook callback in your production environment.
程序化访问
将异步 API 与 Webhook 回调结合使用
POST https://api.modelriver.com/v1/ai/async Authorization: Bearer mr_live_your_key { "workflow": "order-processor", "messages": [...] } // Your webhook receives the completed response: { "channel_id": "550e8400-e29b-...", "status": "success", "data": { ... }, "meta": { ... } }
在控制台中配置 Webhook URL。签名有效负载,具有自动重试和失败交付的 DLQ。.
即使客户端断开连接也能交付
Use Webhook with 流式传输 or 异步 工作流 to keep downstream systems up to date.