Configure a webhook on your UniLink form to push submission data to any external app in real time — including Zapier, Make, n8n, and custom endpoints.
Email notifications are fine for reviewing form submissions manually. But if you need that data to automatically create a CRM contact, trigger a Slack alert, start an onboarding sequence, or update a spreadsheet — you need a webhook. A webhook is a direct, real-time push of the submission data to any URL you control, in a structured JSON format that any automation tool or custom application can consume. This guide explains how to set up webhook delivery in UniLink and connect it to the tools in your workflow.
What Form Webhook Delivery Does
When a respondent submits a UniLink form, the platform normally stores the response in your dashboard. With a webhook configured, UniLink also sends an HTTP POST request containing the full submission data to the URL you specify — within seconds of the form being submitted. This happens automatically, every time, without any manual steps on your part.
The payload is a JSON object containing every field value from the submission, plus metadata such as the submission timestamp, form ID, and respondent IP address. Your webhook endpoint receives this data and can process it however you need: create a record, send a notification, trigger an automation, or pass the data to yet another system.
Webhooks are the foundation of modern no-code and low-code automation. Connecting your UniLink form to Zapier, Make (formerly Integromat), or n8n through a webhook means you can route submission data to hundreds of different apps — CRMs like HubSpot or Salesforce, messaging tools like Slack or Discord, databases like Airtable or Notion, or any custom API — without writing backend code.
How to Get Started With Form Webhooks in UniLink
- Open Form Settings — in your UniLink dashboard, go to Forms, select the form you want to configure, and click Settings. Navigate to the Integrations tab.
- Enable the Webhook toggle — click Enable Webhook. A URL input field appears below.
- Get a test URL from webhook.site — before connecting your real endpoint, open webhook.site in a separate browser tab. It generates a unique temporary URL that captures and displays any HTTP request sent to it. Copy this URL.
- Paste the test URL into UniLink — paste the webhook.site URL into the Webhook URL field in UniLink. Click Save.
- Submit a test form response — open the form in preview mode and submit a response with realistic values in each field. Switch back to webhook.site and you will see the incoming POST request within a few seconds.
- Inspect the JSON payload — webhook.site shows the full request body. Review the structure: field names, data types, and the metadata fields UniLink includes. This is the data your real endpoint will need to parse.
- Replace the test URL with your real endpoint — once you understand the payload structure, replace the webhook.site URL with your actual destination (a Zapier Catch Hook URL, a Make webhook, an n8n trigger URL, or your own API endpoint). Save and submit another test response to confirm the real endpoint receives the data correctly.
How to Connect Webhooks to Zapier, Make, and n8n
- Zapier — in Zapier, create a new Zap and choose "Webhooks by Zapier" as the trigger app. Select "Catch Hook" as the trigger event. Zapier generates a unique webhook URL. Paste this URL into UniLink's Webhook URL field, then submit a test form response. Zapier will detect the incoming data and map the fields automatically for use in subsequent Zap steps.
- Make (formerly Integromat) — in Make, create a new scenario and add a "Webhooks" module as the first module. Select "Custom Webhook" and click Add. Make generates a URL. Paste it into UniLink, submit a test form response, and Make will parse the payload structure. You can then connect additional modules to process the data.
- n8n — in n8n, create a workflow and add a "Webhook" trigger node. Set the HTTP method to POST. n8n provides a test URL and a production URL. Use the test URL during setup, then switch to the production URL when you are ready to go live. Paste the URL into UniLink, trigger a test submission, and the n8n workflow will receive the payload and make the data available to downstream nodes.
- Custom API endpoint — if you are sending to your own backend, configure your endpoint to accept HTTP POST requests with a JSON body. Use the payload structure you observed in webhook.site to write the parsing logic. Respond with an HTTP 200 status code when the payload is received successfully so UniLink marks the delivery as successful.
- Verify data is arriving correctly — after connecting your real endpoint, submit two or three real test responses with varied data and confirm that all field values are being received accurately, including any special characters, line breaks, or file upload URLs.
Key Settings Explained
| Setting | What it controls | Best practice |
|---|---|---|
| Webhook URL | The HTTP endpoint UniLink sends submission data to | Use HTTPS endpoints only; test with webhook.site before pointing to your production system |
| Retry on failure | Whether UniLink retries delivery if the endpoint returns an error or does not respond | Enable this; UniLink retries up to 3 times with exponential backoff so temporary outages do not cause lost submissions |
| Delivery log | A record of every webhook attempt, including status code, response body, and timestamp | Check this log when debugging integration issues; a 4xx response indicates a problem with your endpoint's parsing logic, a 5xx indicates a server error on your end |
| Secret header | An optional custom HTTP header UniLink adds to each webhook request for security verification | Set a secret token and verify it in your endpoint to confirm requests are genuinely from UniLink and not spoofed |
| Test webhook button | Sends a sample payload with dummy data to your configured URL without requiring a real form submission | Use this to verify connectivity to a new endpoint before going live |
How to Get the Most Out of Form Webhook Delivery
Webhooks are most powerful when they are the first step in an automated workflow rather than the last. Instead of thinking "I will send this data to Zapier", think "when this form is submitted, what should happen next in my business?" — and then design the automation around that outcome. A contact form submission might trigger a CRM record creation, a welcome email via your email service provider, a Slack notification to your sales team, and a row in a Google Sheet for tracking. All of these can happen simultaneously from a single webhook delivery.
Field naming matters when working with webhooks. UniLink uses your field labels as keys in the JSON payload. If your labels are vague — "Field 1", "Field 2" — your automation will be harder to read and maintain. Give each field a clear, descriptive label before you build your webhook integration. Changing labels after your integration is live will break the field mapping in your automation tool.
Use the Delivery Log proactively, not just when something breaks. Check it periodically after deploying a new integration to confirm every submission is being delivered successfully. A pattern of intermittent failures often points to a reliability issue on the receiving end that is worth addressing before it causes a significant data gap.
If you need to send webhook data to multiple destinations simultaneously, the cleanest approach is to use a single webhook pointing to an automation platform (Zapier, Make, or n8n) and then fan the data out to multiple downstream services from within that platform. This keeps your UniLink configuration simple and gives you a central place to manage and debug the full routing logic.
Troubleshooting Common Issues
| Problem | Likely cause | Fix |
|---|---|---|
| Webhook delivery shows "failed" in the log | The endpoint returned a non-200 status code or did not respond within the timeout window | Check your endpoint logs for errors; ensure it returns HTTP 200 within 5 seconds; use async processing for heavy workloads |
| Zapier/Make is not receiving the payload | The webhook URL in UniLink points to the test URL, which has expired or changed | Generate a fresh webhook URL in your automation tool and update it in UniLink settings; test with a new form submission |
| Field values missing from the payload | Conditional fields that were not shown (because their condition was not met) are not included in the payload | Handle optional fields in your automation tool by checking for key existence before using the value; treat all conditional fields as nullable |
| File upload field returns a URL instead of the file | File uploads are stored on UniLink's servers; the webhook payload contains a secure download URL, not the raw file bytes | Use the download URL in your automation to fetch the file if your downstream system needs the actual binary; store or forward the URL if a link is sufficient |
Pros
- Real-time delivery means submission data reaches your tools within seconds, enabling instant automation
- Works with any HTTP endpoint — Zapier, Make, n8n, custom APIs, and everything in between
- Automatic retry on failure ensures temporary outages do not permanently lose submission data
- Delivery log makes debugging integrations straightforward without needing external monitoring tools
Cons
- Changing field labels after building the integration breaks field mapping in your automation tool
- Endpoints that process payloads slowly (over 5 seconds) may trigger false delivery failures and unnecessary retries
- Conditional fields that are not shown in a submission are absent from the payload, requiring null-safe handling in downstream automations
Frequently Asked Questions
What does a UniLink webhook payload look like?
The payload is a JSON object with a submission key containing field label/value pairs, plus a metadata object with the form ID, submission ID, timestamp, and respondent IP. For example: {"submission": {"Name": "Jane Doe", "Email": "[email protected]"}, "metadata": {"form_id": "abc123", "submitted_at": "2026-05-06T10:30:00Z"}}.
How many times will UniLink retry a failed webhook?
UniLink retries up to 3 times after an initial failure, using exponential backoff (roughly 1 minute, then 5 minutes, then 30 minutes). If all retries fail, the delivery is marked as permanently failed in the Delivery Log. You can manually re-send a failed delivery from the log if you fix the endpoint issue.
Can I send a webhook to multiple URLs?
UniLink currently supports one webhook URL per form. To fan out to multiple destinations, point the webhook at an automation platform (Zapier, Make, or n8n) and configure multiple downstream actions within that platform. This approach also gives you better visibility and error handling than managing multiple direct webhooks.
Is there a way to verify that an incoming webhook is genuinely from UniLink?
Yes. In the webhook settings, set a Secret Header — a custom HTTP header with a shared token value. Configure your endpoint to check for this header and reject requests that do not include the correct token. This prevents unauthorised parties from sending spoofed payloads to your endpoint.
Can I use webhooks on the free plan?
Webhook delivery availability depends on your UniLink plan. Check your plan's feature list in Account Settings. If webhooks are not available on your current plan, upgrading will unlock the integration settings in the Form builder.
Key Takeaways
- A webhook pushes form submission data as a JSON POST request to any URL you specify, the moment the form is submitted.
- Test your webhook endpoint with webhook.site before connecting to production to understand the exact payload structure.
- Connect to Zapier, Make, or n8n by pasting their generated "Catch Hook" URL into UniLink's Webhook URL field.
- UniLink retries failed deliveries automatically; check the Delivery Log when debugging missed submissions.
- Keep field labels descriptive and stable — changing them after building an integration breaks the field mapping in your automation tool.
Ready to automate your form submissions?
Set up a webhook on your UniLink form and start routing submission data to your CRM, Slack, spreadsheets, or any other tool — in real time, with no code.
Get Started Free