SIMULATION No cameras, door controllers or dispatch links are connected to this host. Device telemetry, video and alarms are synthetic. Platform services, permissions, audit chain, package install and sandbox are real.

PK-261005-002 · Milestone XProtect — API Gateway

v0.1.2 · target OHCHS · built 2026-10-05 12:08:50 EDT by it-admin-01
P1 1 P2 2 Unacked 3 Video 17/19 13:06:18 EDT OPSOC Operator 01
BuiltSandboxApprovedPromoted
bundle sha256 8f3e0eeafebcc97b… 12 files mode read_only

Next gate

Gates are operated by District IT. Current role can review the package but not advance it.

Manifest

msad17.connector-manifest/1
Packagemsad17/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
MethodPathPurpose
POST/API/IDP/connect/tokenOAuth2 token (XProtect basic user)
GET/api/rest/v1/camerasCamera inventory → registry reconciliation
GET/api/rest/v1/recordingServersRecorder inventory / status
GET/api/ws/events/v1Events & State stream
Event mapping → msad17.event/1
Vendor keyPlatform typePri
Motion Startedvideo.motionINFO
Communication Errorvideo.lossP2
Tamperingvideo.tamperP2
Recording Storage Fullrecorder.retentionP3