Skip to main content

Setting up Webhooks

Webhooks are a way to automatically notify your other business tools whenever something happens in Easy Appointment Booking.

Ray M avatar
Written by Ray M
Updated over 2 weeks ago


What are Webhooks?


Webhooks are a way to automatically notify your other business tools whenever something happens in Easy Appointment Booking. Think of it as setting up an automatic alert system that tells your other software "Hey, something important just happened!"


Benefits

  • Real-Time Updates: Get instant notifications when bookings are made, changed, or cancelled

  • Automation: Automatically trigger actions in your other business tools

  • Data Synchronization: Keep your systems in sync without manual work

  • Flexibility: Works with popular platforms like Zapier, Make.com, or your custom systems


Common Use Cases


1. CRM Integration: Add new bookings to HubSpot or Salesforce to update customer records automatically
2. Team Communication: Send booking notifications to Slack or create tasks in Asana or Trello
3. Customer Communication: Trigger custom email workflows.
4. Data Management: Log bookings in Google Sheets or update your custom database

Requirements

  • Ultimate Plan: You need to be on an Ultimate Plan to setup webhooks.

  • A destination URL where you want to receive the notifications (from Zapier, Make.com, or your own system).


Setting Up Webhooks

  1. Go to Settings > Integrations & Webhooks

  2. Enter your Webhook URL in the provided field

  3. Click Save to activate the webhook


Popular Integration Platforms


You can get your webhook URL from these platforms:

Zapier: Create a new Zap and choose "Webhook" as your trigger

Make.com: Add a "Webhook" module to your scenario

Workato: Use the "HTTP Webhook" trigger in your recipe

Here is a sample Zapier flow that automatically sends a WhatsApp notification when a booking is placed. Then, it adds the booking to your own custom Google sheet.

What Data You'll Receive


When a booking event occurs, we'll send a JSON payload to your webhook URL with the following structure:

{
event: "booking.created",
data: {
booking_id: "ABC",
start_date: "2026-12-11",
... (other fields, read below)
}
}

Each web hook will have a primary event field which could be one of:

  • booking.created: A booking was created.

  • booking.rescheduled: A booking was rescheduled.

  • booking.cancelled: A booking was cancelled.

(More fields are coming soon, including packages and bundles).

Additionally, the booking will have a data field, which will contain all the following fields:


Customer Information

  • first_name: Customer's first name (Example: "John")

  • last_name: Customer's last name (Example: "Doe")

  • customer_email: Customer's email address (Example: "john@example.com")

  • customer_phone: Customer's phone number (Example: "(123) 456-7890")

  • customer_language: Customer's preferred language (Example: "en")

Booking Details

  • booking_id: Unique identifier for the booking (Example: "BOK123")

  • order_id: Associated Shopify order ID (Example: "12345")

  • number_of_attendees: Number of people booked (Example: 2)

  • variant_title: Product variant title (Example: "60 Minute Session")

  • booking_created_at: Booking creation timestamp (Example: "2024-03-20T10:00:00Z")

  • booking_line_items: Additional booking properties (Example: [{"name": "Special Requests", "value": "None"}])

  • reschedule_booking_link: Link to reschedule the booking (if available)

  • bundle_booking_link: Link to redeem other bookings from this bundle (if applicable)

  • start_date: Event start date in YYYY-MM-DD format.

  • end_date: Event end date in YYYY-MM-DD format

  • start_time: Event start time (Example: "10:00 AM")

  • end_time: Event end time (Example: "11:00 AM")

  • timezone: Event timezone (Example: "America/New_York")


Event Information

  • event_id: Unique identifier for the event (Example: "EVT123")

  • event_name: Name of the event/service (Example: "Consultation Call")

  • event_description: Event description (Example: "Initial consultation...")

  • event_location: Physical or virtual location (Example: "123 Main St")

  • event_link: Meeting link if virtual (Example: "https://zoom.us/...")

  • event_notes: Additional event notes (Example: "Please arrive 5 minutes early")


Staff/Availability Information


Shop Information


Package Information (if applicable)

  • is_package_booking: Whether this is a package booking (Example: true/false)

  • package_code: Package identifier (Example: "PKG123")

  • package_booking_link: Link to book package sessions (Example: "https://...")



Testing Your Webhook


To test your webhook:

  1. Set up the webhook URL in your settings

  2. Create a test booking (or reschedule an existing booking)

  3. Check your integration platform (Zapier, Make.com, etc.) to confirm you received the data


Best Practices


1. Reliability: Our system will retry sending webhooks if the first attempt fails

2. Security: Keep your webhook URL private and secure

3. Monitoring: Check your integration platform's logs to ensure everything is working

Remember: Webhooks are a Pro feature designed to help you automate your business. While the technical details might seem complex, platforms like Zapier make it easy to use this powerful feature without any coding knowledge! 😊

Did this answer your question?