Documentation Index
Fetch the complete documentation index at: https://docs.landerlab.io/llms.txt
Use this file to discover all available pages before exploring further.
Connect a webhook to your landing pages in LanderLab to send lead data to any HTTPS endpoint in real time. Use webhooks to push leads to CRMs, lead distribution platforms, custom APIs, or any system that accepts HTTP requests.
What is a Webhook?
A webhook is an automated HTTP request that sends data from one system to another the moment an event happens. In LanderLab, a webhook fires every time a lead is collected on your landing page. It sends the lead data (form fields, visitor information, and any custom fields you define) directly to the URL you specify. This means your leads are delivered to your CRM, lead buyer, or backend system instantly, without any manual export or third-party middleware. LanderLab’s webhook integration supports GET, POST, and PUT methods, JSON and Form (URL encoded) body types, custom headers, and full control over which fields are sent and how they are named.Webhook integrations are not saved globally. Each webhook is configured per landing page, so you will need to set up a new webhook for each landing page where you want to send lead data.
How to Add a Webhook
The webhook setup uses a 3-step wizard: configure the request, map your fields, and review the final payload before connecting.Step 1: Configure the Request
Go to your landing page
Navigate to Landing Pages and click the name of the landing page where you want to add the webhook.
Select Webhook integration
From the list of available integrations, find Webhook integration (labeled as “Send lead data to any HTTPS endpoint in real time”) and click on it. The webhook configuration wizard will open.
Fill in the request settings
Enter the following details:
| Field | Description |
|---|---|
| Name | A label to identify this webhook (e.g. “Send leads to CRM” or “Lead Buyer - Webhook”). |
| URL | The HTTPS endpoint where lead data should be sent (e.g. https://api.example.com/webhooks/leads). This must be a valid HTTPS URL. |
| Method | The HTTP method for the request. Options are GET, POST, or PUT. Most integrations use POST. |
| Body type | The format of the request body. Choose JSON (application/json) or Form (URL encoded) (application/x-www-form-urlencoded). Most APIs expect JSON. |
The Body type setting only applies to POST and PUT requests. GET requests send data as URL query parameters.
Add headers (optional)
If your endpoint requires custom HTTP headers (such as an API key or authorization token), click + Add header and enter the Key and Value for each header.
Common examples include:
You can add multiple headers by clicking + Add header again.
| Key | Value |
|---|---|
Authorization | Bearer your-api-key |
X-API-Key | your-api-key |
Step 2: Map Your Fields
In this step, you choose which data fields to include in the webhook request and how they should be named when sent to your endpoint. LanderLab gives you two ways to build your payload: Fields mode for a simple visual mapper, or JSON mode for full control over the request body. At the top of the screen, you will see a toggle between Fields and JSON. Choose the one that fits your use case.Option A: Fields Mode (Recommended for Most Users)
The Fields mode provides a visual interface where you can select fields, rename their keys, and add custom values without writing any code.Select and configure fields
LanderLab automatically includes a set of default LanderLab fields that are available on every landing page. Each field has a checkbox to include or exclude it, and a Sent As column where you can rename the key that gets sent in the request.
The default LanderLab fields are:
Use the checkboxes to enable or disable any field. You can also edit the Sent As value to match the field names your endpoint expects.
| Form Field | Sent As (default key) | Description |
|---|---|---|
| LL Lander URL | ll_lander_url | The full URL of the landing page the visitor was on. |
| LL Visitor IP | ll_visitor_ip | The IP address of the visitor. |
| LL Visitor User Agent | ll_visitor_user_agent | The browser and device information of the visitor. |
| LL Submission Time UTC | ll_submission_time_utc | The date and time the lead was submitted (in UTC). |
| LL Variant ID | ll_variant_id | The A/B test variant ID the visitor was shown. |
Add custom fields (optional)
Under the Additional fields section, click + Add field to include extra key-value pairs in the webhook payload. This is useful for sending static values like a campaign ID, lead source tag, or API identifier that your endpoint needs but is not collected from the form.
Option B: JSON Mode (Advanced)
The JSON mode gives you a raw code editor where you can write the exact JSON body that will be sent with the webhook. This is the advanced option for users who need full control over the payload structure, especially when the receiving API requires nested objects, arrays, or a specific format that the Fields mode cannot produce.Switch to JSON mode
Click the JSON toggle at the top of the screen. A code editor will appear with a default JSON payload that includes all available fields.
Edit the JSON payload
Write or modify the JSON body directly in the editor. To insert dynamic lead data, use the Nested payload with grouped objects:Some APIs expect data organized inside nested objects. JSON mode lets you build any structure you need. For example:Payload with static values and mixed data:You can combine dynamic template variables with hardcoded static values in the same payload:
{{Field Name}} template syntax. Type / to open a field picker, or type the variable name manually inside double curly braces.
These template variables are replaced with real values when the webhook fires. For example, {{LL Visitor IP}} will be replaced with the actual IP address of the visitor who submitted the lead.Basic flat payload (same as Fields mode produces):The field names inside
{{ }} must match exactly the field names available in your landing page. Default LanderLab fields use names like LL Lander URL, LL Visitor IP, etc. Form and quiz fields use the names you gave them when building the form (e.g. First Name, Email, Phone).Step 3: Review and Connect
Review your webhook
The final step shows a complete preview of the request that will be sent every time a lead is collected. You will see:
- The HTTP method and URL (e.g.
POST https://api.example.com/webhooks/leads) - The body with all mapped fields shown as template variables (e.g.
{{LL Lander URL}},{{LL Visitor IP}})
Common Use Cases
Webhooks are flexible and can be used to send lead data to almost any system. Here are some common examples:- CRM systems - Send leads directly to Salesforce, HubSpot, GoHighLevel, or any CRM that accepts incoming webhooks or has an API endpoint.
- Lead distribution platforms - Push leads to buyers or ping trees in real time for lead bidding and distribution.
- Email marketing tools - Add new leads to your email lists in platforms like Mailchimp, ActiveCampaign, or Klaviyo.
- Custom backends - Send data to your own API or backend system for processing, scoring, or routing.
- Zapier or Make - Use a webhook URL from Zapier or Make to trigger automated workflows from your landing page leads.
Tips for Setting Up Webhooks
- Always use HTTPS - LanderLab requires an HTTPS URL for webhook endpoints. HTTP URLs are not supported.
- Match your field names - Use the Sent As column in Step 2 to rename fields so they match what your receiving system expects. For example, if your CRM expects
email_addressinstead ofemail, rename it in the field mapper. - Test before going live - Use the cURL button in the review step to copy and test the request manually. You can also use tools like webhook.site to inspect incoming requests and verify the payload format.
- Add authentication headers - If your endpoint requires an API key or token, add it in the Headers section during Step 1. Do not include authentication credentials in the URL.