Reschedule an appointment.

Reschedule an appointment to a different date or calendar. Or both!

To reschedule to an overlapping time, get availability using the ignoreAppointmentIDs[] argument for /availability/times with the current appointment's ID.

Reschedule as an Admin



By default appointments are reschedule as if by a client. Rescheduling as an admin disables availability validations. To reschedule as an admin pass the query parameter admin=true.

No Email

Skip sending the rescheduling e-mail and SMS by rescheduling the appointment with the noEmail=true query parameter.


Availability errors return a 400 error response:

  "status_code": 400,
  "message": "Class series may not be rescheduled.",
  "error": "reschedule_series"
reschedule_not_allowedClients are not allowed to reschedule.
reschedule_too_closeClients are not allowed to reschedule this close to the time of the appointment.
reschedule_seriesClass series may not be rescheduled.
reschedule_canceledCanceled appointments may not be rescheduled.
invalid_calendarThe calendar "987654321" does not exist.
required_datetimeThe parameter "datetime" is required.
invalid_timezoneInvalid timezone "Aint/No_Timezone".
invalid_datetimeThe datetime "asdf" is invalid.
not_available_min_hours_in_advanceThe time "2016-01-05T16:00:00-0800" is not far enough in advance.
not_available_max_days_in_advanceThe time "2017-02-07T16:00:00" is too far in advance.
not_availableThe time "2016-03-08T05:00:00-0800" is not an available time slot.