Recurring Appointments
These are the endpoints that are available under the /recurringappointments path, which shows any appointments you have set up to repeat on a weekly or monthly basis.
Endpoint | Description |
---|---|
GET /recurringappointments/{recurringAppointmentId} | Returns a JSON object for specified recurring appointment series. |
POST /recurringappointments | Creates a new recurringappointments object on an account. Request body/payload: Must pass a recurringappointments object in the request body/payload. For these calls, you need to pass a recurringappointments object with all required fields and any fields you want to set filled in the body of the payload. We have an example of a recurringappointments object in the responses section below and have indicated the required fields in the object values table at the bottom of this page. |
POST /recurringappointments/get/dates | Returns an array of dates in string format that match recurring appointment frequency. Request body/payload: Must pass a recurringappointments object in the request body/payload. |
PUT /recurringappointments/{recurringAppointmentId} | Updates an existing recurringappointments object. If you want to cancel a recurring appointment series you would use this endpoint to set the status property to "Cancelled". Request body/payload: Must pass a recurringappointments object with the desired changes made in the request body/payload. For these calls, you need to pass a recurringappointments object with all required fields and any fields you want to update filled in the body of the payload. We have an example of a recurringappointments object in the responses section below and have indicated the required fields in the object values table at the bottom of this page. |
PUT /recurringappointments/{recurringAppointmentId}/updateByAppt | Updates an existing recurringappointments object by comparing the original appointment to the updatedAppt passed in the body of the PUT call (see below) to see which fields were updated. Request body/payload: Must pass a recurringappointments object formatted as such: { recurringAppt: recurringAppointment object to be updated updatedAppt: appointment that got updated } |
Data points passed on in the request URL portion of the API call that are used to filter the data that is being requested. To aid with page load time, we have included pageNumber and pageSize parameters for server side pagination.
Parameters | Type | Endpoints to be used with | Description |
---|---|---|---|
dateSelected | string | PUT /recurrringappointments/{recurringAppointmentId}, PUT /recurringappointments/{recurringAppointmentId}/updateByAppt | Should be set to the start date of the recurring appointment series you are editing formatted as YYYY-MM-DD. |
effectiveFollowingThisDate | integer | PUT /recurringappointments/{recurringAppointmentId}, PUT /recurringappointments/{recurringAppointmentId}/updateByAppt | |
resetStartDay | boolean | PUT /recurrringappointments/{recurringAppointmentId}, PUT /recurringappointments/{recurringAppointmentId}/updateByAppt | Flag for whether or not to send invites to waitlist registrants. If true then will see if anybody is waitlisted for the timeslots that are getting cancelled and will invite them automatically. |
sendWaitListInvites | boolean | PUT /recurrringappointments/{recurringAppointmentId}, PUT /recurringappointments/{recurringAppointmentId}/updateByAppt | Flag for whether or not to send invites to waitlist registrants. If true then will see if anybody is waitlisted for the timeslots that are getting cancelled and will invite them automatically. |
The objects below represent the minimum viable objects to pass that are needed to create or update a recurringappointments object. Check whether or not a property can be written to by looking at the Object Values table below to see if the property is writable.
Property name | Type | Required | Writable | Description |
---|---|---|---|---|
additionalStaffIdList | array | Yes | Displays as staff IDs for any additional staff connected to the specified recurring appointment. | |
address | string | Yes | Displays as the address of the specified recurring appointment. | |
adhoc | ||||
blockStaffIdList | array | Yes | Displays staffIds for any additional staff members you have added so they cannot be otherwise booked for this time slot. Whatever IDs are added to the additionalStaffIdList are automatically added to the blockStaffIdList. The blockStaffIdList is used to automatically block off staff across child accounts in our enterprise set up model. | |
blockedStaffList | array | Yes | Displays an array of staff objects for any additional staff members you have added in the blockStaffIdList or additionalStaffIdList. | |
businessId | integer | Yes | Provides unique numeric ID of the business to which the specified recurring appointment belongs. | |
cancelReason | string | Yes | Displays any reason given for cancelling the specified recurring appointment. | |
changeReason | string | Yes | Displays any reason given for changing the specified recurring appointment. | |
classScheduleIdList | array | Displays as a list of the IDs of any class schedules connected to the specified recurring appointment. | ||
classScheduleList | array | Yes | Displays an array of objects representing the available class schedules when adding a recurring appointment of reasonType CLASS. | |
client | object | Yes | Displays the object of client who is connected to specified appointment - for more info, see Clients API page. | |
clientEndTime | integer | Yes | Displays as time specified appointment is set to end displayed in military format. | |
clientId | integer | Provides unique numeric ID of client who is connected to specified appointment. | ||
clientReminderHours | integer | Yes | Displays the number of hours before the appointment that an email reminder will be sent to the client. | |
clientStartTime | integer | Yes | Displays as time specified appointment is set to begin displayed in military format. | |
color | string | Displays any color chosen to override the specified recurring appointment in the backoffice calendar. | ||
coordinatorStaff | object | Yes | Displays staff object for the staff member that was the coordinator staff for specified appointment. The coordinator staff's schedule is not blocked. For more info, see Staff API page. | |
createdBy | string | Displays as the username of the user that created the specified recurring appointment. | ||
customFieldData | string | Displays the label and value properties of any scheduler preference field objects that have the mode property set to APPT so that users can inject these into email templates with 1 centralized tag which is %CUSTOM_FIELDS% | ||
dateCreated | integer | Displays as the date the specified recurring appointment was created in milliseconds elapsed since January 1, 1970 00:00:00 UTC form. | ||
dateModified | Displays as the date the specified recurring appointment was last modified in milliseconds elapsed since January 1, 1970 00:00:00 UTC form. | |||
dates | array | Displays an array of dates that an appointment from the specified recurring appointment is scheduled on. | ||
discount | integer | Yes | This displays as the total dollar value that was taken off the price of specified appointment. | |
endDate | string | Yes | Provides a string representation of the date the recurring class session ends written as YYYY-MM-DD; if set to null then the schedule will repeat indefinitely. | |
endTime | integer | Yes | Yes | Provides the time specified class ends, displayed in military format. |
everyXMonths | integer | Yes | Displays as number of months class schedule is set to recurr on. (Required if type is set to "M") | |
everyXWeeks | integer | Yes | Displays as number of weeks class schedule is set to recurr on. (Required if type is set to "W") | |
fields | array | Yes | Displays an array of any custom field objects you have added during the class schedule setup - for more info, see Scheduler Field API page. | |
fri | boolean | Indicates whether or not the recurring class schedule is set to repeat on Fridays. | ||
getSendConfirmationToClient | boolean | |||
location | object | Yes | Yes | Displays the location object assigned to the specified class session - for more info, see Locations API page. |
locationGroup | object | Yes | If you assign the class session to a specific location group, then this would be the object of that location group - for more info, see Groups API page. | |
locationId | integer | Provides unique numeric ID for the location of the specified recurring appointment. | ||
locationSuperGroup | object | Yes | If you assign the class session to a specific location super group, then this would be the object of that location super group. | |
modifiedBy | strong | Displays as the username of the user that last modified the specified recurring appointment. | ||
mon | boolean | Indicates whether or not the recurring class schedule is set to repeat on Mondays. | ||
note | string | Yes | Displays as note added to appointment profile in default comments field. | |
paid | boolean | Indicates whether or not the specified recurring appointment has been paid for yet. | ||
price | string | Yes | Displays as the price set for the specified recurring appointment after adjusting for any coupons that may have been used. | |
reason | object | Yes | Yes | Displays the reason object assigned to the specified class session - for more info, see Services API page. |
reasonId | integer | Provides unique numeric ID for reason of specified appointment. | ||
recurringAppointmentId | integer | Yes, on PUT calls | Provides a unique numeric ID for specified recurring appointment. | |
recurringSchedule | ||||
remindClientSmsHours | integer | Yes | Displays the number of hours before the appointment that an SMS reminder will be sent to the client. | |
remindStaffSmsHours | integer | Yes | Displays the number of hours before the appointment that an SMS reminder will be sent to the staff. | |
repeatStaffIds | integer | Displays as a list of IDs of staff connected to the specified recurring appointment. | ||
resource | object | Yes | Displays any resource object connected to the recurring appointment - for more info, see Resources API page. | |
sat | boolean | Indicates whether or not the recurring appointment is set to repeat on Saturdays. | ||
seats | integer | Yes | Provides number of seats for specified recurring appointment. | |
sendConfirmationToClient | boolean | Yes | Indicates whether or not a confirmation email should be sent to client on recurring appointment POST or PUT. If set to TRUE, then when specified appointment is created or changed the confirmation will get sent out. | |
sendConfirmationToStaff | boolean | Yes | Indicates whether or not a confirmation email should be sent to staff on recurring appointment POST or PUT. If set to TRUE, then when specified appointment is created or changed the confirmation will get sent out. | |
staff | object | Yes | Yes | Displays the staff object assigned to specified recurring appointment - for more, see Staff API page. |
staffId | integer | Provides unique numeric ID of the staff assigned to specified recurring appointment. | ||
staffReminderHours | integer | Yes | Displays the number of hours before the appointment that an email reminder will be sent to the staff. | |
startDate | string | Yes | Yes | Provides a string representation of the date the recurring appointment starts written as YYYY-MM-DD. |
startTime | integer | Yes | Yes | Provides the time the recurring appointment begins, displayed in military format. |
status | string | Yes | Displays the status of specified recurring appointment. Possible values include Open, Closed, or Cancelled. | |
sun | boolean | Indicates whether or not the recurring appointment is set to repeat on Sundays. | ||
tax1Amount | string | Displays as the tax amount charged for any appointment in the specified recurring appointment. | ||
thu | boolean | Indicates whether or not the recurring appointment is set to repeat on Thursdays. | ||
timeSlotList | array | Displays an array of objects representing the available timeslots when adding a recurring appointment of reasonType CLASS. The timeslots you select get passed in the timeSlotList array and will return on subsequent GET calls. | ||
tue | boolean | Indicates whether or not the recurring appointment is set to repeat on Tuesdays. | ||
waitListId | integer | Provides unique numeric ID for any waitlists that are in the specified recurring appointment series. | ||
waitListOrigRecurringAppointmentId | ||||
wed | boolean | Indicates whether or not the recurring appointment is set to repeat on Wednesdays. |