These are the endpoints that are available under the /schedulerLink path, which lists all the custom booking sites you have created on your business' account.
Endpoint | Description |
---|---|
GET /schedulerLink | Returns all schedulerLink objects on your business' account in array format. |
GET /schedulerLink/{schedulerLinkId} | Returns a JSON object for the specified scheduler link. |
GET /schedulerLink/{objectType}/{objectId} | Returns a JSON object for the scheduler link that corresponds to the specified objectType and objectId. Can have objectType values "STAFF", "LOCATION", "REASON", and "GROUP". |
POST /schedulerLink | Creates a new schedulerLink object on your business' account. Request body/payload: Must pass a schedulerLink object in the request body/payload. For these calls, you need to pass a schedulerLink object with all required fields and any fields you want to set filled in the body of the payload - must include the schedulerType property that corresponds to where you created the specified scheduler link. We have an example of a schedulerLink object in the responses section below and have indicated the required fields in the object values table at the bottom of this page. |
PUT /schedulerLink | Updates an existing schedulerLink object on your business' account. Request body/payload: Must pass a schedulerLink object in the request body/payload. For these calls, you need to pass a schedulerLink object with all required fields and any fields you want to update filled in the body of the payload - must include businessId and schedulerLinkId. We have an example of a schedulerLink object in the responses section below and have indicated the required fields in the object values table at the bottom of this page. |
DELETE /schedulerLink/{schedulerLinkId} | Removes a schedulerLink object from view by setting its active property to false. |
There are no parameters associated with schedulerLink calls.
The objects below represent the minimum viable objects to pass that are needed to create or update a schedulerLink 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.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "active": true, "allOrNoneSelect": { "locationGroups": { "label": "Select Location Groups", "value": "select" }, "locations": { "label": "Select Locations", "value": "select" }, "reasonGroups": { "label": "Select Reason Groups", "value": "select" }, "reasons": { "label": "Select Services & Classes", "value": "select" }, "staff": { "label": "Select Tutors", "value": "select" }}, "appMode: null, "businessId": "43111", "classScheduleIdList": null, "domain": "timetap.com", "groupIdList": [ "0": 31158, "1": 75774, "2": 36239 ], "handle": "petzzz", "internalName": "petz", "locationGroupIdList": [ "0": 31158 ], "locationIdList": [ "0": 81181, "1": 282639 ], "logoUrl": null, "publish": true, "reasonGroupIdList": [ "0": 75774, "1": 36239 ], "reasonIdList": [ "0": 240094, "1": 255109, "2": 546559 ], "schedulerType": "LINK", "schedulerVersion": 5, "showPrivateGroup": true, "showPrivateLocation": true, "showPrivateReason": true, "showPrivateStaff": true, "showServiceGroup": true, "staffIdList": [ "0": 298660, "1": 302120 ], "vanity": false } |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "active": true, "allOrNoneSelect": { "locationGroups": {value: "all", label: "All Location Groups"}, "locations": {value: "all", label: "All Locations"}, "reasonGroups": {value: "all", label: "All Reason Groups"}, "reasons": {value: "all", label: "All Services & Classes"}, "staff": {value: "all", label: "All Staff"} }, "appMode": 1, "appModeIncludes": ["LOCATION", "STAFF", "REASON"], "businessId": 43111, "classScheduleIdList": null, "createdDate": 1550166586055, "createdUser": "JoeSchmo", "domain": "timetap.com", "embedCode": "<iframe src='https://www.timetap.com/embed/biggerthanigly' frameborder='0' width='840' height='500'></iframe>", "groupIdList": [], "handle": "biggerthanigly", "internalName": "Custom booking site for Titus Bigly!", "labelJson": "(JSON text of scheduler link)", "labelMap": null, "locationAPIBeanList": [], "locationGroupAPIBeanList": [], "locationGroupIdList": null, "locationIdList": [], "logoUrl": null, "modifiedDate": null, "modifiedUser": null, "originalHandle": "biggerthanigly", "privateUrl": "https://biggerthanigly.timetap.com", "publish": true, "reasonAPIBeanList": [], "reasonGroupAPIBeanList": [], "reasonGroupIdList": null, "reasonIdList": [], "schedulerLinkId": 89629, "schedulerType": "STAFF", "schedulerVersion": 4, "showServiceGroup": true, "showServiceSuperGroup": true, "skipWelcome": false, "staffAPIBeanList": [{professionalId: 81651, fullName: "Titus Bigly", userName: null, email: null, phone: null,…}], "staffIdList": [81651], "vanity": true, "welcomeText": "(HTML text of welcome message)", "welcomeTextFormatted": {}, "welcomeTitle": "Welcome" } |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
[{ "active": true, "appMode": null, "booleanJson": null, "booleanMap": null, "businessId": 43111, "classScheduleIdList": null, "clientSSO": null, "continueShoppingUrl": null, "createdDate": 1535556822353, "createdUser": "JoeSchmo", "defaultOnlyBusinessConfigProps": null, "defaultOnlyBusinessProps": null, "defaultOnlySchedPreferenceProps": null, "domain": "timetap.com", "googleAnalyticsCode": null, "googleTagManagerCode": null, "groupIdList": [], "handle": "s8btm6dnae", "hideFromBots": false, "internalName": "Custom booking site for Class A", "labelJson": null, "labelMap": null, "landingPageStylesJson": null, "locationGroupList": null, "locationIdList": [], "locationList": null, "locationSuperGroupList": null, "logoUrl": null, "miniWebRedirect": null, "modifiedDate": null, "modifiedUser": null, "numberJson": null, "numberMap": null, "privateUrl": "https://s8btm6dnae.timetap.com", "publish": true, "reasonGroupList": null, "reasonIdList": [255178], "reasonSuperGroupList": null, "schedulerLinkExclusions": null, "schedulerLinkId": 36697, "schedulerType": "REASON", "schedulerVersion": 5, "showPrivateGroup": true, "showPrivateLocation": false, "showPrivateReason": false, "showPrivateStaff": null, "showServiceGroup": null, "showServiceSuperGroup": null, "skipWelcome": false, "staffIdList": [], "staffList": null, "styleUrl": null, "vanity": false, "welcomeText": null, "welcomeTitle": null }], |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "groupsList": [{ "active": true, "allowOnline": true, "businessId": 43111, "groupId": 31289, "groupName": "Coastal Locations", "groupType": "LOCATION", "internalDisplayName": "Coastal Locations", }], "locationAPIBeanList": [{ "active": true, "allowOnline": true, "businessId": 43111, "description": "", "internalDisplayName": "Beach Office", "internalName": "Beach Office", "locationId": 81181, "locationName": "Beach Office", "locationType": "PHYSICAL", }], "reasonAPIBeanList": [{ "active": true, "allowOnline": true, "allowPrePay": false, "allowWaitList": false, "customWorkSchedule": 0, "internalDisplayName": "Surfing for Beginners", "personal": false, "reasonDesc": "Surfing for Beginners", "reasonId": 177850, "taxable": false, "visitMinutes": 60, }], "schedulerLink": { "active": true, "appMode": null, "businessId": 43111, "classScheduleIdList": null, "createdDate": 1540488717347, "createdUser": "MORGANKEARNEY", "domain": "timetap.com", "groupIdList": [31289], "handle": "sv9rfvaek2", "internalName": "Pets plus", "labelJson: "(JSON text of scheduler link)", "labelMap": "(JSON text of labels that have ben altered)", "locationIdList": [81181, 157670], "logoUrl": null, "modifiedDate": 1546619658025, "modifiedUser": "MORGANKEARNEY", "privateUrl: "https://sv9rfvaek2.timetap.com". "publish": true, "reasonIdList": [240127, 255109, 240094, 159330], "schedulerLinkId": 62833, "schedulerType": "LINK", "skipWelcome": false, "staffIdList": [82275, 80891], "vanity": false, "welcomeText": "(Welcome text of scheduler link)", "welcomeTitle": "Welcome to Pets Plus Scheduler" }, "staffAPIBeanList": [] } |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "active": true, "appMode": null, "booleanJson": null, "booleanMap": null, "businessId": 43111, "classScheduleIdList": null, "clientSSO": null, "continueShoppingUrl": null, "createdDate": 1691440216874, "createdUser": "JoeSchmo", "defaultOnlyBusinessConfigProps": null, "defaultOnlyBusinessProps": null, "defaultOnlySchedPreferenceProps": null, "domain": "timetap.com", "googleAnalyticsCode": null, "googleTagManagerCode": null, "groupIdList": [ "0": 31158, "1": 75774, "2": 36329 ], "handle": "petzzz", "hideFromBots": null, "internalName": "petz", "labelJson": null, "labelMap": null, "landingPageStylesJSON": null, "locationGroupList": null, "locationIdList": [ "0": 81181, "1": 282639 ], "locationList": null, "locationSuperGroupList": null, "logoUrl": null, "miniWebRedirect": null, "modifiedDate": null, "modifiedUser": null, "numberJson": null, "numberMap": null, "privateUrl": "https://petzzz.timetap.com", "publish": true, "reasonGroupList": null, "reasonIdList": [ "0": 240094, "1": 255109, "2": 546559 ], "reasonList": null, "reasonSuperGroupList": null, "schedulerLinkExclusions": null, "schedulerLinkId": 262944, "schedulerType": "LINK", "schedulerVersion": 5, "showPrivateGroup": true, "showPrivateLocation": true, "showPrivateReason": true, "showPrivateStaff": true, "showServiceGroup": true, "showServiceSuperGroup": null, "skipWelcome": false, "staffIdList": [ "0": 298660, "1": 302120 ], "staffList": null, "styleUrl": null, "vanity": true, "welcomeText": null, "welcomeTitle": null } |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "active": true, "appMode": 1, "businessId": 43111, "classScheduleIdList": null, "createdDate": 1535471045575, "createdUser": "MORGANKEARNEY", "domain": "timetap.com", "groupIdList": [31289, 36239], "handle": "8wruu5dok5", "internalName": "Beach Combers", "labelJson": "(JSON text of scheduler link)", "labelMap": null, "locationIdList": [81181, 157670], "logoUrl": null, "modifiedDate": 1547229165068, "modifiedUser": "MORGANKEARNEY", "privateUrl": "https://8wruu5dok5.timetap.com", "publish": true, "reasonIdList": [240127, 255109, 240094, 159330], "schedulerLinkId": 36235, "schedulerType": "LINK", "skipWelcome": false, "staffIdList": [154514, 80891, 81651], "vanity": false, "welcomeText": "({Welcome text of scheduler link)", "welcomeTitle": "Welcome" } |
Property name | Type | Required | Description |
---|---|---|---|
active | boolean | Yes | Indicates whether or not the specified scheduler link is active. |
appMode | integer | Yes | Displays as the appMode of the specified scheduler link - for more info on appMode and a table describing the different values, see the Scheduler Preference API page. If this property is left null, that means that the schedulerLink will pick up the values from the default scheduler on the account. |
booleanJson | array | Provides an array of various booleans to check any values set there to see if they override any values set on the pref_scheduler object. | |
booleanMap | array | Provides an array of boolean properties for the specified scheduler link. | |
businessId | integer | Yes | Provides unique numeric ID for the business the specified scheduler link belongs to. |
classScheduleIdList | array | Displays as a list of the IDs of any class schedules connected to the specified scheduler link. | |
clientSSO | boolean | Indicates whether or not the specified scheduler link allows for client Single Sign On. | |
continueShoppingUrl | string | Displays what is set as the Button Redirect URL for the specified scheduler link. | |
createdDate | integer | Displays as date the specified scheduler link was created in milliseconds elapsed since January 1, 1970 00:00:00 UTC form. | |
createdUser | string | Displays the username of user who created the specified scheduler link. | |
defaultOnlyBusinessConfigProps | array | Provides an array of settings set on the business_config table that apply to the default scheduler link. | |
defaultOnlyBusinessProps | array | Provides an array of settings set on the business table that apply to the default scheduler link. | |
defaultOnlySchedPreferenceProps | array | Provides an array of settings set on the pref_scheduler table that apply to the default scheduler link. | |
domain | string | Yes | Displays as the domain of the specified scheduler link. For the purposes of TimeTap, this will be set to "timetap.com". |
googleAnalyticsCode | string | Displays as the Google Analytics code for the specified scheduler link. | |
googleTagManagerCode | string | Displays as the Google Tag Manager code for the specified scheduler link. | |
groupIdList | array | Displays as a list of the IDs of any groups connected to the specified scheduler link. | |
handle | string | Yes | Displays as the what is set as the webhandle of the specified scheduler link. If nothing is set here, TimeTap will generate a unique alphanumeric string to fill it. |
hideFromBots | boolean | Indicates whether or not the specified scheduler will be hidden from bots. | |
internalName | string | Displays as what is set as the Internal Name of the specified scheduler link upon its creation. | |
labelJson | string | Displays as a string representation of the JSON object describing the the labels used for the specified scheduler link. | |
labelMap | object | Should mimic the properties and values stored on labelJson, just using object representation instead of a string. | |
landingPageStylesJson | array | Displays all changes that have been made to the default booking site's styles on the specified scheduler link. | |
locationGroupList | string | Displays as a list of the names of any location groups that are set to show on the specified scheduler link. | |
locationIdList | array | Displays as a list of the IDs of any locations that are set to show on the specified scheduler link. | |
locationList | string | Displays as a list of the names of any locations that are set to show on the specified scheduler link. | |
locationSuperGroupList | sting | Displays as a list of the names of any location super groups that are set to show on the specified scheduler link. | |
logoUrl | string | if this property is left null, that means that the schedulerLink will pick up the values from the default scheduler on the account. | |
miniWebRedirect | string | ||
modifiedDate | integer | Displays as date the specified scheduler link was last modified in milliseconds elapsed since January 1, 1970 00:00:00 UTC form. | |
modifiedUser | string | Displays the username of user who last modified the specified scheduler link. | |
numberJson | string | Displays as a property on the scheduler_link table where you can set overrides for several of the number based properties on the pref_scheduler table. | |
numberMap | string | Displays as a readable object that is equivalent to the numberJson property. | |
privateUrl | string | Displays as the URL of the specified scheduler link as set on the Webhandle - gets formed by combining the domain and handle of the specified scheduler link. | |
publish | boolean | Yes | Indicates whether or not the box signifying Publish Booking Site is checked - acts as a way to temporarily disable the schedulerLink from being active to clients without deleting it entirely. |
reasonGroupList | string | Displays as a list of the names of any reason groups that are set to show on the specified scheduler link. | |
reasonIdList | array | Displays as a list of the IDs of any reasons that are set to show on the specified scheduler link. | |
reasonList | string | Displays as a list of usernames of any reasons that are set to show on the specified scheduler link. | |
reasonSuperGroupList | string | Displays as a list of the names of any reason super groups that are set to show on the specified scheduler link. | |
schedulerLinkExclusions | array | ||
schedulerLinkId | integer | Yes, on PUT calls | Provides unique numeric ID of the specified scheduler link. |
schedulerType | string | Yes | Displays as the scheduler type of the specified scheduler link - this property will be set to LINK if you are creating a scheduler link object by choosing to "Add New Booking Site" on the TimeTap website under Custom Booking Sites. It could also be set to LOCATION, LOCATION_GROUP, STAFF, REASON, or REASON_GROUP if you are creating the scheduler link from a specific object profile of the corresponding object type. |
schedulerVersion | integer | Displays the version of the scheduler used by the specified scheduler link - the newer scheduler is version 5, but a few older accounts still use version 4. | |
showPrivateGroup | boolean | Indicates whether or not the specified scheduler link is set to show private location groups and reason groups in its scheduler flow. | |
showPrivateLocation | boolean | Indicates whether or not the specified scheduler link is set to show private locations in its scheduler flow. | |
showPrivateReason | boolean | Indicates whether or not the specified scheduler link is set to show private services and classes in its scheduler flow. | |
showPrivateStaff | boolean | Indicates whether or not the specified scheduler link is set to show private staff in its scheduler flow. | |
showServiceGroup | boolean | Indicates whether or not the specified scheduler link is set to show reason super groups in its scheduler flow. | |
showServiceSuperGroup | boolean | Indicates whether or not the specified scheduler link is set to show reason groups in its scheduler flow. | |
skipWelcome | boolean | Indicates whether or not the specified scheduler link is set to skip the welcome page - if this property is left null, that means that the schedulerLink will pick up the values from the default scheduler on the account. | |
staffIdList | arrayinteger | Displays as a list of the IDs of any staff that are connected to the specified scheduler link. | |
staffList | stringarray | Displays as a list of usernames of any staff that are set to show on the specified scheduler link. | |
styleUrl | integerProvides the scheduler version being used by the specified scheduler link. | Optional stylesheet url that can be applied to header of scheduler to override default styles; must be set as an HTTPS URL. | |
vanity | boolean | Yes | Indicates whether or not you chose to set your own individual handle - if you do not, TimeTap will generate a unique alphanumeric code automatically. |
welcomeText | string | Displays as what is set as the Welcome Text under Customizations in the specified scheduler link's profile - if this property is left null, that means that the schedulerLink will pick up the values from the default scheduler on the account. | |
welcomeTitle | string | Displays as what is set as the Welcome Title under Customizations in the specified scheduler link's profile - if this property is left null, that means that the schedulerLink will pick up the values from the default scheduler on the account. |