Articles on: Connecting Lead Sources

How to Send Leads to LeadTruffle Using Custom Lead Sources (Webhooks)

Overview


Custom Lead Sources allow you to send leads from almost any external system into LeadTruffle using a webhook.



This is ideal for advanced integrations such as:


  • Zapier
  • Make
  • N8n
  • Custom web forms
  • Lead aggregators
  • CRMs or internal tools


Instead of forwarding leads via email, you can POST lead data directly to LeadTruffle, which will create and optionally qualify the lead automatically.


If you want a simpler option, you can also forward leads using the email gateway.


LeadTruffle is designed to capture and qualify leads through automated SMS conversations once they enter the platform.



Step 1: Open Custom Lead Sources


  1. Log into app.leadtruffle.com
  2. Navigate to Custom Lead Sources
  3. Click Add Source


⚠️ If you do not see Custom Lead Sources, contact support and we can enable it for your account.



Step 2: Create the Source


Fill out the basic setup:


  1. Name: Choose something unique


  1. Example: Web Forms
  2. Source Template:


  1. Select Custom
  2. Click Continue



Step 3: Copy Your Webhook URL


On the next screen you will see two webhook endpoints:


  • Test Endpoint
  • Live Endpoint


Recommended approach


Use the Live Endpoint immediately so you don’t need to update integrations later.


Click Copy URL.


This webhook URL is where external systems will send lead data.



Step 4: Send a Test Lead


Before mapping fields, you must send one test lead so LeadTruffle can detect the incoming data structure.


You can do this in several ways:


Option 1 — Test From Your Integration Tool


Many platforms provide a test feature:


  • Zapier → “Test Trigger”
  • Make → “Run once”
  • CRMs or lead providers may also allow sending test data


Option 2 — Send a Test via Terminal (cURL)


You can manually send a fake lead using a cURL POST request.


Replace the webhook URL with the Live Endpoint from your LeadTruffle setup:


curl -X POST "PASTE_YOUR_LEADTRUFFLE_WEBHOOK_URL_HERE" \  
-H "Content-Type: application/json" \
-d '{
"firstName": "John",
"lastName": "Smith",
"phone": "5125550123",
"email": "[[email protected]](/cdn-cgi/l/email-protection)",
"message": "I need a quote for pressure washing my driveway and patio.",
"service": "Pressure Washing",
"source": "Website Contact Form",
"smsOptInUrl": "https://example.com/consent/john-smith-optin"
}'


What This Test Does


This command will:


  • Send a sample lead to your LeadTruffle webhook
  • Allow LeadTruffle to capture the payload
  • Enable you to map incoming fields during setup


Fields Included in the Example


Field

Description

firstName

Lead’s first name

lastName

Lead’s last name

phone

Lead phone number

email

Lead email

message

Project description

service

Example custom field

source

Where the lead originated

smsOptInUrl

URL showing SMS consent proof


After running this command, return to the Custom Lead Source setup screen and confirm that Payloads Captured = 1.


Then click Continue.



Step 5: Map Lead Fields


LeadTruffle now displays the fields captured from the webhook.


Click Auto Map Fields to automatically match common fields.


Typical required mappings include:


  • First Name
  • Last Name
  • Email
  • Phone Number


Example mapping:


Incoming Field

LeadTruffle Field

firstName

First Name

lastName

Last Name

email

Email

phone

Phone

message

Project Description



Step 6: Configure Optional Fields


Optional fields allow you to capture additional lead information.


For example, SMS opt-in proof is recommended if you plan to send text messages.


The format used when referencing webhook fields is:


$.fieldName


Example:


$.smsOptInUrl



Step 7: Create Custom Fields (Optional)


If your webhook sends fields that don’t exist in LeadTruffle, you can create new ones.


Example: Service Type


  1. Scroll to Additional Data
  2. Click Add Field
  3. Name the field service
  4. Map it using:


$.service


If configured correctly, you will see a green checkmark confirming the field exists in the webhook payload.



Step 8: Run a Dry Test


Before going live, LeadTruffle performs a dry run to preview how the lead will be created.


Example output might show:


  • Name: John Smith
  • Email: [email protected]
  • Phone: 512-555-0123
  • Project Description: Pressure washing quote


If a required field appears empty, go back and adjust your mappings.



Step 9: Choose What Happens When Leads Arrive


LeadTruffle provides four options for handling incoming webhook leads.


1. Create Lead Only


Creates the lead in LeadTruffle without sending messages.


Useful if your team wants to manually follow up.


2. Create + Qualify Over Email


Creates the lead and sends an automated email.


⚠️ Requires an Email Gateway to be configured.


You can customize the subject line using variables such as:


{{firstName}} your pressure washing request


3. Create + Qualify Over SMS


  • Creates the lead and starts an AI SMS conversation.



This option:


  • Creates the lead
  • Sends an email
  • Starts an SMS conversation


This helps maximize the chance of reaching the lead quickly.



Step 10: Enable SMS Compliance


Before activating the webhook:


  • Confirm that SMS opt-in requirements are met
  • Acknowledge compliance settings


Then enable the Live Endpoint.


Once activated, any system sending data to your webhook will automatically create leads in LeadTruffle.



Recap


To send leads into LeadTruffle using webhooks:


  1. Create a Custom Lead Source
  2. Copy your Webhook Endpoint
  3. Send a Test Lead
  4. Map Required Fields
  5. Add optional or custom fields
  6. Run a Dry Test
  7. Choose how leads should be handled
  8. Activate the Live Endpoint


Once set up, your external tools can automatically send leads into LeadTruffle for capture and qualification.



Need help? Contact us at [email protected] or message the team via the Intercom chat on this article or in-app.

Updated on: 02/04/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!