{
  "appointment_confirmation_link":  "https://app.acuityscheduling.com/schedule.php?owner=27553604&action=appt&id%5B%5D=5e0e1d7ed20afe3834905c2813b7b6f0",
  "appointment_created_at":  "2023-08-31T16:57:18Z",
  "appointment_created_by":  "drlister@example.health",
  "appointment_date":  "August 16, 2023",
  "appointment_datetime":  "2023-08-16T17:45:00Z",
  "appointment_datetime_raw":  "2023-08-16T10:45:00-0700",
  "appointment_day_of_month":  "16",
  "appointment_day_of_week":  "Wednesday",
  "appointment_email_address":  "example@test.com",
  "appointment_end_datetime":  "2023-08-16T18:15:00Z",
  "appointment_first_name":  "John",
  "appointment_id":  "1109810062",
  "appointment_last_name":  "Doe",
  "appointment_length_minutes":  30,
  "appointment_location_detail":  "https://us06web.zoom.us/j/81866002750?pwd=bHdvZ1dLaW5LSS80QUVTckE1ZU4wUT09",
  "appointment_month":  "August",
  "appointment_notes":  "This is a note that could be empty",
  "appointment_patient_timezone_identifier":  "America/Los_Angeles",
  "appointment_phone_number":  "7083799999",
  "appointment_provider_full_name":  "Joseph Lister",
  "appointment_provider_id":  "7568038",
  "appointment_time":  "10:45am",
  "appointment_timezone_offset":  "-0700",
  "appointment_timezone_offset_seconds_east_of_utc":  -25200,
  "appointment_timezone_short_name":  "PDT",
  "appointment_type":  {
    "active":  true,
    "calendar_ids":  [
      "7568038"
    ],
    "category":  "Consultations",
    "description":  "First consultation with a provider",
    "id":  "38932233",
    "length_minutes":  30,
    "minutes_padding_after":  5,
    "minutes_padding_before":  5,
    "name":  "Initial Visit",
    "private":  false,
    "scheduling_url":  "https://app.acuityscheduling.com/schedule.php?owner=27553604"
  },
  "appointment_type_id":  "38932233",
  "appointment_type_title":  "Initial Visit",
  "appointment_zoom_meeting_id":  "81866002750",
  "appointment_zoom_meeting_password":  "234508",
  "canceled":  false,
  "customer_provided_id":  "a2bb52cb-7dc7-4710-902b-245efb55ef9e",
  "labels":  "number1"
}
{
  "appointment_confirmation_link":  "URL to the appointment confirmation page",
  "appointment_created_at":  "When the appointment was created",
  "appointment_created_by":  "Email of the user who scheduled the appointment",
  "appointment_date":  "Formatted date of the appointment",
  "appointment_datetime":  "Start time of the appointment in UTC",
  "appointment_datetime_raw":  "Raw datetime string from Acuity",
  "appointment_day_of_month":  "Day of the month for the appointment",
  "appointment_day_of_week":  "Day of the week for the appointment",
  "appointment_email_address":  "Email address of the patient",
  "appointment_end_datetime":  "End time of the appointment in UTC",
  "appointment_first_name":  "Patient's first name",
  "appointment_id":  "Unique identifier for the appointment",
  "appointment_last_name":  "Patient's last name",
  "appointment_length_minutes":  "Duration of the appointment in minutes",
  "appointment_location_detail":  "Full Zoom meeting URL for the appointment",
  "appointment_month":  "Month of the appointment",
  "appointment_notes":  "Notes associated with the appointment",
  "appointment_patient_timezone_identifier":  "IANA timezone identifier for the patient",
  "appointment_phone_number":  "Patient's phone number",
  "appointment_provider_full_name":  "Name of the provider's calendar",
  "appointment_provider_id":  "ID of the provider's calendar",
  "appointment_time":  "Formatted time of the appointment",
  "appointment_timezone_offset":  "Timezone offset in ±HHMM format",
  "appointment_timezone_offset_seconds_east_of_utc":  "Timezone offset in seconds east of UTC",
  "appointment_timezone_short_name":  "Short name of the appointment timezone",
  "appointment_type":  {
    "active":  "Whether the appointment type is deleted (true = active, false = deleted)",
    "calendar_ids":  "List of calendar IDs associated with this appointment type",
    "category":  "The category of the appointment type",
    "description":  "Optional description of the appointment type",
    "id":  "Unique identifier for the appointment type",
    "length_minutes":  "Duration of the appointment type in minutes",
    "minutes_padding_after":  "The time padding after the appointment",
    "minutes_padding_before":  "The time padding before the appointment",
    "name":  "The name of the appointment type",
    "private":  "Whether the appointment type is private",
    "scheduling_url":  "URL for scheduling this appointment type"
  },
  "appointment_type_id":  "ID of the appointment type",
  "appointment_type_title":  "Title of the appointment type",
  "appointment_zoom_meeting_id":  "Zoom meeting ID extracted from location",
  "appointment_zoom_meeting_password":  "Zoom meeting password extracted from location",
  "canceled":  "Whether the appointment has been canceled",
  "customer_provided_id":  "Customer-provided identifier (e.g. patient/morf profile ID)",
  "labels":  "List of label names associated with the appointment"
}

