Many Client Site / On Site features can be enabled or disabled via the API. One example is the family of Patrol features.
Every feature has a code, which is a first letter upper-cased set of concatenated words, like "ShiftAppClockInFeature".
Viewing a Client Site's Features
A client site's list of features are a 1:many array, which can be included in its fetch payload by leveraging our Relation Lists feature:
[GET] /clients/687?include=features
...
"features": [
{
"code": "PatrolBrowserReportFeature",
"name": "On-Site License",
"description": "Create reports from the browser without the need of a mobile device.",
"active": true,
"configurationUri": "",
"group": "PREMIUM"
},
{
"code": "ShiftAppClockInFeature",
"name": "Allow clock-in via SHIFT app.",
"description": "Allow employees to clock-in through the SHIFT app.",
"active": true,
"configurationUri": "",
"group": "PREMIUM"
},
{
"code": "GuardAppSignOutOnlyFeature",
"name": "Allow users on Guard Tour App to sign-out only",
"description": "Allow a user on the Guard Tour App to sign out but stay clocked-in. (Android device only version 5.12.14 and up)",
"active": true,
"configurationUri": "",
"group": "PREMIUM"
},
{
"code": "MessageBoardFeature",
"name": "Message Board Feature",
"description": "Publish site wide messages for your employees or clients",
"active": true,
"configurationUri": "",
"group": "PREMIUM"
},
etc.Enabling/Disabling a Client Site Feature
There are two actions available for the /clients endpoint to enable or disable features, and you only need to provide the unique code value of the feature to specify which one.
Enable
[POST] /clients/687/actions/enable-feature
{
"featureCode": "ShiftAppClockInFeature"
}Disable
[POST] /clients/687/actions/disable-feature
{
"featureCode": "ShiftAppClockInFeature"
}