Slot Booking is part of the Bookings framework, and shares much of its configuration with the core Bookings engine.
Slot Booking Configuration
The .BookAndPay.getConfig End Point holds the slot booking configuration. The various properties are described below.
Property | Type | Description |
---|---|---|
slotbooking.slotBookTemplateId | Integer | The ID of the Slot Book template |
slotbooking.adminGroup | String | The name of the website user group that holds admin users for slot booking. By default called SLOTBOOKINGADMIN |
slotbooking.userGroup | String | The name of the website user group of users who can book appointments. This group is also the candidate group to start the slot book workflow process. Every website user who needs to be able to book an appointment should be in this group. By default called SLOTBOOKINGUSER |
slotbooking.apiKey | String | An API Key that grants access to the iCM API worker and supplies default user credentials with requests |
slotbooking.siteUserId | Integer | A website user ID with sufficient permissions to be able to access the secured slot booking articles |
slotbooking.allowColourPicker | Boolean | Whether or not to enable the colour picker in the Slot Type article extras. See section 3.3 |
slotbooking.colours | Array | The colours available in the colour picker |
slotbooking.emailReminderDelay | Number | The number of minutes prior to an appointment that a reminder email should be sent out |
slotbooking.customErrorsEnabled | Boolean | Whether or not to enable custom errors |
slotbooking.customErrors | Object | The custom errors |
This will give a full slot booking configuration of:
"slotbooking": {
"slotBookTemplateId": 38,
"adminGroup": "SLOTBOOKINGADMIN",
"userGroup": "SLOTBOOKINGUSER",
"apiKey": "1234-1234-1234-1234",
"siteUserId": 123,
"allowColourPicker": true,
"colours": [{
"name": "Blue",
"hex": "#4A90E2"
}, {
"name": "Purple",
"hex": "#8792BF"
}],
"emailReminderDelay": 30,
"customErrorsEnabled": true,
"customErrors": {
"error.pastappointment": "Appointment cannot be created as the time selected is in the past",
"error.multiday": "You cannot create appointments that extend over multiple days",
"error.slottypedisabled": "The selected appointment type cannot be created in this calendar",
"error.instanceclash": "Appointment cannot be created as it clashes with another appointment",
"error.outofactiverange": "Appointment cannot be created as the finish time is out of working hours",
"error.outofhoursofoperation": "Appointment cannot be created as the finish time is out of working hours ",
"error.inactiveperiodclash": "Appointment cannot be created as it clashes with inactive period",
"error.slottypeavailabilityexceded": "Appointment cannot be created as the selected appointment has reached its permitted volume",
"error.slotbookavailabilityexceded": "Appointment cannot be created as there is not enough time remaining in the calendar",
"error.startafterend" : "Appointment has a start date/time before the end date/time."
},
}