Access Control / Door Lock Automation via API

We’re currently running an XProtect deployment for a school district, and they’ve asked us to explore whether automatic door lock/unlock actions can be triggered based on system events (for example, security alerts), without any manual button interaction.

Before going too far down the design path, we’d like to understand what’s officially supported by Milestone:

  • Does XProtect provide any API (REST or similar) for interacting with XProtect Access Control or connected access points?

  • Is it possible to programmatically lock/unlock doors or query door/access point status through an API?

  • If such capabilities exist, is there public documentation or recommended best-practice guidance for this kind of integration?

At this stage, we are not looking to use an SDK, and would strongly prefer an API-based integration with clear documentation, if available.

Any clarification on current capabilities, limitations, or recommended approaches would be really helpful.

Out of the box, without you having to develop anything, you can set up rules. As an example: A rule could open a door if an event in the Access control system or the XProtect VMS happens.

The Rest API support that you can see the existence of the Access Control Units, but it does not support that you can activate anything in the Access Control system.
https://doc.developer.milestonesys.com/mipvmsapi/api/config-rest/v1/#tag/VAP/operation/getAllaccessControlUnitsInAaccessControlGroups

One possibility is to create a user-defined event, create a rule that opens a door when the event happens, and then develop an integration using the Rest API that can trigger the event.