Skip to main content
Inbound webhooks let external tools — Zapier, n8n, Make, webinar platforms, ad forms, or your own scripts — send leads straight into a Leadey campaign as they’re captured. This is the inbound counterpart to the read API.
This page is about traffic coming in to Leadey. For Leadey notifying your systems when something changes, see Outbound webhooks.

How it works

Each campaign can expose a unique, secret webhook URL. Posting a lead payload to that URL adds the lead to the campaign and fires the Lead enters campaign trigger, so any workflow built on that trigger runs for it.
1

Enable the webhook on a campaign

Open the campaign in the Cockpit, turn on Inbound webhook, and copy the generated URL. It embeds a secret token unique to that campaign:
2

Map your fields

In the campaign’s webhook settings, map your payload keys to Leadey lead fields (email, firstName, lastName, company, title, phone, linkedinUrl, or a custom field). Unmapped keys are ignored.
3

Post a lead

Send a JSON body with the mapped fields:

Authentication

The webhook is authenticated by the token query parameter — it is not an API key, and it’s scoped to a single campaign. Treat the URL as a secret: anyone with it can add leads to that campaign. If it leaks, rotate it by regenerating the webhook in the campaign settings.

Behaviour

  • Leads are de-duplicated within the campaign by email (then name + company when there’s no email).
  • The endpoint returns 200 quickly and ingests asynchronously, so retries and bursts won’t cause duplicate processing.
  • Leads added by webhook are tagged with a Webhook source, so you can filter and report on them — including via GET /v1/leads?source=....
Building a no-code flow? In Zapier or Make, use a “Webhooks → POST” action pointed at the campaign URL, and map your trigger’s fields to the JSON body above.