Events

Triggering Webhook Types

The following event types are associated with the Appointment event payload from Acuity.

  • Acuity Appointment Scheduled
  • Acuity Appointment Rescheduled
  • Acuity Appointment Cancelled
  • Acuity Appointment Updated
  • Acuity Appointment No Show
{
  "appointment_confirmation_link":  "https://app.acuityscheduling.com/schedule.php?owner=27553604&action=appt&id%5B%5D=5e0e1d7ed20afe3834905c2813b7b6f0",
  "appointment_created_at":  "2023-08-31T16:57:18Z",
  "appointment_created_by":  "drlister@example.health",
  "appointment_date":  "August 16, 2023",
  "appointment_datetime":  "2023-08-16T17:45:00Z",
  "appointment_datetime_raw":  "2023-08-16T10:45:00-0700",
  "appointment_day_of_month":  "16",
  "appointment_day_of_week":  "Wednesday",
  "appointment_email_address":  "example@test.com",
  "appointment_end_datetime":  "2023-08-16T18:15:00Z",
  "appointment_first_name":  "John",
  "appointment_id":  "1109810062",
  "appointment_last_name":  "Doe",
  "appointment_length_minutes":  30,
  "appointment_location_detail":  "https://us06web.zoom.us/j/81866002750?pwd=bHdvZ1dLaW5LSS80QUVTckE1ZU4wUT09",
  "appointment_month":  "August",
  "appointment_notes":  "This is a note that could be empty",
  "appointment_patient_timezone_identifier":  "America/Los_Angeles",
  "appointment_phone_number":  "7083799999",
  "appointment_provider_full_name":  "Joseph Lister",
  "appointment_provider_id":  "7568038",
  "appointment_time":  "10:45am",
  "appointment_timezone_offset":  "-0700",
  "appointment_timezone_offset_seconds_east_of_utc":  -25200,
  "appointment_timezone_short_name":  "PDT",
  "appointment_type":  {
    "active":  true,
    "calendar_ids":  [
      "7568038"
    ],
    "category":  "Consultations",
    "description":  "First consultation with a provider",
    "id":  "38932233",
    "length_minutes":  30,
    "minutes_padding_after":  5,
    "minutes_padding_before":  5,
    "name":  "Initial Visit",
    "private":  false,
    "scheduling_url":  "https://app.acuityscheduling.com/schedule.php?owner=27553604"
  },
  "appointment_type_id":  "38932233",
  "appointment_type_title":  "Initial Visit",
  "appointment_zoom_meeting_id":  "81866002750",
  "appointment_zoom_meeting_password":  "234508",
  "canceled":  false,
  "customer_provided_id":  "a2bb52cb-7dc7-4710-902b-245efb55ef9e",
  "labels":  "number1"
}
{
  "appointment_confirmation_link":  "URL to the appointment confirmation page",
  "appointment_created_at":  "When the appointment was created",
  "appointment_created_by":  "Email of the user who scheduled the appointment",
  "appointment_date":  "Formatted date of the appointment",
  "appointment_datetime":  "Start time of the appointment in UTC",
  "appointment_datetime_raw":  "Raw datetime string from Acuity",
  "appointment_day_of_month":  "Day of the month for the appointment",
  "appointment_day_of_week":  "Day of the week for the appointment",
  "appointment_email_address":  "Email address of the patient",
  "appointment_end_datetime":  "End time of the appointment in UTC",
  "appointment_first_name":  "Patient's first name",
  "appointment_id":  "Unique identifier for the appointment",
  "appointment_last_name":  "Patient's last name",
  "appointment_length_minutes":  "Duration of the appointment in minutes",
  "appointment_location_detail":  "Full Zoom meeting URL for the appointment",
  "appointment_month":  "Month of the appointment",
  "appointment_notes":  "Notes associated with the appointment",
  "appointment_patient_timezone_identifier":  "IANA timezone identifier for the patient",
  "appointment_phone_number":  "Patient's phone number",
  "appointment_provider_full_name":  "Name of the provider's calendar",
  "appointment_provider_id":  "ID of the provider's calendar",
  "appointment_time":  "Formatted time of the appointment",
  "appointment_timezone_offset":  "Timezone offset in ±HHMM format",
  "appointment_timezone_offset_seconds_east_of_utc":  "Timezone offset in seconds east of UTC",
  "appointment_timezone_short_name":  "Short name of the appointment timezone",
  "appointment_type":  {
    "active":  "Whether the appointment type is deleted (true = active, false = deleted)",
    "calendar_ids":  "List of calendar IDs associated with this appointment type",
    "category":  "The category of the appointment type",
    "description":  "Optional description of the appointment type",
    "id":  "Unique identifier for the appointment type",
    "length_minutes":  "Duration of the appointment type in minutes",
    "minutes_padding_after":  "The time padding after the appointment",
    "minutes_padding_before":  "The time padding before the appointment",
    "name":  "The name of the appointment type",
    "private":  "Whether the appointment type is private",
    "scheduling_url":  "URL for scheduling this appointment type"
  },
  "appointment_type_id":  "ID of the appointment type",
  "appointment_type_title":  "Title of the appointment type",
  "appointment_zoom_meeting_id":  "Zoom meeting ID extracted from location",
  "appointment_zoom_meeting_password":  "Zoom meeting password extracted from location",
  "canceled":  "Whether the appointment has been canceled",
  "customer_provided_id":  "Customer-provided identifier (e.g. patient/morf profile ID)",
  "labels":  "List of label names associated with the appointment"
}

