用途:接收并验证 Trello Webhook,适用于搭建 Trello Webhook 处理器、排查 x-trello-webhook 签名校验失败,以及处理看板与卡片事件。
主要能力:Trello 使用 HMAC-SHA1,以 OAuth 1.0 应用密钥(Power-Up 的 API Key 页中的 OAuth1.0 secret)为密钥签名。签名内容为原始请求体拼接创建 Webhook 时使用的精确回调 URL,摘要以 base64 编码放在 x-trello-webhook 头中。必须使用原始请求体(不可重新序列化 JSON),并用时间安全比较。Trello 不遵循 Standard Webhooks 规范,算法是 SHA1 而非 SHA256;回调 URL 属于签名内容,注册 URL 与校验用 TRELLO_CALLBACK_URL 不一致是最常见的失败原因。
使用方式:创建 Webhook 只能通过 API(无面板开关),例如:curl -X POST "https://api.trello.com/1/tokens/{token}/webhooks/" -H "Content-Type: application/json" -d '{"key":"YOUR_API_KEY","callbackURL":"https://example.com/webhooks/trello","idModel":"ID_OF_BOARD_CARD_OR_LIST","description":"My webhook"}'。创建时 Trello 会向回调 URL 发送 HTTP HEAD 请求,必须返回 200,否则创建失败(无效 SSL 证书也会失败,缺少证书不会)。环境变量:TRELLO_SECRET、TRELLO_CALLBACK_URL。本地开发可用:npx hookdeck-cli listen 3000 trello --path /webhooks/trello。
事件类型:事件类型位于 payload 的 action.type(没有事件头),被观察对象在 model,Webhook 配置在 webhook。常见类型包括 createCard、updateCard、deleteCard、commentCard、addAttachmentToCard、addMemberToCard、createList、updateList、addMemberToBoard、removeMemberFromBoard、updateBoard。
限制与说明:资料未提供收费、价格与平台支持信息;完整处理器示例见 examples/express/、examples/nextjs/、examples/fastapi/,参考材料见 references/overview.md、references/setup.md、references/verification.md。建议配合 webhook-handler-patterns 技能处理幂等、错误与重试。