SuperAPI AI 工具集

akeneo-webhooks

编程与开发

查看项目

更新于 10-15 22:14

技能介绍

用途:搭建 Akeneo PIM Events API 的 Webhook 处理器,调试 x-akeneo-request-signature 校验失败,理解事件类型与批量事件负载,处理产品及产品模型的创建、更新、删除事件。

主要能力:Akeneo 无官方 SDK,需手动校验。每个请求带两个头:x-akeneo-request-signature(十六进制 HMAC-SHA256)与 x-akeneo-request-timestamp(Unix 秒)。签名内容为 timestamp + "." + 原始请求体,用连接密钥计算 HMAC 并做时序安全比较;必须使用原始请求体,不能先 JSON.parse;拒绝过期请求(now - timestamp > 300)以防重放。示例提供 Node.js 与 Python 等价实现,并附 Express、Next.js、FastAPI 完整处理器示例。

事件类型:所有事件类型投递到单一 Request URL,需在服务端按 action 分发。负载为批量形式,顶层 events 数组每次最多 10 个事件。常见事件包括 product.created、product.updated、product.removed、product_model.created、product_model.updated、product_model.removed。分类及其他资源事件不属于 PIM Events API,仅存在于较新的基于 CloudEvents 的 Event Platform。

使用方式:设置环境变量 AKENEO_WEBHOOK_SECRET(来自 PIM 连接设置)。本地开发可用 npx hookdeck-cli listen 3000 akeneo --path /webhooks/akeneo 启动隧道。参考材料包括 overview.md、setup.md、verification.md。

限制与注意:Akeneo 不重试,未投递事件约 2 小时后丢弃,且要求 500ms 内返回 2xx,因此应快速确认并异步处理。建议配合 webhook-handler-patterns 技能,遵循先校验、再解析、幂等处理的顺序,并注意投递顺序不保证。使用该技能时需在生成文件顶部添加指定注释。