Payload Field Details

Appointment
Event Payload
appointment_id
string
required

Unique identifier for the appointment

CEL
appointment_id
Example
"1109810062"
appointment_email_address
string

Email address of the patient

CEL
appointment_email_address
Example
"example@test.com"
appointment_type_id
string

ID of the appointment type

CEL
appointment_type_id
Example
"38932233"
appointment_type_title
string

Title of the appointment type

CEL
appointment_type_title
Example
"Initial Visit"
appointment_type
object

Description coming soon

CEL
appointment_type
Example
{
"active":  true,
"calendar_ids":  [
"7568038"
],
"category":  "Consultations",
"description":  "First consultation with a provider",
"id":  "38932233",
"length_minutes":  30,
"minutes_padding_after":  5,
"minutes_padding_before":  5,
"name":  "Initial Visit",
"private":  false,
"scheduling_url":  "https://app.acuityscheduling.com/schedule.php?owner=27553604"
}
appointment_type.id
string

Unique identifier for the appointment type

CEL
appointment_type.id
Example
"38932233"
appointment_type.active
bool

Whether the appointment type is deleted (true = active, false = deleted)

CEL
appointment_type.active
Example
true
appointment_type.name
string

The name of the appointment type

CEL
appointment_type.name
Example
"Initial Visit"
appointment_type.description
string

Optional description of the appointment type

CEL
appointment_type.description
Example
"First consultation with a provider"
appointment_type.length_minutes
uint64

Duration of the appointment type in minutes

CEL
appointment_type.length_minutes
Example
30
appointment_type.category
string

The category of the appointment type

CEL
appointment_type.category
Example
"Consultations"
appointment_type.private
bool

Whether the appointment type is private

CEL
appointment_type.private
Example
false
appointment_type.minutes_padding_before
uint64

The time padding before the appointment

CEL
appointment_type.minutes_padding_before
Example
5
appointment_type.minutes_padding_after
uint64

The time padding after the appointment

