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 thetoken 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
200quickly 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=....