Reference · Tools

Acuity Scheduling Trigger

Starts workflow when Acuity Scheduling fires appointment or order webhook events

Webhook trigger Productivity v1

The Acuity Scheduling Trigger starts a workflow the moment Acuity fires a webhook — when an appointment is booked, rescheduled, canceled, or an order completes. Connect it to notification, CRM update, or calendar sync steps to react to scheduling activity in real time. For example, you could automatically send a personalized confirmation email with attendee details whenever a new appointment is scheduled.

Node type
Webhook trigger
Parameters
2
Outputs
Output
Credentials
Acuity Scheduling

Acuity Scheduling Trigger

Trigger on Acuity Scheduling appointment and order events

Overview

Receives webhook events from Acuity Scheduling when appointments are scheduled, changed, rescheduled, canceled, or when orders are completed. The incoming webhook payload contains the object ID and action; optionally resolves the full object details via the Acuity API. Use this trigger to automate workflows based on scheduling activity in Acuity Scheduling.

Category: Productivity
Tool Name: acuityscheduling_trigger
Version: 1

Appearance: Icon: lucide-CalendarCheck | Color: #454545

Node Type

Trigger — webhook (receives incoming HTTP callbacks)

Input / Output

DirectionPort(s)
InputNone (trigger node)
OutputOutput

Credentials

This tool requires Acuity Scheduling credentials. See the Credentials Guide for setup instructions.

Parameters

ParameterTypeRequiredDefaultDescription
EventoptionsYesThe Acuity Scheduling event to listen for.
Options: appointment.canceled (fires whenever an appointment is canceled), appointment.changed (fires when the appointment is changed in any way), appointment.rescheduled (fires when the appointment is rescheduled to a new time), appointment.scheduled (fires once when an appointment is initially booked), order.completed (fires when an order is completed)
Resolve DatabooleanNotrueWhether to resolve the full object data from the Acuity API. When disabled, only the webhook payload with the object ID is returned.

Output Data

Each delivered event produces one output item carrying the Acuity Scheduling webhook payload — id (the appointment or order ID), action, calendarID, and appointmentTypeID — plus three added fields:

  • _trigger — always acuityscheduling_webhook
  • _timestamp — ISO 8601 timestamp of when the request arrived
  • _webhookEvent — the action Acuity reported

Reference the payload downstream by expression, e.g. {{ $json.id }} or {{ $json.action }}.

Usage Examples

  • Start a workflow when a new appointment is booked in Acuity Scheduling
  • Trigger automation when an Acuity Scheduling appointment is canceled
  • React to rescheduled appointments in Acuity Scheduling
  • Process completed orders from Acuity Scheduling

Example Configuration

Start a workflow whenever an appointment is booked:

{
  "type": "acuityscheduling_trigger",
  "parameters": {
    "event": "appointment.scheduled",
    "resolveData": true
  }
}

React to cancellations without resolving extra data:

{
  "type": "acuityscheduling_trigger",
  "parameters": {
    "event": "appointment.canceled",
    "resolveData": false
  }
}

Process completed orders:

{
  "type": "acuityscheduling_trigger",
  "parameters": {
    "event": "order.completed",
    "resolveData": true
  }
}

Trigger Behavior

  • Activation: When the workflow is activated, a webhook endpoint is registered with the service.
  • Deactivation: The webhook is automatically unregistered when the workflow is deactivated.
  • Payload: The incoming webhook payload is parsed and output as workflow items.
  • Verification: Supports signature verification where applicable.

Tips

Select the event type to listen for. When the event fires in Acuity Scheduling, the webhook payload (or resolved full object) is passed to the workflow.

  • One node listens for one event. To react to several events, add one Acuity Scheduling Trigger per event, or use appointment.changed, which fires for any change to an appointment.
  • The delivered payload identifies the appointment or order by ID. When a workflow needs the full record — attendee details, forms, pricing — follow the trigger with an HTTP Request node that fetches it from the Acuity API using {{ $json.id }}.
  • Incoming requests are signature-checked against your Acuity API key, so a stale or third-party caller cannot start the workflow.

Frequently asked questions

Can one trigger node listen for multiple Acuity event types at once?

No. Each Acuity Scheduling Trigger node listens for exactly one event type. If you need to react to both 'appointment.scheduled' and 'appointment.canceled', add a separate trigger node for each. The exception is 'appointment.changed', which fires on any modification to an appointment and can reduce the number of nodes you need.

The webhook payload only contains an ID — how do I get the full appointment details?

That's by design. Acuity's webhook delivers the object ID and the action type, not the complete record. To retrieve attendee information, form responses, or pricing, follow the trigger with an HTTP Request node that calls the Acuity API using the ID from the payload via `{{ $json.id }}`.

What credentials does this node require?

It requires Acuity Scheduling API credentials (acuitySchedulingApi). These are also used to verify the signature of every incoming webhook request, so only genuine Acuity events can start your workflow — stale replays or requests from third-party callers will be rejected.

Which Acuity events can this trigger listen for?

The node covers appointment lifecycle events — scheduled, changed, rescheduled, and canceled — as well as order completed events. 'appointment.changed' is the broadest option, firing on any modification to an existing appointment.

Do I need to configure anything inside Acuity itself to make this work?

Yes. Acuity must be configured to send webhooks to the endpoint URL that BusyBot provides when you activate the trigger node. The node handles signature verification automatically using your Acuity API credentials, but the webhook subscription itself must be registered on the Acuity side.

Build with the Acuity Scheduling Trigger node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Acuity Scheduling credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.