CEL
appointment_type.minutes_padding_after
Example
5
appointment_type.calendar_ids
[]string

List of calendar IDs associated with this appointment type

CEL
appointment_type.calendar_ids
Example
[
"7568038"
]
appointment_type.scheduling_url
string

URL for scheduling this appointment type

CEL
appointment_type.scheduling_url
Example
"https://app.acuityscheduling.com/schedule.php?owner=27553604"
appointment_location_detail
string

Full Zoom meeting URL for the appointment

CEL
appointment_location_detail
Example
"https://us06web.zoom.us/j/81866002750?pwd=bHdvZ1dLaW5LSS80QUVTckE1ZU4wUT09"
appointment_zoom_meeting_id
string

Zoom meeting ID extracted from location

CEL
appointment_zoom_meeting_id
Example
"81866002750"
appointment_zoom_meeting_password
string

Zoom meeting password extracted from location

CEL
appointment_zoom_meeting_password
Example
"234508"
appointment_provider_id
string

ID of the provider’s calendar

CEL
appointment_provider_id
Example
"7568038"
appointment_provider_full_name
string

Name of the provider’s calendar

CEL
appointment_provider_full_name
Example
"Joseph Lister"
appointment_datetime_raw
string
required

Raw datetime string from Acuity

CEL
appointment_datetime_raw
Example
"2023-08-16T10:45:00-0700"
appointment_datetime
timing.v1.Timestamp
required

Start time of the appointment in UTC

CEL
appointment_datetime
Example
"2023-08-16T17:45:00Z"
appointment_end_datetime
timing.v1.Timestamp
required

End time of the appointment in UTC

CEL
appointment_end_datetime
Example
"2023-08-16T18:15:00Z"
appointment_length_minutes
uint64

Duration of the appointment in minutes

CEL
appointment_length_minutes
Example
30
appointment_notes
string

Notes associated with the appointment

CEL
appointment_notes
Example
"This is a note that could be empty"
appointment_created_at
timing.v1.Timestamp
required

When the appointment was created

CEL
appointment_created_at
Example
"2023-08-31T16:57:18Z"
appointment_created_by
string

Email of the user who scheduled the appointment

CEL
appointment_created_by
Example
"drlister@example.health"
appointment_timezone_short_name
string

Short name of the appointment timezone

CEL
appointment_timezone_short_name
Example
"PDT"
appointment_timezone_offset
string
required

Timezone offset in ±HHMM format

CEL
appointment_timezone_offset
Example
"-0700"
appointment_timezone_offset_seconds_east_of_utc
int64
required

Timezone offset in seconds east of UTC

CEL
appointment_timezone_offset_seconds_east_of_utc
Example
-25200
appointment_patient_timezone_identifier
string

IANA timezone identifier for the patient

CEL
appointment_patient_timezone_identifier
Example
"America/Los_Angeles"

URL to the appointment confirmation page

CEL
appointment_confirmation_link
Example
"https://app.acuityscheduling.com/schedule.php?owner=27553604&action=appt&id%5B%5D=5e0e1d7ed20afe3834905c2813b7b6f0"
appointment_first_name
string

Patient’s first name

CEL
appointment_first_name
Example
"John"
appointment_last_name
string

Patient’s last name

CEL
appointment_last_name
Example
"Doe"
appointment_day_of_week
string
required

Day of the week for the appointment

CEL
appointment_day_of_week
Example
"Wednesday"
appointment_day_of_month
string
required

Day of the month for the appointment

CEL
appointment_day_of_month
Example
"16"
appointment_month
string
required

Month of the appointment

CEL
appointment_month
Example
"August"
appointment_date
string
required

Formatted date of the appointment

CEL
appointment_date
Example
"August 16, 2023"
appointment_time
string
required

Formatted time of the appointment

CEL
appointment_time
Example
"10:45am"
appointment_phone_number
string

Patient’s phone number

CEL
appointment_phone_number
Example
"7083799999"
customer_provided_id
string

Customer-provided identifier (e.g. patient/morf profile ID)

CEL
customer_provided_id
Example
"a2bb52cb-7dc7-4710-902b-245efb55ef9e"
labels
[]string
required

List of label names associated with the appointment

CEL
labels
Example
"number1"
canceled
bool
required

Whether the appointment has been canceled

CEL
canceled
Example
false