Skip to main content

Lead Sources

What Is a Lead Source Connection?โ€‹

A lead source connection tells LeadHub where to receive leads from. When someone fills out your Facebook Lead Ad, submits your Google Ads form, books a Calendly appointment, or fills out your web form, LeadHub needs to know about it so it can create a lead automatically.

A source connection is the bridge between that outside platform and LeadHub. You set it up once in the admin panel, and from that point on, every new submission arrives in LeadHub in real time โ€” no manual copying and pasting required.


Supported Sourcesโ€‹

LeadHub supports connections from 18 platforms:

SourceWhat it captures
Facebook Lead AdsLeads from Meta Lead Ads campaigns on Facebook
Instagram LeadsLeads from Instagram Lead Ads campaigns
TikTok Lead GenerationLeads from TikTok Lead Generation forms
LinkedIn Lead Gen FormsLeads from LinkedIn Lead Gen Form campaigns
WhatsApp BusinessLeads sent via WhatsApp Business webhook
ViberLeads sent via Viber webhook
TelegramLeads sent via Telegram webhook
Twitter / XLeads from Twitter/X campaigns via webhook
Snapchat Lead AdsLeads from Snapchat Lead Ads
Pinterest Lead AdsLeads from Pinterest Lead Ads
Google Ads Lead FormsLeads from Google Ads lead form extensions
YouTube Lead FormsLeads from YouTube lead form ad extensions
Microsoft AdvertisingLeads from Microsoft Ads lead forms
Email (IMAP)Leads parsed from a connected email inbox
TypeformLeads from Typeform form submissions
JotFormLeads from JotForm form submissions
CalendlyLeads from Calendly booking confirmations
LeadHub Web FormLeads from forms you build inside LeadHub

How to Create a Source Connectionโ€‹

  1. Go to Integrations > Lead Sources in the left sidebar.
  2. Click New Lead Source.
  3. Fill in:
    • Connection Name โ€” a name for this specific connection. Be descriptive, e.g. "Facebook โ€“ Summer Sale Campaign" or "Google Ads โ€“ Brand Keywords". You can have multiple connections from the same source.
    • Source Type โ€” choose the platform from the dropdown.
    • Active โ€” leave this toggled on.
  4. Click Create to save the connection.

After saving, the form expands to show you additional options depending on the source type:

  • For webhook-based sources (most platforms), you will see your unique Webhook URL. Copy this URL and paste it into the source platform's webhook or integration settings.
  • For OAuth-based sources (Facebook, Instagram, TikTok, LinkedIn, Google Ads, Microsoft Ads), you will see an OAuth Authorization section. Follow the on-screen instructions to connect via OAuth.
  • For Email (IMAP), you will see credential fields for your email server.

Assigning a Default Pipeline and Stageโ€‹

When editing a source connection, scroll to the Settings section to assign a default pipeline and stage. Every lead that arrives through this connection will automatically be placed in the pipeline and stage you choose here.

This is very useful if you run multiple campaigns โ€” each campaign gets its own source connection, each pointing to a different pipeline stage. Leads are organized automatically the moment they arrive.


Webhook-Based Sourcesโ€‹

Most sources (Facebook, Google Ads, TikTok, LinkedIn, WhatsApp, Calendly, Typeform, JotForm, etc.) work via webhooks.

How the Webhook URL Worksโ€‹

When you create a source connection, LeadHub generates a unique, secret webhook URL just for that connection. It looks like this:

https://yourdomain.com/webhook/inbound/{tenant-id}/{source}/{token}

This URL is:

  • Unique โ€” each connection has its own URL with a 48-character random token
  • Secret โ€” only the platform that knows this URL can send leads to it
  • Always listening โ€” it accepts incoming data 24/7 automatically

You copy this URL from the connection's edit page (it appears in the "Webhook URL" section after you save the connection) and paste it into the source platform.

