أحداث Webhooks
استقبل إشعارات لحظية عند حدوث أحداث مهمة
كيف يعمل
POST https://your-app.com/webhooks/fez
Content-Type: application/json
X-Fez-Signature: sha256=<HMAC-SHA256>
X-Fez-Event: order.created
{
"event": "order.created",
"timestamp": "2026-02-27T01:00:00Z",
"storeId": "store_abc123",
"data": {
"id": "order_xyz",
"total": 299.00,
"items": [...]
}
}التحقق من التوقيع
const crypto = require("crypto");
function verifyWebhook(payload, signature, secret) {
const expected = crypto
.createHmac("sha256", secret)
.update(payload)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}قائمة الأحداث
| Event | Required Scope | Description |
|---|---|---|
| order.created | read_orders | New order placed |
| order.updated | read_orders | Order details changed |
| order.cancelled | read_orders | Order cancelled |
| order.fulfilled | read_orders | Order shipped/delivered |
| product.created | read_products | New product added |
| product.updated | read_products | Product details changed |
| product.deleted | read_products | Product removed |
| inventory.low | read_products | Stock below threshold |
| inventory.out | read_products | Out of stock |
| customer.created | read_customers | New customer registered |
| customer.updated | read_customers | Customer profile updated |
نظام الحماية (Circuit Breaker)
إذا فشلت 5 محاولات متتالية، يتم تعطيل الـ endpoint تلقائياً لحماية النظام.
يمكنك إعادة تفعيله يدوياً من لوحة الشركاء.
سياسة إعادة المحاولة
يعيد النظام المحاولة 3 مرات مع تأخير أسّي:
1st: 30s2nd: 5min3rd: 30min