Appointment Status
During a typical booking flow, appointments will enter different statuses for each stage of the booking. These statuses ensure that appointment slots are held properly and availability is always in check.
Initial (IN)
Initial status is used for an appointment that is currently being held while additional information is captured. This step may be done to enter customer information with a custom booking form, or to capture payment information with an external payment processor.
By default when a Rest API request is made to POST /appointments/hold
the booking will be held in Initial (or "IN") status. The appointment time will remain locked for a duration of time that is customizable by the Location. To customize this duration please update the expirationDelay
in the applicable Location.
Booked (BK)
Booked status is an upcoming or completed appointment for which no additional steps need be taken. Once an appointment is set to Booked (or "BK") status it is ready to be taken.
In order to update an appointment from IN to BK status, the appointment must contain a name and email address for the customer. The email field can be either a valid email or a GUID if you are encrypting customer information before it is passed to the OnSched Rest API (please note that only appointments with valid email addresses will send Booking Confirmation Email and/or SMS notifications.
When an appointment is set to BK status the Booking Confirmation Email and/or SMS will be sent to the Customer, Resource, and Location. The Booking Reminder Email cadence will also begin. In addition, the Booking Confirmation webhook will be triggered at this time.
Confirmed Booked Appointments
In some instances, appointments will be "requested" by customers but should not be ready to be taken until it is confirmed by the Resource or an outside party. This can be done with the "confirm" flag on a Booked status appointment by making a Rest API request to PUT /appointments/{id}/confirm
or by updating the appointment with a PUT /appointment/{id}
request while including { confirmed: true }
in the request body.
Rescheduled (RE)
Rescheduled status Appointments are labelled on Appointments after the date/time has been changed. This is the original record that will display the date and time of the original appointment, along with all of its metadata. Although this appointment record will remain, it is for informational purposes only and the time slot will not be locked for users who are trying to book new appointments.
Within the audit trail property of the Appointment you'll find the action taken as well as a time stamp and IP address of where the change took place. The new appointment will be captured and held with a status of Booked (BK), allowing it to be further rescheduled if necessary (since appointments must be in BK status to reschedule).
When an appointment is set to RE status the Booking Reschedule Email and/or SMS will be sent to the Customer, Resource, and Location. The Booking Reminder Email cadence will also restart. In addition, the Booking Confirmation webhook will be triggered at this time with an updated eventTrigger property to specify that it is a Reschedule.
Cancelled (CN)
Cancelled status is for appointments that no longer need to take place. Once an appointment has been updated to a BK status it can no longer be deleted, it must then be Cancelled to ensure Customers are updated of all status changes.
When an appointment is set to CN status the Booking Cancellation Email and/or SMS will be sent to the Customer, Resource, and Location. The Booking Reminder Email cadence will also stop. In addition, the Booking Confirmation webhook will be triggered at this time with an updated eventTrigger property to specify that it is a Cancellation.
Updated 21 days ago