Where to Find the Webhook URLโ€‹

  1. Go to Integrations > Lead Sources.
  2. Click the edit (pencil) icon on your connection.
  3. The "Webhook URL" section shows your unique URL with a copy button.

Field Mappingโ€‹

When a lead arrives via webhook, the source platform sends data in its own format. LeadHub automatically tries to map incoming fields to the correct lead fields (name, email, phone, etc.).

If the automatic mapping does not capture a field you need, you can configure custom field mapping in the connection's settings. This is a key-value list where you tell LeadHub: "When the incoming data has a field called full_name, put it into the lead's first_name field."


OAuth-Based Sourcesโ€‹

Some platforms (Facebook, Instagram, TikTok, LinkedIn, Google Ads, Microsoft Ads) use OAuth to authorize the connection. This means instead of copying a webhook URL, you click a button and log in to the platform to grant LeadHub permission to receive your leads.

How to connect via OAuth:

  1. Create and save the source connection first.
  2. Return to the Lead Sources list.
  3. Click the Connect via OAuth button on the connection row.
  4. You will be redirected to the platform's login page.
  5. Log in and click Allow or Authorize.
  6. You are redirected back to LeadHub. The connection status changes to Connected.

Your API credentials (access token, refresh token) are stored automatically and encrypted. You never need to copy and paste tokens manually.


Email (IMAP) Sourceโ€‹

The Email source connects LeadHub to an email inbox. When someone sends an email to that inbox, LeadHub reads the email and creates a lead from it.

How to set it up:

When you create an Email source connection, you will see credential fields in the API Credentials section:

  • IMAP Host โ€” your email server address (e.g. imap.gmail.com)
  • IMAP Port โ€” usually 993 for SSL
  • Username โ€” the email address (e.g. [email protected])
  • Password โ€” the email account's password or app password

How it works: LeadHub periodically polls your inbox for new emails (on a regular schedule). When it finds new emails, it parses the sender's name and email address and creates a lead. The email subject and body are stored as the lead's notes.

Tip for Gmail: Google requires you to use an "App Password" rather than your regular account password. Go to your Google Account security settings and create an App Password for LeadHub.

Tip: Create a dedicated email address just for leads (e.g. [email protected]) rather than connecting your main business inbox. This keeps things clean and avoids LeadHub processing emails that are not lead enquiries.


Field Mapping Explainedโ€‹

Field mapping is how LeadHub knows which piece of incoming data goes into which lead field.

When Facebook sends a lead, it might send a field called full_name. LeadHub needs to know to split that into first_name and last_name. When Calendly sends a booking, it might send invitee_email. LeadHub needs to know that goes into the email field.

Automatic mapping: LeadHub has built-in mapping for common field names from each platform. Most of the time it just works.

Custom mapping: If you have custom questions on your lead form (e.g. "What is your budget?"), you can tell LeadHub where to put the answer. In the connection's Settings section, add a mapping entry:

  • Incoming field name โ€” exactly as the platform sends it (e.g. question_budget)
  • Lead field โ€” where to store it (e.g. a custom field key you have set up)

Source Performance Analyticsโ€‹

Go to Reports > Source Performance to see how each source connection is performing. The report shows:

  • Total leads received per source
  • Conversion rate per source
  • Leads over time per source

You can use this to see which of your advertising channels is actually delivering quality leads, not just quantity.


Deactivating and Editing Source Connectionsโ€‹

To temporarily pause a connection (stop receiving leads from it without deleting it):

  1. Go to Integrations > Lead Sources.
  2. Click the edit (pencil) icon on the connection.
  3. Toggle Active off.
  4. Click Save.

The connection is paused. Leads sent to its webhook URL will be ignored until you reactivate it.

To edit a connection (rename it, update credentials, change field mapping):

  1. Go to Integrations > Lead Sources.
  2. Click the edit (pencil) icon.
  3. Make your changes and click Save.

To delete a connection permanently: Click the trash icon on the connection row. The connection is deleted. Any leads that were already received through it remain in your system โ€” they are not deleted.