splitforms.com

Documentation · Integrations

Send form submissions to Make.

Every submission on your splitforms form can run a Make scenario. Make's Custom webhook module gives you a URL, splitforms POSTs each submission to it as signed JSON, and the scenario fires immediately — no polling.

Get a free access key Make integration overview

What it does

splitforms delivers every submission on your form to Make the moment it arrives. On the Make side you build the workflow once — Webhooks → Custom webhook as the trigger, any apps you like after it — and splitforms keeps it fed.

The connection is a signed outbound webhook, not an OAuth app: there is nothing to install and no credentials to rotate.Make hands you a catch URL (https://hook.us1.make.com/abcd1234efgh5678), you paste it into splitforms, and every submission is POSTed there as JSON.

The lead is never at risk: each submission is saved to your dashboard and emailed to you before the webhook fires, so a broken Make workflow never loses data.

Before you start

  • A splitforms form. Your form's access_key identifies it in the HTML that posts to https://splitforms.com/api/submit — that's what connects a page on your site to the webhook. New accounts get a form and key automatically; find it under Dashboard → Forms.
  • A paid splitforms plan. Forms and the dashboard are free for 500 submissions total; webhooks unlock on paid plans.
  • The Make catch URL. Created in the first setup step below — don't go looking for it in Make's settings, it only exists once you add the trigger.

Set up Make

01Add a Custom webhook module

In Make, create a scenario and add a Webhooks → Custom webhook module as the first step. Click Add, name the hook, and save it.

02Copy the webhook URL

Make generates a URL like https://hook.us1.make.com/… (the region subdomain varies; older hook.integromat.com URLs work the same). The module now shows “Listening” — it needs one request to learn the data structure.

03Paste the URL in splitforms

Open Dashboard → Integrations → Webhooks, click Add a webhook, and pick the Make preset. Paste the Make URL, choose whether it fires for all forms or one form, and save.

04Fire the test webhook

Click Test webhook right in the preset card. Make's module stops listening and shows the received data structure, derived from the sample submission. That structure is what downstream modules offer for mapping.

05Add scenario modules

Attach Google Sheets, Notion, HubSpot, Slack, or any other module and map the submission.data fields into each.

06Turn the scenario on

Set it to run immediately as data arrives. Each splitforms submission now triggers a run, usually within seconds.

Prefer the short version? The Make preset in Dashboard → Integrations → Webhooks shows these same steps next to the form where you paste the URL.

Payload Make receives

Make gets the full submission as JSON — the same body documented in Webhooks:

{
  "event": "submission.created",
  "submission": {
    "id": "3f9a2b7e-4c1d-4e9a-9b2f-7a6c1d3e4f5a",
    "form_name": "Contact",
    "data": {
      "name": "Ada Lovelace",
      "email": "[email protected]",
      "message": "Hello."
    },
    "ip_address": "203.0.113.7",
    "referer": "https://yoursite.com/contact",
    "created_at": "2026-05-04T14:31:04.123Z"
  }
}

Your form's fields live under submission.data with the exact name attributes from your HTML. Alongside the body, splitforms sends these headers:

HeaderValue
Content-Typeapplication/json
X-Splitforms-Eventsubmission.created
X-Splitforms-Signaturesha256=<HMAC-SHA256 of the raw body with the webhook secret>
User-Agentsplitforms.com-webhook/1.0

Delivery times out after 8 seconds and is not auto-retried — the dashboard shows the last status and error per webhook. Want to inspect a payload by hand? Paste it into the webhook tester.

Troubleshooting

  • The Make module keeps showing “Listening…”. It hasn't received a request yet. Fire the splitforms Test webhook, and confirm you copied the URL of this module — a scenario with several webhook modules has a different URL for each.
  • The scenario runs but mapped fields arrive empty. Make learns the data structure from the last received payload. Re-fire the splitforms Test webhook (or submit the real form once with every field filled), then re-open the mapping panel.
  • Test data arrived, but real submissions don't run the scenario. The scenario isn't turned on, or it's set to run on a schedule instead of immediately. Switch scheduling to “Immediately as data arrives” and activate it.
  • splitforms reports a 4xx from the hook URL. Make webhook URLs need no extra authentication — a 4xx almost always means the URL was truncated when copied. Re-copy the full URL from the module.

FAQ

Is Make really faster than Zapier for webhooks?

Yes. Make's webhook module fires the moment the URL receives a request; Zapier's trigger polls a queue every 1–15 minutes depending on plan. End to end, a Make scenario typically finishes in seconds.

What Make plan do I need?

Make's free plan includes 1,000 ops/month with up to 2 active scenarios, which covers most contact-form volumes. On the splitforms side, webhooks are a paid-plan feature — the form itself stays free for 500 submissions total.

Can Make verify the webhook signature?

Not out of the box. You can recompute the HMAC-SHA256 of the raw body with your webhook secret in a function module and compare it to the X-Splitforms-Signature header, but most teams treat the unguessable webhook URL as the shared secret.

Does splitforms retry a delivery if Make is down?

No — the dashboard records the webhook's last status and error instead. The lead is never lost: every submission is saved to the dashboard and emailed regardless of webhook outcome.

Start routing submissions to Make.

500 free submissions total, unlimited forms, no credit card.

Get a free access key Back to docs