Hi everyone,
I’m currently working with the Milestone XProtect REST API and I have two questions regarding functionality that appears to be missing or restricted.
1. Assigning granular permissions to a role for a specific camera
I have found that the Roles API seems to be blocked/restricted when using AddCamera.
What I’m looking for is a REST endpoint that allows assigning granular permissions to a role for a specific camera, such as:
-
GENERIC_READ -
VIEW_LIVE -
EXPORT -
and other camera-level permissions.
In XProtect 2024, I found the following endpoints:
-
/effectivePermissions -
/securityNamespaces
However, these appear to be read-only and I cannot find an endpoint that allows me to write or modify the permissions assigned to a role for a specific camera.
Question:
Is there any supported REST API endpoint or method for creating/updating granular role permissions on a specific camera? If not, is this functionality available through another API (SDK, MIP SDK, etc.)?
2. Deleting/removing a camera through REST API
The second issue is related to deleting/removing cameras.
The operation appears to be blocked/restricted by the RemoveCamera functionality. I also found that the helper DeleteHardware is used both by RemoveCamera and by the rollback logic of AddCamera.
However, I cannot find a REST endpoint such as:
DELETE /hardware/{id}
or any other REST operation that allows a camera/hardware device to be deleted.
I have checked the available API functionality across the versions I reviewed, but I haven’t found a supported REST endpoint for this operation.
Question:
Is there a supported REST API method for removing/deleting a camera or hardware device? If not, is camera deletion intentionally unavailable through the REST API, and should this instead be done through the XProtect SDK/MIP SDK or another interface?
Any clarification regarding the intended API design or the supported approach for these two operations would be greatly appreciated.
Thanks!