Webhooks تُسلِّم فعلاً
حمولات JSON بتوقيع قابل للتحقق، تسليم مدعوم بالطابور، إعادات محاولات أُسية، وسجل تسليم لكل نموذج. مبني للمطورين — بلا وسيط مثل Zapier يلتهم بياناتك.
{
"event": "submission.created",
"delivery_id": "dlv_8aE2k",
"timestamp": 1730723400,
"form_id": "f_142",
"submission_id": "s_9k3X",
"fields": {
"name": "Sarah Chen",
"email": "[email protected]",
"budget": 25000
}
}
ما الذي يُطلق Webhook
تُهيِّء مرة واحدة لكل نموذج. ونحن ندفع عند كل حدث ذي صلة.
رد جديد
يُطلق لحظة إرسال النموذج، مع الحمولة الكاملة والحقول والبيانات الوصفية.
دفع ناجح
حين ينجح دفع Stripe مرتبط برد، تتضمن الحمولة حالة الدفع والمبلغ والعملة.
استئناف مسودة
حين يعود متجاوب إلى مسودة محفوظة (نماذج Save-and-Resume)، يمكنك تلقي إشعار لتحليلات قمع التحويل.
JSON متوقَّع، مُصدَّر بإصدار، وحسن الصياغة
بلا مفاجآت. نفس الغلاف لكل حدث. تبقى أنواع الحقول كما أُدخلت.
{
"event": "submission.created",
"delivery_id": "dlv_8aE2kF1Ld9zQ",
"timestamp": 1730723400,
"form_id": "f_142",
"submission_id": "s_9k3XnPq72T",
"fields": {
"name": "Sarah Chen",
"email": "[email protected]",
"company": "Acme Corp",
"budget": 25000,
"message": "Looking for a form solution..."
},
"payment": {
"status": "succeeded",
"amount": 2500,
"currency": "usd"
},
"meta": {
"ip": "203.0.113.42",
"user_agent": "Mozilla/5.0...",
"locale": "en"
}
}
موقّع ومُتحقَّق منه، ولا يمكن تزويره
كل حمولة موقّعة بـ HMAC-SHA256 لسر Webhook الخاص بنموذجك. تحقّق على جانبك قبل الوثوق بالبيانات.
توقيع HMAC-SHA256
ترويسة X-FormBuilder-Signature في كل طلب. احسب HMAC للجسم الخام بسرّك، وقارن في زمن ثابت.
أسرار لكل نموذج
لكل نموذج سرّه. دوّر متى شئت من إعدادات النموذج — تبقى الحمولات القديمة قابلة للتحقق حتى تجدّد السر.
TLS فقط
نقبل فقط نقاط نهاية HTTPS. نرفض الإرسال إلى عناوين بنص صريح لحماية بيانات الإرسال.
حماية من إعادة الإرسال
كل حمولة تتضمن طابعاً زمنياً ومعرف تسليم فريد. ارفض التسليمات الأقدم من 5 دقائق لمنع هجمات الإعادة.
تحقّق في 3 أسطر
اختر مكدّسك. النمط واحد: HMAC للجسم الخام بسرّك، ثم قارن مع ترويسة التوقيع.
const crypto = require('crypto'); function verify(rawBody, signature, secret) { const expected = crypto .createHmac('sha256', secret) .update(rawBody) .digest('hex'); return crypto.timingSafeEqual( Buffer.from(expected), Buffer.from(signature) ); }
function verify($rawBody, $signature, $secret) { $expected = hash_hmac('sha256', $rawBody, $secret); return hash_equals($expected, $signature); }
import hmac, hashlib def verify(raw_body: bytes, signature: str, secret: str) -> bool: expected = hmac.new( secret.encode(), raw_body, hashlib.sha256 ).hexdigest() return hmac.compare_digest(expected, signature)
مبني للعالم الحقيقي
الشبكات تعطل، النقاط النهائية تختنق، عمليات النشر تحدث. تنتظر Webhooks في طابور، وتعيد المحاولة، وتُظهر حالة التسليم.
تسليم في طابور
تعود الردود فوراً للمتجاوب. يحدث تسليم Webhook في طابور خلفي — لا يحجز النموذج أبداً.
Backoff أُسي
تعيد التسليمات الفاشلة المحاولة بـ backoff أُسي. لا نُرهق نقطتك النهائية حين تكون مُجهدة.
محاولات إعادة متعددة
تُجرَّب كل عملية تسليم عدة مرات على مدار ساعات. لديك وقت للتعافي من الأعطال دون فقد بيانات.
سجل التسليم
تُسجَّل كل محاولة — الطلب، رمز الاستجابة، مقتطف من الجسم، والطابع الزمني. افحص الإخفاقات في إعدادات النموذج.
مفاتيح Idempotency
تتضمن كل عملية تسليم معرفاً فريداً. استخدمه كمفتاح Idempotency على جانبك لإلغاء التكرارات بأمان.
مسجَّل في التدقيق
تغييرات URL، تدوير الأسرار، وتشغيل/إيقاف Webhook كلها مسجلة في سجل تدقيق مساحة العمل.
ما الذي يبنيه الناس بـ Webhooks
مزامنة CRM مخصص
ادفع العملاء المحتملين إلى CRM داخلي بنفس تعيين الحقول الذي يتوقعه نظامك.
تنبيهات Slack / Discord
تجاوز تكامل Slack الأصلي، وابنِ تدفقات تنبيه مخصّصة بحمولات غنية.
معالجة في الواجهة الخلفية
شغّل مهام في الخلفية، أرسل بريداً معاملياً، تحقّق من البيانات، وتزامن مع مستودع البيانات.
بديل عن Zapier / Make
تجاوز رسوم الوسيط. يستطيع Webhook واحد التفرّع إلى أي عدد من الخدمات الداخلية.
الإعداد في 4 خطوات
هيِّء مرة، وسلِّم إلى الأبد.
افتح إعدادات النموذج
في اللوحة، افتح نموذجك واذهب إلى التكاملات → Webhooks.
أضف عنوان النقطة النهائية
الصق عنوان HTTPS الذي سيستقبل الردود. نتحقّق من استجابة النقطة قبل الحفظ.
انسخ سر التوقيع
يحصل كل نموذج على سر فريد. احفظه على الخادم واستخدمه للتحقق من الحمولات الواردة.
أرسل اختباراً
أرسل رداً تجريبياً وافحص سجل التسليم. تأكد أن نقطتك أعادت 2xx وأن التحقق من التوقيع نجح.
الأسئلة الشائعة
تكاملات ذات صلة
Slack
تسليم Slack جاهز — بلا التعامل مع التواقيع.
اعرف المزيد →Notion
ادفع إلى قاعدة بيانات Notion دون كتابة سطر برمجي.
اعرف المزيد →مدفوعات Stripe
حمولات Webhook تتضمن حالة الدفع عند ربط المدفوعات.
اعرف المزيد →جميع التكاملات
تصفّح Stripe وNotion وSlack وAirtable وGoogle Forms والمزيد — وانظر كيف يتصل كلّ شيء.
تصفح التكاملات →