Skip to main content
API & Webhooks

Setting up a webhook

Written By John Bromley

Last updated 4 months ago

Webhooks let Sendr notify your systems in real time when events happen in your workspace, such as a contact visiting their page, a sequence step firing, a booking being made, and more.

Two ways to receive webhooks

There are two ways to receive webhooks from Sendr, and they behave differently. Picking the right one is the most common thing to get wrong.

  1. A workspace webhook (recommended for most cases). Add your endpoint once in Settings > Webhooks and choose which events you want. This receives events across your whole workspace, including page render events, engagement events, and any custom attributes you passed when generating a page. Use this if you want a complete, ongoing feed of events.
  2. A per-page webhook (via the API). When you generate a page through the API, you can include a webhookUrl in the request. This only sends callbacks for that one generated page, not for your workspace as a whole. Use this when you want notifications tied to a single page generation.

If you are not receiving all the events you expected, this is almost always why: a webhookUrl passed in an API request only covers that one page. To receive everything, add a workspace webhook in Settings > Webhooks instead.

Setting up a workspace webhook

  1. Go to Settings > Webhooks
  2. Click "Add webhook"
  3. Enter the destination URL (your server endpoint that will receive the events)
  4. Select the event types you want to subscribe to
  5. Save

Sendr will begin sending POST requests to your URL whenever the selected events occur.

Delivery behaviour

  • Sendr waits up to 15 seconds for a response from your endpoint
  • If no 2xx response is received within 15 seconds, Sendr retries up to 3 times
  • If all retries fail, the webhook is automatically disabled and you will need to re-enable it from Settings > Webhooks

Verifying requests

Sendr signs webhook requests with a secret so you can verify they genuinely came from Sendr. See "Verifying webhook requests" for how this works.

Re-enabling a disabled webhook

If your webhook was auto-disabled due to repeated failures, fix the issue on your endpoint first, then go to Settings > Webhooks and re-enable it.