Webhooks
Point a form at a URL you control and 1DB posts each new lead to it as JSON: the fields exactly as the form sent them, plus the lead’s ID and where it came from.
- JSON POST
- Secret headers
How it works
- 1
Add your URL
On the form’s Webhook tab, turn it on and paste an https address.
- 2
Add a secret header
Set a header your endpoint checks, so a request without it can be refused. Changing the URL clears the headers.
- 3
Handle lead.created
Each new lead arrives as one POST with the event name, a timestamp and the lead’s fields and metadata.
{
"event": "lead.created",
"timestamp": "2026-10-27T14:03:11.402Z",
"data": {
"leadId": "k57a3bx9r2q8m1n0c4d6e8f0",
"formName": "Quote request",
"fields": { "email": "dana@northfieldsupply.com", "quantity": 300 }
}
}Good to know
- Sent once
- A webhook isn’t retried. A failure is logged in the organization’s activity, and the lead stays safe in 1DB.
- Make replays harmless
- Answer with a 2xx straight away, do slow work in a queue, and key your writes on leadId.
- Need retries?
- Use a partner API forwarding rule instead: those are paced and retried when the destination is down.
Guides
Works alongside
- IntegrationSend leads on
Email alerts
An email for each new lead, with every field, sent to the addresses you list on the form.
- IntegrationSend leads on
HubSpot
Connect once, turn sync on per form, and each submission becomes a HubSpot lead. A lead HubSpot already has is updated, not duplicated.
- IntegrationSend leads on
Partner APIs
Forwarding rules post leads to another company’s API with your field mapping and their auth. Paced to their rate limits and retried when they’re down.