Webhooks

Receive booking and blackout event notifications in your backend and verify each delivery before processing it.

Use webhooks to send booking lifecycle updates from Rondo to your backend as soon as something changes.

What webhooks are

Use this section to understand why facility owners add webhooks after they enable booking flows.

Webhooks are HTTP notifications that Rondo sends to your server when booking or blackout events happen.

Where to configure them

Use this section to find the webhook settings in the dashboard.

Configure facility webhooks in Rondo dashboard → Facility → Webhooks.

Event list

Use this section to decide which booking and blackout changes your backend should handle.

EventWhen it fires
booking.createdA booking request is created
booking.approvedA booking request is approved
booking.rejectedA booking request is rejected
booking.cancelledA booking is cancelled
booking.updatedA booking is updated
blackout.createdA blackout is created
blackout.removedA blackout is removed

Signature verification

Use this section to verify the request before you trust or process the event body.

import crypto from 'node:crypto';

export function verifyWebhookSignature(rawBody, signature, secret) {
  const expected = crypto
    .createHmac('sha256', secret)
    .update(rawBody)
    .digest('hex');

  const actual = Buffer.from(signature, 'utf8');
  const expectedBuffer = Buffer.from(expected, 'utf8');

  if (actual.length !== expectedBuffer.length) {
    return false;
  }

  return crypto.timingSafeEqual(actual, expectedBuffer);
}

Retry behavior

Use this section to plan for temporary downtime in your webhook endpoint.

We retry 3 times with backoff. If your endpoint is down for an extended period, the webhook will auto-disable and you can re-enable it from the dashboard.

Next step: Continue to Calendar Sync if facility owners want approved bookings reflected in their calendars.