Hi, I’m developing a Smart Client plugin (XProtect 2025 R3) that adds a button to each PTZ dome. The button enables or disables that dome’s “return to home” rules.
The plugin already works using the REST API with the Smart Client session token: GET /api/rest/v1/rules?disabled to read and PATCH /api/rest/v1/rules/{id} with {"enabled": false} to change them. Nothing is installed on the server.
The problem is permissions. For it to work, the operator’s role needs Management Server (Connect + Read) and Rules (Read + Edit). Without them, the API returns 0 rules. Our operators only have permissions to view cameras and move PTZ.
Questions:
- Is there any way to read and enable/disable rules from a Smart Client plugin with a user that doesn’t have those permissions?
- Does the Configuration API (
ConfigurationService/SetItem()) enforce the same permissions as the REST API? - If there’s no other way, is the recommended approach for the plugin to use a service user with only those permissions (token via
/idp/connect/tokenwith password grant)? Or is there another alternative you would recommend?
Thanks.