Milestone XProtect REST API 2023 R3 – Camera Permissions and Camera Deletion

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!