Registering a Webhook Endpoint
1
Open Webhook Settings
In the DeltaLead dashboard, navigate to Settings → Webhooks → Add Endpoint. Alternatively, call
POST /v1/webhooks directly from the API.2
Enter Your Endpoint URL
Provide the full HTTPS URL of the server that will receive events. Plain HTTP endpoints are not accepted — DeltaLead requires a valid TLS certificate.
3
Select Events
Choose the specific event types you want to subscribe to. Subscribing only to the events your integration needs reduces unnecessary traffic to your server. See the full event reference for all available event types.
4
Save and Copy the Secret
After saving, DeltaLead generates an HMAC-SHA256 signing secret for your endpoint. Copy it immediately — it is shown only once. Store it securely in your application’s environment variables and use it to verify every incoming request.
Payload Structure
Every webhook POST that DeltaLead sends to your endpoint shares the same top-level structure, regardless of event type.string
The event type that triggered this delivery, e.g.
lead.qualified.string
ISO 8601 timestamp of when the event occurred on DeltaLead’s platform.
string
The DeltaLead organization ID associated with the event.
object
Event-specific payload. The fields inside
data vary by event type. See the event reference for full schemas.lead.qualified event
Verifying Webhook Signatures
DeltaLead signs every webhook request to prove the payload originated from our platform. The signature is included in theX-DeltaLead-Signature request header as a hex-encoded HMAC-SHA256 digest of the raw request body, computed using your endpoint’s signing secret.
Always verify the signature before processing a webhook payload. Skipping this step leaves your endpoint vulnerable to spoofed requests.
Always use a timing-safe comparison (such as
crypto.timingSafeEqual in Node.js or hmac.compare_digest in Python) to prevent timing-based attacks against the signature check.Responding to Webhooks
Your endpoint must return an HTTP2xx status code within 10 seconds of receiving a delivery. DeltaLead interprets any non-2xx response — or a request that times out — as a failed delivery.
Retry Policy
DeltaLead retries failed deliveries up to 3 times using exponential backoff. Retry intervals are approximately 1 minute, 5 minutes, and 30 minutes after the initial failure.
Idempotency
Because retries can result in duplicate deliveries, design your handler to be idempotent. Use the
data.id field to deduplicate events you have already processed.