Webhooks

يرسل Formgong طلب POST فيه JSON وتوقيع HMAC-SHA256 للجسم الخام. السر في إعدادات النموذج. حتى 5 محاولات، بتأخير 30 ثانية ثم دقيقتين ثم 10 دقائق ثم 30 دقيقة ثم ساعتين.

{
  "event": "submission.created",
  "form": { "id": "…", "name": "…" },
  "submission": {
    "id": "…",
    "created_at": "2026-09-29T12:00:00.000Z",
    "page_url": "https://example.com/",
    "fields": { "name": "Olena", "email": "olena@example.com" },
    "is_spam": false
  }
}

Header X-Signature: sha256=…. Header X-Formgong-Event: submission.created.

import { createHmac, timingSafeEqual } from "node:crypto";

function verified(rawBody, signature, secret) {
  const digest = createHmac("sha256", secret).update(rawBody).digest();
  const got = Buffer.from(String(signature).replace(/^sha256=/, ""), "hex");
  return got.length === digest.length && timingSafeEqual(got, digest);
}

Make, n8n, Zapier

أنشئ وحدة webhook في Make، أو Webhook node في n8n، أو Catch Hook في Zapier، والصق الرابط في إعدادات النموذج. اربط submission.fields من هناك.

Google Sheets

function doPost(e) {
  const body = JSON.parse(e.postData.contents);
  const fields = body.submission.fields;
  SpreadsheetApp.getActive().getSheetByName("Leads").appendRow([
    body.submission.created_at, fields.name, fields.email, fields.message,
  ]);
  return ContentService.createTextOutput("ok");
}

KeyCRM

لا موصّل جاهز. في n8n أو Make استقبل webhook من Formgong، ثم استدعِ واجهة KeyCRM بمفتاحك. الحقول في submission.fields.