回调

接收签名的服务器到服务器通知和完成的异步结果。

回调

配置回调 URL 配置文件 → 回调和异步结果。 Model Gate 发送 HTTPS POST 请求已启用的帐户通知和已完成的异步推理请求。

回调地址

使用可公开访问的 HTTPS 端点。端点应读取原始请求正文,验证签名,幂等处理事件,并返回 HTTP 200 一旦事件被接受。

活动

回调可能包括:

  • 完成的异步推理结果;
  • 启用时帐户余额低通知;
  • 启用时 API 密钥支出限制通知;
  • 启用时的关键组支出限制通知。

只要配置了回调 URL,就会启用异步结果传送。配置文件中的通知复选框仅控制相应的余额和限制警报。

请求格式

POST /model-gate/callback HTTP/1.1
Content-Type: application/json
X-Model-Gate-Signature: t=1710000000,v1=hex_hmac_sha256

异步结果负载示例:

{
  "event":"async.completed",
  "request_id":"01J...",
  "status":"completed",
  "response":{"id":"msg_...","type":"message"}
}

有效负载字段可以随着时间的推移而扩展。忽略未知字段。

签名验证

签名标头的格式如下:

X-Model-Gate-Signature: t=<unix>,v1=<hmac_sha256>

通过精确的字符串计算 HMAC-SHA256 <timestamp>.<raw_body> 使用配置文件中显示的回调密钥。将十六进制签名与恒定时间比较进行比较,并拒绝接受的重播窗口之外的时间戳。

交付和重试

返回HTTP 200 安全接受事件后。非 2xx 响应和连接失败可能会重试。因此,您的端点必须是幂等的;使用 request_id 与...一起 event 作为重复数据删除的关键。

在响应之前不要执行长时间运行的工作。在内部对事件进行排队,返回 200,并异步处理它。

相关文档