Download OpenAPI specification:
XCube Platform API documentation
Creates new admin user
New admin user
| grant_type | string Type of grant. Must be 'password'. |
| key | string XCube Display Manager instance key provided by Optima DTS. |
| password | string Password. |
| username | string Username. |
{- "grant_type": "string",
- "key": "string",
- "password": "string",
- "username": "string"
}{- "access_token": "string",
- "expires_in": 0,
- "token_type": "string",
- "username": "string"
}Creates new user
New user
| admin | boolean User is an administrator. |
| auth_provider | string Which authentication source owns this account. "" means a native local account, which makes every document that already exists correct with no migration: absent reads as empty. Otherwise the config.env provider id. See XMANAGER/MIXED_AUTH_SSO.md section 3 — the design is shared. |
| auth_subject | string The provider's immutable subject ("sub"), bound on the first federated sign-in. SERVER-SET: never accepted from a client payload, and never written by an admin's edit except to clear it (see UserAccountUpdate). |
| disabled | boolean Disabled refuses the account's sign-ins (password and provider alike) and, through the session snapshot the auth middleware consults on every request, the tokens it already holds. Absent on pre-existing documents = false. |
string Email. | |
| entity_list | Array of strings List of entities the user has access to. |
| first_name | string First name. |
| last_login | string Date and time of the user's most recent successful login (zero if never). |
| last_modified | string Date and time the user was last modified. |
| last_name | string Last name. |
| organization | string Organization. |
| password | string Password. |
| phone | string Phone number. |
| ptz_control | boolean User has PTZ control permissions. |
| session_lifetime_mins | integer SessionLifetimeMins overrides the deployment's JWT_EXPIRATION_MINS for this account: 0 = the deployment default, SESSION_LIFETIME_UNLIMITED = tokens that never expire, otherwise minutes (at least SESSION_LIFETIME_MIN_MINS). Local accounts only: a federated account keeps the deployment default, so the provider's users never hold a longer session than the deployment chose. Absent on pre-existing documents = 0. Matches XMANAGER. |
| title | string Title. |
| username | string Username. |
| wall_list | Array of strings List of walls the user has access to. |
{- "admin": true,
- "auth_provider": "string",
- "auth_subject": "string",
- "disabled": true,
- "email": "string",
- "entity_list": [
- "string"
], - "first_name": "string",
- "last_login": "string",
- "last_modified": "string",
- "last_name": "string",
- "organization": "string",
- "password": "string",
- "phone": "string",
- "ptz_control": true,
- "session_lifetime_mins": 0,
- "title": "string",
- "username": "string",
- "wall_list": [
- "string"
]
}{- "admin": true,
- "auth_provider": "string",
- "auth_subject": "string",
- "disabled": true,
- "email": "string",
- "entity_list": [
- "string"
], - "first_name": "string",
- "last_login": "string",
- "last_modified": "string",
- "last_name": "string",
- "organization": "string",
- "password": "string",
- "phone": "string",
- "ptz_control": true,
- "session_lifetime_mins": 0,
- "title": "string",
- "username": "string",
- "wall_list": [
- "string"
]
}Ends every session of the user (sign out everywhere): each token the account holds is refused from now on, and the account signs in afresh.
| username required | string Username |
"string"[- {
- "admin": true,
- "auth_provider": "string",
- "auth_subject": "string",
- "disabled": true,
- "email": "string",
- "entity_list": [
- "string"
], - "first_name": "string",
- "last_login": "string",
- "last_modified": "string",
- "last_name": "string",
- "organization": "string",
- "password": "string",
- "phone": "string",
- "ptz_control": true,
- "session_lifetime_mins": 0,
- "title": "string",
- "username": "string",
- "wall_list": [
- "string"
]
}
]Updates a user password
Update Password Request
| new_password | string New password of the user. |
| old_password | string Old password of the user. |
{- "new_password": "string",
- "old_password": "string"
}"string"Updates user
| username required | string Username |
Updated user
| admin | boolean User is an administrator. |
| auth_provider | string Which authentication source owns this account. "" means a native local account, which makes every document that already exists correct with no migration: absent reads as empty. Otherwise the config.env provider id. See XMANAGER/MIXED_AUTH_SSO.md section 3 — the design is shared. |
| auth_subject | string The provider's immutable subject ("sub"), bound on the first federated sign-in. SERVER-SET: never accepted from a client payload, and never written by an admin's edit except to clear it (see UserAccountUpdate). |
| disabled | boolean Disabled refuses the account's sign-ins (password and provider alike) and, through the session snapshot the auth middleware consults on every request, the tokens it already holds. Absent on pre-existing documents = false. |
string Email. | |
| entity_list | Array of strings List of entities the user has access to. |
| first_name | string First name. |
| last_login | string Date and time of the user's most recent successful login (zero if never). |
| last_modified | string Date and time the user was last modified. |
| last_name | string Last name. |
| organization | string Organization. |
| password | string Password. |
| phone | string Phone number. |
| ptz_control | boolean User has PTZ control permissions. |
| session_lifetime_mins | integer SessionLifetimeMins overrides the deployment's JWT_EXPIRATION_MINS for this account: 0 = the deployment default, SESSION_LIFETIME_UNLIMITED = tokens that never expire, otherwise minutes (at least SESSION_LIFETIME_MIN_MINS). Local accounts only: a federated account keeps the deployment default, so the provider's users never hold a longer session than the deployment chose. Absent on pre-existing documents = 0. Matches XMANAGER. |
| title | string Title. |
| username | string Username. |
| wall_list | Array of strings List of walls the user has access to. |
{- "admin": true,
- "auth_provider": "string",
- "auth_subject": "string",
- "disabled": true,
- "email": "string",
- "entity_list": [
- "string"
], - "first_name": "string",
- "last_login": "string",
- "last_modified": "string",
- "last_name": "string",
- "organization": "string",
- "password": "string",
- "phone": "string",
- "ptz_control": true,
- "session_lifetime_mins": 0,
- "title": "string",
- "username": "string",
- "wall_list": [
- "string"
]
}{- "admin": true,
- "auth_provider": "string",
- "auth_subject": "string",
- "disabled": true,
- "email": "string",
- "entity_list": [
- "string"
], - "first_name": "string",
- "last_login": "string",
- "last_modified": "string",
- "last_name": "string",
- "organization": "string",
- "password": "string",
- "phone": "string",
- "ptz_control": true,
- "session_lifetime_mins": 0,
- "title": "string",
- "username": "string",
- "wall_list": [
- "string"
]
}User login
User login
| grant_type | string Type of grant. Must be 'password'. |
| password | string Password. |
| username | string Username. |
{- "grant_type": "string",
- "password": "string",
- "username": "string"
}{- "access_token": "string",
- "expires_in": 0,
- "token_type": "string",
- "username": "string"
}Adds a new wall configuration
Wall configuration
| description | string Brief description of the wall (e.g., location, purpose, etc.). |
| last_modified | string Date and time the wall configuration was last modified. |
| name | string Unique, alphanumeric wall name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| wall_cols | integer Number of wall columns. |
| wall_rows | integer Number of wall rows. |
{- "description": "string",
- "last_modified": "string",
- "name": "string",
- "wall_cols": 0,
- "wall_rows": 0
}{- "description": "string",
- "last_modified": "string",
- "name": "string",
- "wall_cols": 0,
- "wall_rows": 0
}Updates an existing wall configuration
| name required | string Wall name |
Wall configuration
| description | string Brief description of the wall (e.g., location, purpose, etc.). |
| last_modified | string Date and time the wall configuration was last modified. |
| name | string Unique, alphanumeric wall name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| wall_cols | integer Number of wall columns. |
| wall_rows | integer Number of wall rows. |
{- "description": "string",
- "last_modified": "string",
- "name": "string",
- "wall_cols": 0,
- "wall_rows": 0
}{- "description": "string",
- "last_modified": "string",
- "name": "string",
- "wall_cols": 0,
- "wall_rows": 0
}Adds a new wall display configuration
Wall display configuration
Array of objects (data.CubeDisplayConfig) Cube display configuration(s) for the wall display config. | |
| last_modified | string Date and time the wall display configuration was last modified. |
| name | string Wall display config (wall preset) name. Alphanumeric with spaces, '-', and '_' allowed. |
| wall_name | string The unique, alphanumeric wall name or identifier to which this display config is assigned. |
{- "cube_display_configs": [
- {
- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}
], - "last_modified": "string",
- "name": "string",
- "wall_name": "string"
}{- "cube_display_configs": [
- {
- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}
], - "last_modified": "string",
- "name": "string",
- "wall_name": "string"
}Gets current wall display configurations
[- {
- "cube_display_configs": [
- {
- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}
], - "last_modified": "string",
- "name": "string",
- "wall_name": "string"
}
]Updates an existing wall display configuration
| name required | string Wall display config name |
Wall display configuration
Array of objects (data.CubeDisplayConfig) Cube display configuration(s) for the wall display config. | |
| last_modified | string Date and time the wall display configuration was last modified. |
| name | string Wall display config (wall preset) name. Alphanumeric with spaces, '-', and '_' allowed. |
| wall_name | string The unique, alphanumeric wall name or identifier to which this display config is assigned. |
{- "cube_display_configs": [
- {
- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}
], - "last_modified": "string",
- "name": "string",
- "wall_name": "string"
}{- "cube_display_configs": [
- {
- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}
], - "last_modified": "string",
- "name": "string",
- "wall_name": "string"
}[- {
- "cells": [
- {
- "height_px": 0,
- "input": "string",
- "tour": true,
- "width_px": 0,
- "x_px": 0,
- "y_px": 0
}
], - "height_px": 0,
- "name": "string",
- "screen_height_px": 0,
- "screen_width_px": 0,
- "width_px": 0
}
]Adds a new cube configuration
Cube configuration
object Advanced cube unit configuration parameters. | |
| disabled | boolean Cube unit disabled. When true, all cube unit communications are disabled. |
| host | string Host or IP address of the cube unit. |
| last_modified | string Date and time the cube unit configuration was last modified. |
| max_cube_cols | integer Maximum number of display columns for the cube unit. |
| max_cube_rows | integer Maximum number of display rows for the cube unit. |
| name | string Unique, lowercase, alphanumeric cube unit name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| port | integer HTTP/S port of the cube unit. |
| secret | string Secret key for cube unit authorization. |
| unit_type | string Enum: "standard" "pro" "high_density" UnitType is a hardware descriptor that bounds MaxCubeCols/MaxCubeRows (standard 4x4, pro 6x5, high_density 7x6) and gates merge capability. It is operator-declared config, not part of the live device apply/readback loop (see isAdvancedConfigConsistent), so it lives on the base config alongside the dimensions it constrains rather than in advanced_config. |
| wall_col | string Current one (1) based wall column index. |
| wall_name | string Name of the wall to which this cube unit is assigned. |
| wall_row | string Current one (1) based wall row index. |
{- "advanced_config": {
- "actual_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "actual_display_merge_layout": "",
- "display_mode": "mirror",
- "invert_display": true,
- "maintain_interval_secs": 0,
- "max_dormant_secs": 0,
- "network_activity_window_secs": 0,
- "stream_retry_delay_secs": 0,
- "stream_shutdown_wait_secs": 0,
- "target_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "target_display_merge_layout": ""
}, - "disabled": true,
- "host": "string",
- "last_modified": "string",
- "max_cube_cols": 0,
- "max_cube_rows": 0,
- "name": "string",
- "port": 0,
- "secret": "string",
- "unit_type": "standard",
- "wall_col": "string",
- "wall_name": "string",
- "wall_row": "string"
}{- "advanced_config": {
- "actual_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "actual_display_merge_layout": "",
- "display_mode": "mirror",
- "invert_display": true,
- "maintain_interval_secs": 0,
- "max_dormant_secs": 0,
- "network_activity_window_secs": 0,
- "stream_retry_delay_secs": 0,
- "stream_shutdown_wait_secs": 0,
- "target_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "target_display_merge_layout": ""
}, - "disabled": true,
- "host": "string",
- "last_modified": "string",
- "max_cube_cols": 0,
- "max_cube_rows": 0,
- "name": "string",
- "port": 0,
- "secret": "string",
- "unit_type": "standard",
- "wall_col": "string",
- "wall_name": "string",
- "wall_row": "string"
}[- {
- "advanced_config": {
- "actual_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "actual_display_merge_layout": "",
- "display_mode": "mirror",
- "invert_display": true,
- "maintain_interval_secs": 0,
- "max_dormant_secs": 0,
- "network_activity_window_secs": 0,
- "stream_retry_delay_secs": 0,
- "stream_shutdown_wait_secs": 0,
- "target_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "target_display_merge_layout": ""
}, - "disabled": true,
- "host": "string",
- "last_modified": "string",
- "max_cube_cols": 0,
- "max_cube_rows": 0,
- "name": "string",
- "port": 0,
- "secret": "string",
- "unit_type": "standard",
- "wall_col": "string",
- "wall_name": "string",
- "wall_row": "string"
}
]Updates only the advanced_config subdocument of an existing cube configuration.
| name required | string Cube name |
Advanced configuration
Array of objects (data.ConnectorAssignment) | |
| actual_display_merge_layout | string Enum: "" "horizontal" "vertical" "quad" "", "horizontal", "vertical", "quad" |
| display_mode | string Enum: "mirror" "merge" Display settings |
| invert_display | boolean Whether to invert the display output in mirror mode (rotate 180 degrees) |
| maintain_interval_secs | integer Interval in seconds at which to check each stream connection. |
| max_dormant_secs | integer Maximum number of seconds a given stream connection can be dormant (no data received) before being forcibly reset. |
| network_activity_window_secs | integer Trailing data collection time window in seconds to use in determining if a stream connection is dormant. |
| stream_retry_delay_secs | integer Delay in seconds before retrying after a failed stream connection attempt. |
| stream_shutdown_wait_secs | integer Duration in seconds to wait for stream playback process to shut down. |
Array of objects (data.ConnectorAssignment) | |
| target_display_merge_layout | string Enum: "" "horizontal" "vertical" "quad" "", "horizontal", "vertical", "quad" |
{- "actual_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "actual_display_merge_layout": "",
- "display_mode": "mirror",
- "invert_display": true,
- "maintain_interval_secs": 0,
- "max_dormant_secs": 0,
- "network_activity_window_secs": 0,
- "stream_retry_delay_secs": 0,
- "stream_shutdown_wait_secs": 0,
- "target_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "target_display_merge_layout": ""
}{- "advanced_config": {
- "actual_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "actual_display_merge_layout": "",
- "display_mode": "mirror",
- "invert_display": true,
- "maintain_interval_secs": 0,
- "max_dormant_secs": 0,
- "network_activity_window_secs": 0,
- "stream_retry_delay_secs": 0,
- "stream_shutdown_wait_secs": 0,
- "target_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "target_display_merge_layout": ""
}, - "disabled": true,
- "host": "string",
- "last_modified": "string",
- "max_cube_cols": 0,
- "max_cube_rows": 0,
- "name": "string",
- "port": 0,
- "secret": "string",
- "unit_type": "standard",
- "wall_col": "string",
- "wall_name": "string",
- "wall_row": "string"
}Updates the base fields of an existing cube configuration; the advanced_config subdocument is preserved.
| name required | string Cube name |
Cube configuration (base fields only; advanced_config ignored)
object Advanced cube unit configuration parameters. | |
| disabled | boolean Cube unit disabled. When true, all cube unit communications are disabled. |
| host | string Host or IP address of the cube unit. |
| last_modified | string Date and time the cube unit configuration was last modified. |
| max_cube_cols | integer Maximum number of display columns for the cube unit. |
| max_cube_rows | integer Maximum number of display rows for the cube unit. |
| name | string Unique, lowercase, alphanumeric cube unit name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| port | integer HTTP/S port of the cube unit. |
| secret | string Secret key for cube unit authorization. |
| unit_type | string Enum: "standard" "pro" "high_density" UnitType is a hardware descriptor that bounds MaxCubeCols/MaxCubeRows (standard 4x4, pro 6x5, high_density 7x6) and gates merge capability. It is operator-declared config, not part of the live device apply/readback loop (see isAdvancedConfigConsistent), so it lives on the base config alongside the dimensions it constrains rather than in advanced_config. |
| wall_col | string Current one (1) based wall column index. |
| wall_name | string Name of the wall to which this cube unit is assigned. |
| wall_row | string Current one (1) based wall row index. |
{- "advanced_config": {
- "actual_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "actual_display_merge_layout": "",
- "display_mode": "mirror",
- "invert_display": true,
- "maintain_interval_secs": 0,
- "max_dormant_secs": 0,
- "network_activity_window_secs": 0,
- "stream_retry_delay_secs": 0,
- "stream_shutdown_wait_secs": 0,
- "target_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "target_display_merge_layout": ""
}, - "disabled": true,
- "host": "string",
- "last_modified": "string",
- "max_cube_cols": 0,
- "max_cube_rows": 0,
- "name": "string",
- "port": 0,
- "secret": "string",
- "unit_type": "standard",
- "wall_col": "string",
- "wall_name": "string",
- "wall_row": "string"
}{- "advanced_config": {
- "actual_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "actual_display_merge_layout": "",
- "display_mode": "mirror",
- "invert_display": true,
- "maintain_interval_secs": 0,
- "max_dormant_secs": 0,
- "network_activity_window_secs": 0,
- "stream_retry_delay_secs": 0,
- "stream_shutdown_wait_secs": 0,
- "target_display_merge_assignments": [
- {
- "column": 0,
- "connector_name": "string",
- "invert_display": true,
- "row": 0
}
], - "target_display_merge_layout": ""
}, - "disabled": true,
- "host": "string",
- "last_modified": "string",
- "max_cube_cols": 0,
- "max_cube_rows": 0,
- "name": "string",
- "port": 0,
- "secret": "string",
- "unit_type": "standard",
- "wall_col": "string",
- "wall_name": "string",
- "wall_row": "string"
}Gets current cube display configurations
[- {
- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}
]Sets cube display configuration
Cube display configuration
| cube_cols | integer Current number of cube display columns for the cube unit. |
| cube_rows | integer Current number of cube display rows for the cube unit. |
Array of objects (data.CubeStreamConfig) Current cube stream configuration(s) for the cube unit. | |
| last_modified | string Date and time the cube display configuration was last modified. |
Array of objects (data.MergedCell) Merged rectangles of the grid, independent of what occupies them. | |
| name | string Unique, lowercase, alphanumeric cube unit name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
{- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}{- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_configs": [
- {
- "cube_col": 0,
- "cube_row": 0,
- "name": "string",
- "tour": true,
- "web_page": true
}
], - "last_modified": "string",
- "merged_cells": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0
}
], - "name": "string"
}[- {
- "active_resolution": "string",
- "cube_cols": 0,
- "cube_rows": 0,
- "cube_stream_states": [
- {
- "cube_col": 0,
- "cube_col_span": 0,
- "cube_row": 0,
- "cube_row_span": 0,
- "dwell_time_secs": 0,
- "height": 0,
- "is_playing": true,
- "is_playing_index": 0,
- "is_starting": true,
- "position_x": 0,
- "position_y": 0,
- "stream_configs": [
- {
- "name": "string",
- "source_url": "string",
- "transport": "default"
}
], - "suspend_consec_failures": 0,
- "suspended_check_interval_secs": 0,
- "width": 0
}
], - "firmware_version": "string",
- "last_updated": "string",
- "name": "string",
- "status": "online",
- "status_message": "string"
}
]Adds a new stream configuration
Stream configuration
| cast_token | string CastToken authenticates the cast pipeline for XCAST-source streams: the publisher presents it on /publish/ and players receive it appended to the SourceUrl for /stream/. Server-owned: minted at registration, never round-tripped by callers (an empty incoming value on update means "keep"), and scrubbed from non-admin reads except the cast account's. |
| config_source | string Source (identifier) of the stream configuration. |
| description | string Brief description of stream or stream source (camera name, camera location, etc.). |
| disabled | boolean Disable use of stream. |
| entity | string Associated entity for the stream. Copied from the camera when the stream has one; streams without a camera (XCast casts) carry their own. |
| last_modified | string Date and time the stream configuration was last modified. |
| name | string Unique, alphanumeric stream name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| operations_center | string Associated operations center for the stream. |
| source_url | string Source URL for the stream. Must be a valid URL with a supported protocol ("udp", "rtsp", "rtsps", "rtmp", "rtmps", "http", "https"). |
| transport | string Enum: "default" "tcp" "udp" "udp_multicast" "http" "https" Transport protocol of the source stream. Allowed values are "default", "tcp", "udp", "udp_multicast", "http" and "https". |
| xflow_api_host | string Optional XFlow API host for camera control (PTZ) in Display Manager web UI. Per publishing manager, not per stream. |
| xflow_auth_enabled | boolean Optional XFlow authentication enabled for the HTTP/S (WebRTC and HLS) streams. |
| xflow_camera | string Optional XFlow camera identifier associated with the stream. |
| xflow_camera_control_available | boolean Optional XFlow camera control (PTZ) available for the stream. |
| xflow_camera_county | string Optional county the camera is in, for the camera list. |
| xflow_camera_description | string Optional description of the camera, distinct from the stream's own description. |
| xflow_camera_latitude | number Optional latitude of the camera's location. |
| xflow_camera_longitude | number Optional longitude of the camera's location. |
| xflow_camera_roadway | string Optional roadway the camera watches, for the camera list. |
| xflow_camera_status | string Enum: "" "online" "offline" "unknown" "disabled" Optional camera status: online, offline, unknown (no control protocol) or disabled (control disabled). |
| xflow_hls_url | string Optional XFlow HLS URL for the stream, for playback in Display Manager web UI. |
| xflow_ll_hls_url | string Optional XFlow Low-Latency HLS URL for the stream, for playback in Display Manager web UI. |
| xflow_stream_status | string Enum: "" "online" "offline" "unknown" "disabled" Optional XFlow stream status for the stream. |
| xflow_wrtc_url | string Optional XFlow WebRTC signaling server URL for the stream, for playback in Display Manager web UI. |
{- "cast_token": "string",
- "config_source": "string",
- "description": "string",
- "disabled": true,
- "entity": "string",
- "last_modified": "string",
- "name": "string",
- "operations_center": "string",
- "source_url": "string",
- "transport": "default",
- "xflow_api_host": "string",
- "xflow_auth_enabled": true,
- "xflow_camera": "string",
- "xflow_camera_control_available": true,
- "xflow_camera_county": "string",
- "xflow_camera_description": "string",
- "xflow_camera_latitude": 0,
- "xflow_camera_longitude": 0,
- "xflow_camera_roadway": "string",
- "xflow_camera_status": "",
- "xflow_hls_url": "string",
- "xflow_ll_hls_url": "string",
- "xflow_stream_status": "",
- "xflow_wrtc_url": "string"
}{- "cast_token": "string",
- "config_source": "string",
- "description": "string",
- "disabled": true,
- "entity": "string",
- "last_modified": "string",
- "name": "string",
- "operations_center": "string",
- "source_url": "string",
- "transport": "default",
- "xflow_api_host": "string",
- "xflow_auth_enabled": true,
- "xflow_camera": "string",
- "xflow_camera_control_available": true,
- "xflow_camera_county": "string",
- "xflow_camera_description": "string",
- "xflow_camera_latitude": 0,
- "xflow_camera_longitude": 0,
- "xflow_camera_roadway": "string",
- "xflow_camera_status": "",
- "xflow_hls_url": "string",
- "xflow_ll_hls_url": "string",
- "xflow_stream_status": "",
- "xflow_wrtc_url": "string"
}Gets the stream configuration
| name required | string Stream name |
{- "cast_token": "string",
- "config_source": "string",
- "description": "string",
- "disabled": true,
- "entity": "string",
- "last_modified": "string",
- "name": "string",
- "operations_center": "string",
- "source_url": "string",
- "transport": "default",
- "xflow_api_host": "string",
- "xflow_auth_enabled": true,
- "xflow_camera": "string",
- "xflow_camera_control_available": true,
- "xflow_camera_county": "string",
- "xflow_camera_description": "string",
- "xflow_camera_latitude": 0,
- "xflow_camera_longitude": 0,
- "xflow_camera_roadway": "string",
- "xflow_camera_status": "",
- "xflow_hls_url": "string",
- "xflow_ll_hls_url": "string",
- "xflow_stream_status": "",
- "xflow_wrtc_url": "string"
}Gets the list of stream configurations
[- {
- "cast_token": "string",
- "config_source": "string",
- "description": "string",
- "disabled": true,
- "entity": "string",
- "last_modified": "string",
- "name": "string",
- "operations_center": "string",
- "source_url": "string",
- "transport": "default",
- "xflow_api_host": "string",
- "xflow_auth_enabled": true,
- "xflow_camera": "string",
- "xflow_camera_control_available": true,
- "xflow_camera_county": "string",
- "xflow_camera_description": "string",
- "xflow_camera_latitude": 0,
- "xflow_camera_longitude": 0,
- "xflow_camera_roadway": "string",
- "xflow_camera_status": "",
- "xflow_hls_url": "string",
- "xflow_ll_hls_url": "string",
- "xflow_stream_status": "",
- "xflow_wrtc_url": "string"
}
]Gets the list of stream configurations
[- {
- "name": "string",
- "xflow_camera_control": {
- "api_host": "string",
- "camera": "string",
- "limited_control": true,
- "password": "string",
- "username": "string"
}, - "xflow_camera_control_url_with_params": "string",
- "xflow_drag_camera_control_url_with_params": "string",
- "xflow_hls_url_with_params": "string",
- "xflow_ll_hls_url_with_params": "string",
- "xflow_wrtc_url_with_params": "string"
}
]Updates an existing stream configuration
| name required | string Stream name |
Stream configuration
| cast_token | string CastToken authenticates the cast pipeline for XCAST-source streams: the publisher presents it on /publish/ and players receive it appended to the SourceUrl for /stream/. Server-owned: minted at registration, never round-tripped by callers (an empty incoming value on update means "keep"), and scrubbed from non-admin reads except the cast account's. |
| config_source | string Source (identifier) of the stream configuration. |
| description | string Brief description of stream or stream source (camera name, camera location, etc.). |
| disabled | boolean Disable use of stream. |
| entity | string Associated entity for the stream. Copied from the camera when the stream has one; streams without a camera (XCast casts) carry their own. |
| last_modified | string Date and time the stream configuration was last modified. |
| name | string Unique, alphanumeric stream name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| operations_center | string Associated operations center for the stream. |
| source_url | string Source URL for the stream. Must be a valid URL with a supported protocol ("udp", "rtsp", "rtsps", "rtmp", "rtmps", "http", "https"). |
| transport | string Enum: "default" "tcp" "udp" "udp_multicast" "http" "https" Transport protocol of the source stream. Allowed values are "default", "tcp", "udp", "udp_multicast", "http" and "https". |
| xflow_api_host | string Optional XFlow API host for camera control (PTZ) in Display Manager web UI. Per publishing manager, not per stream. |
| xflow_auth_enabled | boolean Optional XFlow authentication enabled for the HTTP/S (WebRTC and HLS) streams. |
| xflow_camera | string Optional XFlow camera identifier associated with the stream. |
| xflow_camera_control_available | boolean Optional XFlow camera control (PTZ) available for the stream. |
| xflow_camera_county | string Optional county the camera is in, for the camera list. |
| xflow_camera_description | string Optional description of the camera, distinct from the stream's own description. |
| xflow_camera_latitude | number Optional latitude of the camera's location. |
| xflow_camera_longitude | number Optional longitude of the camera's location. |
| xflow_camera_roadway | string Optional roadway the camera watches, for the camera list. |
| xflow_camera_status | string Enum: "" "online" "offline" "unknown" "disabled" Optional camera status: online, offline, unknown (no control protocol) or disabled (control disabled). |
| xflow_hls_url | string Optional XFlow HLS URL for the stream, for playback in Display Manager web UI. |
| xflow_ll_hls_url | string Optional XFlow Low-Latency HLS URL for the stream, for playback in Display Manager web UI. |
| xflow_stream_status | string Enum: "" "online" "offline" "unknown" "disabled" Optional XFlow stream status for the stream. |
| xflow_wrtc_url | string Optional XFlow WebRTC signaling server URL for the stream, for playback in Display Manager web UI. |
{- "cast_token": "string",
- "config_source": "string",
- "description": "string",
- "disabled": true,
- "entity": "string",
- "last_modified": "string",
- "name": "string",
- "operations_center": "string",
- "source_url": "string",
- "transport": "default",
- "xflow_api_host": "string",
- "xflow_auth_enabled": true,
- "xflow_camera": "string",
- "xflow_camera_control_available": true,
- "xflow_camera_county": "string",
- "xflow_camera_description": "string",
- "xflow_camera_latitude": 0,
- "xflow_camera_longitude": 0,
- "xflow_camera_roadway": "string",
- "xflow_camera_status": "",
- "xflow_hls_url": "string",
- "xflow_ll_hls_url": "string",
- "xflow_stream_status": "",
- "xflow_wrtc_url": "string"
}{- "cast_token": "string",
- "config_source": "string",
- "description": "string",
- "disabled": true,
- "entity": "string",
- "last_modified": "string",
- "name": "string",
- "operations_center": "string",
- "source_url": "string",
- "transport": "default",
- "xflow_api_host": "string",
- "xflow_auth_enabled": true,
- "xflow_camera": "string",
- "xflow_camera_control_available": true,
- "xflow_camera_county": "string",
- "xflow_camera_description": "string",
- "xflow_camera_latitude": 0,
- "xflow_camera_longitude": 0,
- "xflow_camera_roadway": "string",
- "xflow_camera_status": "",
- "xflow_hls_url": "string",
- "xflow_ll_hls_url": "string",
- "xflow_stream_status": "",
- "xflow_wrtc_url": "string"
}Adds a new tour configuration
Tour configuration
| description | string Brief description of the tour (e.g., purpose, content, etc.). |
| dwell_time_secs | integer Playback dwell time in seconds for each stream in the tour. |
| last_modified | string Date and time the tour configuration was last modified. |
| name | string Unique, alphanumeric tour name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| suspend_consec_failures | integer Number of consecutive failures before a tour stream is temporarily suspended (removed from tour). |
| suspended_check_interval_secs | integer Interval in seconds at which to check if a suspended tour stream is available. |
| tour_streams | Array of strings Ordered list of streams included in tour. |
{- "description": "string",
- "dwell_time_secs": 0,
- "last_modified": "string",
- "name": "string",
- "suspend_consec_failures": 0,
- "suspended_check_interval_secs": 0,
- "tour_streams": [
- "string"
]
}{- "description": "string",
- "dwell_time_secs": 0,
- "last_modified": "string",
- "name": "string",
- "suspend_consec_failures": 0,
- "suspended_check_interval_secs": 0,
- "tour_streams": [
- "string"
]
}[- {
- "description": "string",
- "dwell_time_secs": 0,
- "last_modified": "string",
- "name": "string",
- "suspend_consec_failures": 0,
- "suspended_check_interval_secs": 0,
- "tour_streams": [
- "string"
]
}
]Updates an existing tour configuration
| name required | string Tour name |
Tour configuration
| description | string Brief description of the tour (e.g., purpose, content, etc.). |
| dwell_time_secs | integer Playback dwell time in seconds for each stream in the tour. |
| last_modified | string Date and time the tour configuration was last modified. |
| name | string Unique, alphanumeric tour name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
| suspend_consec_failures | integer Number of consecutive failures before a tour stream is temporarily suspended (removed from tour). |
| suspended_check_interval_secs | integer Interval in seconds at which to check if a suspended tour stream is available. |
| tour_streams | Array of strings Ordered list of streams included in tour. |
{- "description": "string",
- "dwell_time_secs": 0,
- "last_modified": "string",
- "name": "string",
- "suspend_consec_failures": 0,
- "suspended_check_interval_secs": 0,
- "tour_streams": [
- "string"
]
}{- "description": "string",
- "dwell_time_secs": 0,
- "last_modified": "string",
- "name": "string",
- "suspend_consec_failures": 0,
- "suspended_check_interval_secs": 0,
- "tour_streams": [
- "string"
]
}Gets the user login history list
User Login History Query
| from_datetime | string Optional. Filter for requests that occurred at or after this time. |
| max_count | integer Required. Maximum number of results to return. |
| to_datetime | string Optional. Filter for requests that occurred at or before this time. |
| usernames | Array of strings Optional. Filter by one or more usernames. Empty slice means all users. |
{- "from_datetime": "string",
- "max_count": 0,
- "to_datetime": "string",
- "usernames": [
- "string"
]
}{- "message": "string",
- "total_user_login_history_count": 0,
- "user_login_history_list": [
- {
- "admin": true,
- "client_address": "string",
- "loginId": "string",
- "login_time": "string",
- "session_expiration": "string",
- "session_id": "string",
- "username": "string"
}
]
}Approves a pending request, creating a user with the admin-assigned access and initial password, and emails the requester.
{- "account_request": {
- "created_at": "string",
- "desired_username": "string",
- "email": "string",
- "first_name": "string",
- "id": "string",
- "justification": "string",
- "last_name": "string",
- "organization": "string",
- "phone": "string",
- "reason": "string",
- "reviewed_at": "string",
- "reviewed_by": "string",
- "source_ip": "string",
- "status": "string",
- "title": "string"
}, - "message": "string"
}Deletes a reviewed (approved/rejected) account request record. Pending requests cannot be deleted — they must be approved or rejected first. Deleting an approved request does not affect the already-created user.
| id required | string Account request ID |
{- "property1": "string",
- "property2": "string"
}Lists account requests, optionally filtered by status (pending|approved|rejected).
{- "account_request_count": 0,
- "account_requests": [
- {
- "created_at": "string",
- "desired_username": "string",
- "email": "string",
- "first_name": "string",
- "id": "string",
- "justification": "string",
- "last_name": "string",
- "organization": "string",
- "phone": "string",
- "reason": "string",
- "reviewed_at": "string",
- "reviewed_by": "string",
- "source_ip": "string",
- "status": "string",
- "title": "string"
}
], - "message": "string"
}Rejects a pending request (with optional reason) and emails the requester.
{- "account_request": {
- "created_at": "string",
- "desired_username": "string",
- "email": "string",
- "first_name": "string",
- "id": "string",
- "justification": "string",
- "last_name": "string",
- "organization": "string",
- "phone": "string",
- "reason": "string",
- "reviewed_at": "string",
- "reviewed_by": "string",
- "source_ip": "string",
- "status": "string",
- "title": "string"
}, - "message": "string"
}Adds a dynamic virtual wall preset. Global presets require an administrator.
Dynamic virtual wall preset
Array of objects (data.DynamicVirtualWallPresetCell) Non-empty top-level grid cells. | |
| columns | integer Top-level grid width. |
| global | boolean Whether the preset is global (available to all users) or user-specific. |
| last_modified | string Date and time the preset was last modified. |
| name | string Name of the preset. |
| rows | integer Top-level grid height. |
| use_hls_only | boolean Only use HLS for playback. |
{- "cells": [
- {
- "column": 0,
- "node": {
- "children": [
- { }
], - "input": {
- "isTour": true,
- "name": "string"
}, - "tour": {
- "dwell_secs": 0,
- "inputs": [
- {
- "isTour": true,
- "name": "string"
}
]
}
}, - "row": 0
}
], - "columns": 0,
- "global": true,
- "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}{- "cells": [
- {
- "column": 0,
- "node": {
- "children": [
- { }
], - "input": {
- "isTour": true,
- "name": "string"
}, - "tour": {
- "dwell_secs": 0,
- "inputs": [
- {
- "isTour": true,
- "name": "string"
}
]
}
}, - "row": 0
}
], - "columns": 0,
- "global": true,
- "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}Adds a virtual wall preset. Global presets require an administrator.
Virtual wall preset
Array of objects (data.VirtualWallPresetCell) Cells of the preset grid, where merged. | |
| columns | integer Columns of the preset grid. |
| global | boolean Whether the preset is global (available to all users) or user-specific. |
Array of objects (data.VirtualWallPresetInput) Inputs placed in the preset. | |
| last_modified | string Date and time the preset was last modified. |
| name | string Name of the preset. |
| rows | integer Rows of the preset grid. |
| use_hls_only | boolean Only use HLS for preset playback. |
{- "cells": [
- {
- "column": 0,
- "columnSpan": 0,
- "row": 0,
- "rowSpan": 0
}
], - "columns": 0,
- "global": true,
- "input_list": [
- {
- "column": 0,
- "name": "string",
- "row": 0,
- "tour": true
}
], - "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}{- "cells": [
- {
- "column": 0,
- "columnSpan": 0,
- "row": 0,
- "rowSpan": 0
}
], - "columns": 0,
- "global": true,
- "input_list": [
- {
- "column": 0,
- "name": "string",
- "row": 0,
- "tour": true
}
], - "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}Deletes a dynamic virtual wall preset. Global presets require an administrator.
| name required | string Dynamic virtual wall preset name |
| global required | string Whether the preset is global |
"string"Deletes a virtual wall preset. Global presets require an administrator.
| name required | string Virtual wall preset name |
| global required | string Whether the preset is global |
"string"Gets the global dynamic virtual wall presets plus the caller's own
[- {
- "cells": [
- {
- "column": 0,
- "node": {
- "children": [
- { }
], - "input": {
- "isTour": true,
- "name": "string"
}, - "tour": {
- "dwell_secs": 0,
- "inputs": [
- {
- "isTour": true,
- "name": "string"
}
]
}
}, - "row": 0
}
], - "columns": 0,
- "global": true,
- "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}
]Gets the global virtual wall presets plus the caller's own
[- {
- "cells": [
- {
- "column": 0,
- "columnSpan": 0,
- "row": 0,
- "rowSpan": 0
}
], - "columns": 0,
- "global": true,
- "input_list": [
- {
- "column": 0,
- "name": "string",
- "row": 0,
- "tour": true
}
], - "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}
]Updates a dynamic virtual wall preset. Global presets require an administrator.
| name required | string Dynamic virtual wall preset name |
Dynamic virtual wall preset
Array of objects (data.DynamicVirtualWallPresetCell) Non-empty top-level grid cells. | |
| columns | integer Top-level grid width. |
| global | boolean Whether the preset is global (available to all users) or user-specific. |
| last_modified | string Date and time the preset was last modified. |
| name | string Name of the preset. |
| rows | integer Top-level grid height. |
| use_hls_only | boolean Only use HLS for playback. |
{- "cells": [
- {
- "column": 0,
- "node": {
- "children": [
- { }
], - "input": {
- "isTour": true,
- "name": "string"
}, - "tour": {
- "dwell_secs": 0,
- "inputs": [
- {
- "isTour": true,
- "name": "string"
}
]
}
}, - "row": 0
}
], - "columns": 0,
- "global": true,
- "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}{- "cells": [
- {
- "column": 0,
- "node": {
- "children": [
- { }
], - "input": {
- "isTour": true,
- "name": "string"
}, - "tour": {
- "dwell_secs": 0,
- "inputs": [
- {
- "isTour": true,
- "name": "string"
}
]
}
}, - "row": 0
}
], - "columns": 0,
- "global": true,
- "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}Updates a virtual wall preset. Global presets require an administrator.
| name required | string Virtual wall preset name |
Virtual wall preset
Array of objects (data.VirtualWallPresetCell) Cells of the preset grid, where merged. | |
| columns | integer Columns of the preset grid. |
| global | boolean Whether the preset is global (available to all users) or user-specific. |
Array of objects (data.VirtualWallPresetInput) Inputs placed in the preset. | |
| last_modified | string Date and time the preset was last modified. |
| name | string Name of the preset. |
| rows | integer Rows of the preset grid. |
| use_hls_only | boolean Only use HLS for preset playback. |
{- "cells": [
- {
- "column": 0,
- "columnSpan": 0,
- "row": 0,
- "rowSpan": 0
}
], - "columns": 0,
- "global": true,
- "input_list": [
- {
- "column": 0,
- "name": "string",
- "row": 0,
- "tour": true
}
], - "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}{- "cells": [
- {
- "column": 0,
- "columnSpan": 0,
- "row": 0,
- "rowSpan": 0
}
], - "columns": 0,
- "global": true,
- "input_list": [
- {
- "column": 0,
- "name": "string",
- "row": 0,
- "tour": true
}
], - "last_modified": "string",
- "name": "string",
- "rows": 0,
- "use_hls_only": true
}Adds a new web page configuration
Web page configuration
| browser_reload_secs | integer Periodic reload interval in seconds (0 = disabled). |
| browser_url | string URL to load in the browser cell. |
| description | string Brief description of the web page (e.g., purpose, content, etc.). |
| last_modified | string Date and time the web page configuration was last modified. |
| name | string Unique, alphanumeric web page name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
{- "browser_reload_secs": 0,
- "browser_url": "string",
- "description": "string",
- "last_modified": "string",
- "name": "string"
}{- "browser_reload_secs": 0,
- "browser_url": "string",
- "description": "string",
- "last_modified": "string",
- "name": "string"
}Updates an existing web page configuration
| name required | string Web page name |
Web page configuration
| browser_reload_secs | integer Periodic reload interval in seconds (0 = disabled). |
| browser_url | string URL to load in the browser cell. |
| description | string Brief description of the web page (e.g., purpose, content, etc.). |
| last_modified | string Date and time the web page configuration was last modified. |
| name | string Unique, alphanumeric web page name or identifier. No spaces or special characters allowed (except for '-' and '_'). |
{- "browser_reload_secs": 0,
- "browser_url": "string",
- "description": "string",
- "last_modified": "string",
- "name": "string"
}{- "browser_reload_secs": 0,
- "browser_url": "string",
- "description": "string",
- "last_modified": "string",
- "name": "string"
}Reports the certificate in force - subject, expiry and fingerprint. Never returns the private key.
{- "changed": true,
- "fingerprint": "string",
- "message": "string",
- "not_after": "string",
- "subject": "string"
}Stores a PEM certificate chain and private key and applies it to both of this service's listeners - the API and XCast - without a restart. Posting the certificate already in force changes nothing.
PEM chain and private key
| certificate | string PEM chain, leaf first, intermediates appended |
| private_key | string PEM, unencrypted (a passphrase-protected key will not load) |
{- "certificate": "string",
- "private_key": "string"
}{- "changed": true,
- "fingerprint": "string",
- "message": "string",
- "not_after": "string",
- "subject": "string"
}Sends a password-reset link to the account's email. Always returns a generic success (no account enumeration). Available only when the deployment enables the feature.
{- "property1": "string",
- "property2": "string"
}