Webhooks

用户认证事件发生时,W-ID 会向配置的 URL 发送 HTTP POST。

事件类型

事件触发时机
user.created新用户注册
user.login用户成功登录
user.logout用户登出
user.deleted用户删除

请求格式

POST https://example.com/webhook
Content-Type: application/json
X-Webhook-Signature: sha256=xxxxxxxx
X-Webhook-Attempt: 1

{
  "event": "user.login",
  "timestamp": "2026-03-20T12:00:00Z",
  "data": { "userId": "user_xxx" }
}

签名验证

const expected = 'sha256=' + crypto
  .createHmac('sha256', WEBHOOK_SECRET)
  .update(JSON.stringify(req.body))
  .digest('hex');

重试策略

最多 3 次,retryable 失败会记录投递日志并按失败次数自动禁用异常 webhook。