Integrations and API
Does IREX have an API, and what can I automate with it?
Yes. IREX exposes a REST API over HTTPS that lets external applications exchange data with the platform and trigger platform functions over HTTP. Documented operations include authenticating and refreshing tokens, reading information about the signed-in API user and the user groups and roles they hold, managing person lists and vehicle (license plate) lists, and creating alarm monitors, setting their event filters, configuring delivery of events to an external system, and switching the monitors on. The API guide includes a complete worked example, "Track a Vehicle," which walks through six steps: select a user group, create a vehicle list, add the plate to the list, create an alarm monitor with webhook messaging enabled, set the monitor filter to that plate, and turn the monitor on — after which an external system receives a JSON notification, with snapshots, every time the vehicle is seen. Requests can be sent with curl or any HTTP client, such as Postman. See the API guide for the endpoint reference, error codes, and the full tutorial.
How is API access authenticated?
IREX servers respond only to authenticated API users. A client posts the platform user's login name and password to the API's authentication endpoint — an optional one-time password field is available for accounts with multi-factor authentication enabled — and receives an access token and a refresh token in return. The access token is then sent with every subsequent request in the `Authorization: Bearer` header. Tokens stay valid for a limited period that is set in platform settings and is not exposed to external users, so an integration should call the refresh endpoint periodically, or be configured to do so automatically, to stay connected. Authorization follows the platform's own role-based access control: an API user acts with the user groups and roles of its underlying platform account, so it can reach only the cameras, lists, and monitors those groups are entitled to. The request paths, payloads, and response objects are set out in the API guide.
Can IREX push real-time alerts to external systems?
Yes. Any alarm monitor can be set to send events to an external system over HTTP as soon as an event lands on the monitor. In the monitor's create or edit form, switch on Send events to external systems, choose the HTTP method (DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, or TRACE), and enter the destination URL; for POST you can also switch on Send frames so event images are included. Once the monitor is turned on, events are delivered to that URL in JSON format — documented examples include a face-match event at an office entrance triggering a door-open command, a "Safety line crossed" event at a metro station triggering an audio warning to step back, and a "Motion in region" event in a protected area triggering flashlights and audio alarms. The same monitor can also push notifications to the Sover messenger — event screenshot, event name, camera name, extras such as a license plate, location, and a link to play the event back — by switching on Enable messenger notifications; setting up the link between IREX and Sover is arranged with Sover support. The equivalent settings are available through the API as the monitor's `webhook` object. For the full procedure, see Get alerted in real time.
Can I run BI dashboards on IREX data?
Yes. IREX integrates with Apache Superset, an open-source business intelligence and data visualization platform, which connects to the IREX ClickHouse-type event database and turns AI detections into charts and dashboards. The database is exposed as Superset datasets — events recorded by video analytics modules, plus cameras and camera history, alarm monitors, persons, vehicles, users, permissions, bioterminals, and licenses. The events dataset alone offers more than 40 queryable columns, covering event start and end time, camera and sensor, analytics module, event type and priority, matched person and vehicle list entries, license plate, vehicle make, color and measured speed, traffic light state, estimated appearance attributes, object type, and crowd size; you can filter on any of them when building a chart, and write standard SQL in the SQL Editor for more advanced queries. Charts can be downloaded as CSV, JSON, Excel, or an image, and dashboards as PDF or an image, for external auditing and reporting. Your IREX administrator provides the Superset link and login credentials. See What is Apache Superset for? for the dataset and column reference.
Which third-party systems and devices does IREX integrate with?
IREX is camera-agnostic and connects to devices and systems at several levels:
- Cameras and NVRs. Cameras connect over RTSP (RTP/RTSP over TCP or UDP); all ONVIF Profile S cameras can be connected. An ONVIF device such as an NVR can be registered by IP address and credentials, which makes all of its connected camera streams available to IREX video analytics, and you then choose which of those streams to process. PTZ cameras are supported, configured with a port number, optional ONVIF account credentials, and a speed multiplier for angle and zoom control.
- Access control and other external devices. Devices such as Sigur and Netping are added under Settings > External connections, with access granted per user group.
- Vehicle enforcement. By integrating with external law enforcement databases, IREX can detect stolen vehicles, uninsured vehicles, and vehicles without valid registration.
- Public safety operations. IREX supports low-latency, video-based threat detection and notification through real-time crime centers, 911 dispatch centers, and secure messenger applications, including the Sover messenger.
- Anything reachable over HTTP. Alarm monitors can send events, and optionally frames, to any external system by URL, so an event can trigger an action in a third-party system.
For device-level setup, see Manage ONVIF devices.
Can I analyze uploaded video files, not just live streams?
Yes. You can analyze an external video file — for example, footage recorded on a mobile device — with the same IREX video analytics used on live streams. On the Gallery screen, open the Uploads tab and click the "+" icon, then click Add file to select the local video, enter a video name, adjust the recording date and time if needed, and click Upload. A video card appears with a progress indicator; upload time depends on file size and network speed. When the upload finishes, open the card's three-dot menu and run Analyze video to configure the analytics modules and start processing. After analysis completes, click Go to events to open the Events screen, where you filter and review the results exactly as you would for events from live cameras. The full walkthrough is at Upload a video to investigate.