Skip to main content

Integration Overview

All corridor events reach you through the Hub's single /graphql endpoint on port 8090, served by the GraphQL API. This one endpoint covers both subscriptions (live notifications over WebSocket or SSE) and queries (historical data retrieval over HTTP POST). Partners, integrators, and the bundled dashboard all integrate the same way — no other corridor service exposes an external interface.

Live subscriptions​

The aggregate corridorEvents subscription delivers every clearance decision and event in one stream, with optional type filtering — the natural starting point for most integrations. Each of the 13 notification topics is additionally exposed as an individual subscription — for example identificationClearanceGreen, identityCreated, or zoneOccupancyViolation — so consumers can subscribe only to what they need. The full topic list is in the Event Catalog; working samples are in Consuming Events.

Historical queries​

Persisted events are queryable by event type, time range, unit ID, correlation ID, and source system, with paginated results in chronological order. Retention is short and configurable — see Event Storage & Retention.

Cameras, watchlists and members​

Management data — cameras, watchlists, and members — is owned by Face Matcher. The Hub's GraphQL API proxies it read-only for the dashboard, delegating to Face Matcher and storing no local copy. To create or change cameras, watchlists or members, use Face Matcher directly: its Station UI, its REST API or its GraphQL API, all documented under Face Matcher integration.

Stability guarantees​

The event model is designed for forward compatibility. When eGate-specific notifications diverge from corridor notifications, prefixed topics (corridor.*, egate.*) will be introduced without removing existing subscriptions — the single /graphql endpoint and unified event model remain stable. A REST API offering the same event model over HTTP is planned.

In this section​