Skip to content
Driive Help Center
Driive Help Center

Webhooks

Webhooks let Driive push real-time notifications to your server whenever something happens — a new appointment is created, a booking is cancelled, a contact is updated, and more. Instead of repeatedly checking the API for changes, your system receives an HTTP POST with the event details the moment they occur.


Why use webhooks?

  • Real-time sync — Keep external systems up to date the moment data changes in Driive

  • No polling required — Eliminate the need for scheduled API calls that check for updates

  • Trigger automations — Fire workflows in Zapier, Make, n8n, or your own backend when events happen

  • Reduce API usage — Webhooks push data to you, so you only call the API when you need additional details


Creating a webhook

  1. Navigate to Developer > Webhooks in the sidebar.

  2. Click Create Webhook.

  3. Enter a name for the webhook (e.g., "CRM Sync", "Slack Notifications", "Zapier Trigger").

  4. Enter the destination URL — this is the endpoint on your server that will receive the webhook payloads. It must be a publicly accessible HTTPS URL.

  5. Select the events you want to subscribe to. You can choose individual events or subscribe to all events. See Webhook Events and Security for the full list.

  6. Click Save.

After saving, Driive generates a signing secret for this webhook. You'll use this secret to verify that incoming payloads are genuinely from Driive. Copy it and store it securely — you can view it again later in the webhook settings, but treat it like a password.


Testing your webhook

Before going live, use the built-in test feature to make sure your endpoint is working:

  1. Open the webhook you just created.

  2. Click the Send Test button.

  3. Driive sends a sample payload to your destination URL.

  4. Check your server logs or the delivery history to confirm the payload was received and processed successfully.

This is a great way to verify your endpoint is reachable, your server returns a 2xx response, and your signature verification logic is working correctly.


Viewing delivery history

Every webhook has a delivery log that tracks each attempt Driive makes to deliver a payload.

For each delivery, you can see:

Column

Description

Event

The event type that triggered the delivery (e.g., appointment.created)

Status

Whether the delivery succeeded or failed

Response code

The HTTP status code your server returned

Timestamp

When the delivery was attempted

Use delivery logs to debug integration issues. If a delivery failed, the log shows the response code and can help you pinpoint whether the issue is on your server (e.g., a 500 error) or a network problem (e.g., a timeout).


Enabling and disabling webhooks

You can temporarily disable a webhook without deleting it:

  1. Open the webhook from the list.

  2. Toggle the Enabled switch off.

  3. Driive stops sending events to this endpoint until you re-enable it.

This is useful when you're doing maintenance on your server or debugging an issue and don't want events to pile up as failed deliveries.


Editing a webhook

To update an existing webhook:

  1. Click the webhook name in the list.

  2. Update the name, destination URL, or subscribed events.

  3. Click Save.

Changes take effect immediately. The next event that matches your updated configuration will be delivered to the new URL or event selection.


Deleting a webhook

If you no longer need a webhook:

  1. Click the webhook name in the list.

  2. Click Delete.

  3. Confirm the deletion.

All delivery history for the webhook is also removed. If you think you might need the webhook again, consider disabling it instead.


What happens next

Once your webhook is set up and receiving events, you'll want to understand the payloads and how to verify they're authentic: