Acuity Scheduling · Schema
Acuity Appointment
An appointment record in the Acuity Scheduling system.
SchedulingAppointmentsCalendarBookingHIPAAWebhooks
Properties
| Name | Type | Description |
|---|---|---|
| id | integer | Unique appointment identifier |
| firstName | string | Client first name |
| lastName | string | Client last name |
| phone | string | Client phone number |
| string | Client e-mail address | |
| date | string | Human-readable appointment date |
| time | string | Human-readable appointment start time |
| endTime | string | Human-readable appointment end time |
| dateCreated | string | Human-readable date the appointment was created |
| datetime | string | ISO 8601 appointment start datetime |
| price | string | Appointment price as a decimal string |
| paid | string | Whether the appointment has been paid |
| amountPaid | string | Amount paid as a decimal string |
| type | string | Name of the appointment type |
| appointmentTypeID | integer | ID of the appointment type |
| addonIDs | array | IDs of addons included in the appointment |
| classID | integernull | Class ID if the appointment is a class booking |
| category | string | Appointment type category |
| duration | string | Duration of the appointment in minutes |
| calendar | string | Name of the calendar |
| calendarID | integer | ID of the calendar |
| canClientCancel | boolean | Whether the client is allowed to cancel this appointment |
| canClientReschedule | boolean | Whether the client is allowed to reschedule this appointment |
| location | string | Location of the appointment |
| certificate | stringnull | Package or coupon certificate code applied |
| confirmationPage | string | URL of the appointment confirmation page |
| formsText | string | Intake form responses as plain text |
| notes | string | Appointment notes (admin-settable) |
| noShow | boolean | True if the admin has marked this canceled appointment as a no-show |
| timezone | string | Client timezone for this appointment |
| forms | array | Intake form data |
| labels | array | Labels applied to the appointment |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/acuity/main/json-schema/acuity-appointment.json",
"title": "Acuity Appointment",
"description": "An appointment record in the Acuity Scheduling system.",
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique appointment identifier"
},
"firstName": {
"type": "string",
"description": "Client first name"
},
"lastName": {
"type": "string",
"description": "Client last name"
},
"phone": {
"type": "string",
"description": "Client phone number"
},
"email": {
"type": "string",
"format": "email",
"description": "Client e-mail address"
},
"date": {
"type": "string",
"description": "Human-readable appointment date"
},
"time": {
"type": "string",
"description": "Human-readable appointment start time"
},
"endTime": {
"type": "string",
"description": "Human-readable appointment end time"
},
"dateCreated": {
"type": "string",
"description": "Human-readable date the appointment was created"
},
"datetime": {
"type": "string",
"format": "date-time",
"description": "ISO 8601 appointment start datetime"
},
"price": {
"type": "string",
"description": "Appointment price as a decimal string"
},
"paid": {
"type": "string",
"description": "Whether the appointment has been paid"
},
"amountPaid": {
"type": "string",
"description": "Amount paid as a decimal string"
},
"type": {
"type": "string",
"description": "Name of the appointment type"
},
"appointmentTypeID": {
"type": "integer",
"description": "ID of the appointment type"
},
"addonIDs": {
"type": "array",
"description": "IDs of addons included in the appointment",
"items": {
"type": "integer"
}
},
"classID": {
"type": ["integer", "null"],
"description": "Class ID if the appointment is a class booking"
},
"category": {
"type": "string",
"description": "Appointment type category"
},
"duration": {
"type": "string",
"description": "Duration of the appointment in minutes"
},
"calendar": {
"type": "string",
"description": "Name of the calendar"
},
"calendarID": {
"type": "integer",
"description": "ID of the calendar"
},
"canClientCancel": {
"type": "boolean",
"description": "Whether the client is allowed to cancel this appointment"
},
"canClientReschedule": {
"type": "boolean",
"description": "Whether the client is allowed to reschedule this appointment"
},
"location": {
"type": "string",
"description": "Location of the appointment"
},
"certificate": {
"type": ["string", "null"],
"description": "Package or coupon certificate code applied"
},
"confirmationPage": {
"type": "string",
"format": "uri",
"description": "URL of the appointment confirmation page"
},
"formsText": {
"type": "string",
"description": "Intake form responses as plain text"
},
"notes": {
"type": "string",
"description": "Appointment notes (admin-settable)"
},
"noShow": {
"type": "boolean",
"description": "True if the admin has marked this canceled appointment as a no-show"
},
"timezone": {
"type": "string",
"description": "Client timezone for this appointment"
},
"forms": {
"type": "array",
"description": "Intake form data",
"items": {
"$ref": "#/$defs/AppointmentForm"
}
},
"labels": {
"type": "array",
"description": "Labels applied to the appointment",
"items": {
"$ref": "#/$defs/Label"
}
}
},
"$defs": {
"AppointmentForm": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Form ID"
},
"name": {
"type": "string",
"description": "Form name"
},
"values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": { "type": "string" },
"name": { "type": "string" },
"fieldID": { "type": "integer" },
"id": { "type": "integer" }
}
}
}
}
},
"Label": {
"type": "object",
"properties": {
"id": { "type": "integer" },
"name": { "type": "string" },
"color": { "type": "string" }
}
}
}
}