When a visitor fills in your chatbot's lead form, Hyperleap AI can send the details to a URL within seconds. Salesforce can't take that request directly: its Web-to-Lead endpoint expects an HTML form post, not JSON. So a no-code tool sits in between, receives the lead, and creates the Lead in Salesforce. This guide uses Make, and covers Zapier as an alternative.
Setup takes about 20 minutes and needs no code.
Before You Start
- Hyperleap AI Pro or Max — Webhooks are on Pro and Max. See Webhooks for the full feature.
- A website chatbot with the lead form switched on — Ask for a name and an email, and make both required. The Lead Captured event fires when a visitor submits the lead form in the website widget; without a lead form, visitors chat anonymously and there's nothing to send.
- A Salesforce edition with API access — Make and Zapier connect through the Salesforce API. Enterprise, Unlimited, and Developer editions include it; on Professional it's an add-on. Ask your Salesforce admin if you're not sure.
- A Make account (or a paid Zapier plan), and a Salesforce user who can create Leads.
Setup with Make
1. Create the webhook in Make
Start a scenario
Add a Custom webhook
Copy the address
2. Point your chatbot at Make
Open Webhooks & Zapier
Create a Lead Captured subscription
Note the signing secret
3. Send a test lead
Open your chatbot where visitors see it (your website, or its public shareable URL) and fill in the lead form with test details. Make should show "Successfully determined" on the webhook. In Hyperleap AI, "Delivery history" should list a lead.captured delivery with a 2xx response.
4. Create the Salesforce Lead
Connect Salesforce
Avoid duplicate Leads (recommended)
Create the Lead
| From Hyperleap AI | Salesforce Lead field | Notes |
|---|---|---|
data.name | Last Name (required) | The full name the visitor typed. Salesforce requires Last Name, and the lead form has one name field, so the whole name goes here. |
A fixed value, or a custom answer | Company (required) | Salesforce requires Company and the chatbot doesn’t send one. Type a fixed value such as "Website chatbot", or map a custom lead-form question that asks for the company. |
data.email | An empty string if the visitor didn’t give one. Used to avoid duplicate Leads. | |
data.phone | Phone | Includes the country code, for example +15551234567. Map it only if your lead form makes phone required: a blank phone arrives as "+". |
A fixed value | Lead Source | For example "Chatbot", so your team can report on chatbot leads. |
data.customFields.<field id> | A custom Lead field | One value per custom lead-form question, keyed by the field id set in the lead form. |
data.attribution.utmSource, utmCampaign, gclid | Custom Lead fields (optional) | Where the visitor came from, when the website widget captured it. |
5. Turn the scenario on
Save the scenario, set it to run immediately as data arrives, and switch it on. Submit the lead form once more with a new test email and check the Lead appears in Salesforce. Delete the test Leads when you're done.
Make counts each module run as an operation, so every lead uses a few operations from your Make plan. Check Make's pricing for your allowance.
Using Zapier Instead
Zapier works the same way. Webhooks are included on Zapier's paid plans, not on Free.
Catch the webhook
Create the subscription and test
Add the Salesforce action
What Gets Sent
Example lead.captured request
{
"eventType": "lead.captured",
"chatbotId": "a1b2c3d4-...",
"chatbotName": "Website Assistant",
"timestamp": "2026-11-15T10:30:00Z",
"deliveryId": "d9e0f1a2-...",
"data": {
"name": "Jane Smith",
"email": "jane@example.com",
"phone": "+15551234567",
"customFields": { "company": "Acme Inc" },
"attribution": { "utmSource": "google", "gclid": "..." }
}
}The full payload reference is in Webhooks.
Troubleshooting
- No delivery appears in Delivery history — The lead form wasn't submitted, or the subscription is for a different chatbot or event.
- Deliveries fail with a 4xx code — The address is wrong, or the Make webhook was deleted or left unused for days. Copy the address again and recreate the subscription.
- Make received the lead but no Lead was created — Open the scenario history. The usual causes are a missing Last Name or Company, a required field your org added, or a duplicate rule blocking the Lead.
- The whole name is in Last Name — Expected. The lead form asks for one name, and Salesforce requires Last Name.
Next Steps
- Send leads to HubSpot — The same setup for HubSpot contacts
- Send leads to GoHighLevel — Directly into a HighLevel workflow
- Webhooks — Every event, payload, and the retry rules