Webhooks
Send every form submission and page visit to Zapier, Slack, Make or your own endpoint the moment it happens, and choose which fields the payload contains.
On this page
A webhook sends a message to a web address you choose whenever a visitor submits a form on one of your pages or opens one. Use it to push leads into Zapier, Make, n8n, Slack or your own system without polling. Webhooks live under Developers → Webhooks.
Before you start
- You need the Owner or Admin role.
- Webhooks are a plan feature. On plans without them the page shows Webhooks are on Scale instead; they are included on Scale and Ultimate.
- Have the address of the endpoint ready, for example a Zapier catch hook or a route on your own server.
Create a webhook
-
Open Developers → Webhooks and click New Webhook. Until you create one, the Endpoints section reads Send events anywhere.
Webhooks page in its empty state with the New Webhook button highlighted -
In the New Webhook dialog, give it a Name and paste the Endpoint URL; for services such as Zapier, Slack or Make the dialog shows Detected as and the service name. A Signing Secret is optional. Under Trigger Events, Form Submission and Page Visit are both ticked; keep at least one.
New Webhook dialog with a name and endpoint URL filled in, both trigger events ticked, and the Create Webhook button highlighted -
Payload Data sends every available field by default. Click Customize Fields to pick fields instead; Send All Fields switches back. Fields that only exist for one event, such as Form Data or Referrer, are only sent for that event.
New Webhook dialog with Customize Fields open, showing the selectable payload fields and the Send All Fields link highlighted -
Click Create Webhook. The message Webhook created confirms it, and the webhook appears in the list with its event badges, its address and an Active switch.
Endpoints list showing the new webhook with Form Submission and Page Visit badges and its Active switch, the row highlighted
Check that it works
There is no test button. After creating the webhook, open a published page of the workspace or submit a form on it and watch your endpoint for the request. Page visits from the same visitor to the same campaign are sent at most once per minute. A delivery that fails or takes longer than 15 seconds is not retried.
What is sent
Every message is a JSON document sent with a POST request. It always contains event, which is form_submission or page_visit, followed by the fields you chose:
- Both events: timestamp, page_url, visitor_ip, email, first_name, last_name, company_name and linkedin_url. The lead fields are filled when the visitor is a known lead of the page.
- Form submissions only: form_data (the submitted fields), submission_id and form_id.
- Page visits only: referrer, campaign (its id and name), country, device, browser, os and time_on_page in seconds.
If you set a Signing Secret, each message carries an X-Webhook-Signature header with the HMAC-SHA256 of the body, so your endpoint can verify it came from GenPage.
Pause, edit or delete
-
The switch in the row pauses the webhook (Paused) and resumes it (Active) without deleting it.
-
The menu at the end of the row holds Edit and Delete. Edit opens the same form; leave Signing Secret blank to keep the current one and click Save Changes.
-
Delete removes the webhook immediately, without asking for confirmation.
Webhook row menu open with the Edit and Delete items, Delete highlighted
Was this article helpful?