Next gate
Gates are operated by District IT. Current role can review the package but not advance it.
Manifest
msad17.connector-manifest/1Packagemsad17/milestone_apigw@0.1.2
VendorMilestone Systems (XProtect 2023 R1+)
ProtocolREST (JSON) · OAuth2 via XProtect IDP · Events & State WebSocket
Authoauth2_password_idp
Capabilitiesinventory, health, live_uri, playback_uri, events
Write actionsnone — 8 blocked
RuntimePHP >=8.2 · curl, json
Entry classMsad17\Connectors\MilestoneApigw\B2610051208502\Connector
LicensingUses existing XProtect basic user; no extra SDK license for API Gateway REST.
OwnerMSAD 17 District IT · developer support: none
Secret references (resolved at runtime — none embedded)
- ${secret:msad17/ohchs/xprotect/username}
- ${secret:msad17/ohchs/xprotect/password}
Declared endpoints
egress allow-list| Method | Path | Purpose |
|---|---|---|
| POST | /API/IDP/connect/token | OAuth2 token (XProtect basic user) |
| GET | /api/rest/v1/cameras | Camera inventory → registry reconciliation |
| GET | /api/rest/v1/recordingServers | Recorder inventory / status |
| GET | /api/ws/events/v1 | Events & State stream |
Event mapping → msad17.event/1
| Vendor key | Platform type | Pri |
|---|---|---|
| Motion Started | video.motion | INFO |
| Communication Error | video.loss | P2 |
| Tampering | video.tamper | P2 |
| Recording Storage Full | recorder.retention | P3 |