Send Bookings to Other Tools (Webhooks and API)

Send booking and waitlist events to Zapier, Make, a CRM, or your own system with a webhook, and use API keys to read and change bookings

Available onUltimateUpdated 3 min read
On this page

There are two ways to connect bookings to other tools:

  • Webhooks — the app tells another tool when something happens, such as a new booking. Good with Zapier or Make, no code needed.
  • The API — your own system asks the app for bookings, or changes them. For developers.

Both need the Ultimate plan. Both are in Settings > Webhooks & API.

Webhooks

Set up with Zapier or Make (no code)

  1. In Zapier, make a Zap with Webhooks by Zapier > Catch Hook as the trigger. In Make, add a Webhooks > Custom webhook module.
  2. Copy the web address (URL) it gives you.
  3. In Easy Appointment Booking, click Settings > Webhooks & API.
  4. Under Webhooks for bookings and waitlists, paste it into Webhook URL.
  5. Click Save.
  6. Make a test booking. Zapier or Make shows the booking details. Now add the actions you want, such as "add a row to Google Sheets".

One URL gets every event. You can have one URL per store.

The events

EventWhen it is sent
booking.createdA booking is made
booking.updatedA booking is changed
booking.rescheduledA booking moves to a new time
booking.cancelledA booking is cancelled
booking.checked_inA customer is checked in
booking.no_showA booking is marked as a no-show
booking.reminderA reminder is sent
package.purchasedA package is bought
waitlist.joinedA customer joins a waitlist
waitlist.updatedA waitlist entry changes
waitlist.invitedA customer on the waitlist is invited to book
waitlist.bookedA waitlist customer books
waitlist.expiredA waitlist entry expires

Each is a JSON POST with an event name and a data object:

{
  "event": "booking.created",
  "data": {
    "booking_id": "12345",
    "first_name": "Jane",
    "last_name": "Smith",
    "customer_email": "jane@example.com",
    "event_name": "Wine Tasting",
    "start_date": "April 15, 2026",
    "start_time": "6:00 PM",
    "end_time": "8:00 PM",
    "timezone": "America/Los_Angeles",
    "number_of_attendees": 2,
    "availability_name": "Main Tasting Room",
    "order_id": "9876",
    "reschedule_booking_link": "https://..."
  }
}
Warning:

Each webhook is sent once, and the app waits up to 5 seconds for a reply. If your tool is down or slow, that event is lost and is not sent again. Zapier and Make are very reliable, but if you build your own receiver, reply quickly and watch its logs.

The API (for developers)

Make an API key

  1. Click Settings > Webhooks & API.
  2. In the API section, click Add new API key.
  3. Give the key a Name and choose its permissions.
  4. Click Create key.
  5. In Save your new API key, copy the key, then click Done. The key is shown only once.

Send the key as a bearer token: Authorization: Bearer <key>. On the same page you can see when each key was last used. Click Revoke to turn a key off.

What you can do

ResourceWhat you can do
BookingsList, read, create, update, reschedule, cancel, send a reminder or follow-up
EventsList and read your services, their options, and open times
AvailabilityList, create, update, and assign to a booking
LocationsList, read, create, and update
WaitlistList, read, create, update, see stats, and message a customer
ReportsPeak hours
MeSee which store a key belongs to

The base path is /api/public/v1.

Rate limit

Each store can make 10 requests per second, shared by all its keys. Each response has X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers. Over the limit, you get HTTP 429 with the code RATE_LIMITED and a Retry-After header.

For big jobs, send requests one after another, not all at once.

Want answers without code?

To ask questions about your bookings in plain English, see Ask Claude about your bookings.

Related articles

Was this page helpful?

Still stuck?

Message our support team and we’ll walk you through it.

Not using Easy Appointment Booking yet? It's a free Shopify app for appointments, classes, and tours. Install free on Shopify