XFlow Platform API (3.2.5)

Download OpenAPI specification:

XFlow Platform API documentation

Users

Get user list

Gets the list of users

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "users": [
    ]
}

Add user

Adds a new user

Authorizations:
OAuth2Password
Request Body schema: application/json
required

User

Array of objects (data.CameraGroupPermission)

List of camera group permissions for the user.

email
string

Email of the user.

first_name
string

First name of the user.

last_name
string

Last name of the user.

last_updated
string

Date and time the user was last updated.

organization
string

Organization of the user.

password
string

Password of the user.

phone
string

Phone number of the user.

role
string
Enum: "admin" "super_user" "user" "api"

Role of the user. Allowed values: 'admin', 'ptz'.

title
string

Title of the user.

username
string

Username of the user.

Responses

Request samples

Content type
application/json
{
  • "camera_group_permissions": [
    ],
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "last_updated": "string",
  • "organization": "string",
  • "password": "string",
  • "phone": "string",
  • "role": "admin",
  • "title": "string",
  • "username": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "user": {
    }
}

Add and login new admin user

Adds and logs in new admin user

Request Body schema: application/json
required

Login

grant_type
string

Type of grant. Must be 'password'.

key
string

XFlow instance key provided by Optima DTS.

password
string

Password of the user.

username
string

Username of the user.

Responses

Request samples

Content type
application/json
{
  • "grant_type": "string",
  • "key": "string",
  • "password": "string",
  • "username": "string"
}

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "expires_in": 0,
  • "message": "string",
  • "token_type": "string",
  • "userId": "string"
}

Delete user

Deletes the user

Authorizations:
OAuth2Password
path Parameters
username
required
string

Username

Responses

Response samples

Content type
application/json
"string"

Login user

Logs in the user using OAuth2 password flow. Expects form data: username, password, grant_type, or data.LoginRequest JSON object body.

Request Body schema: application/x-www-form-urlencoded
username
string

Username

password
string

Password

grant_type
string

OAuth2 grant type 'password'

Responses

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "expires_in": 0,
  • "message": "string",
  • "token_type": "string",
  • "userId": "string"
}

Update user

Updates a user

Authorizations:
OAuth2Password
path Parameters
username
required
string

Username

Request Body schema: application/json
required

User

Array of objects (data.CameraGroupPermission)

List of camera group permissions for the user.

email
string

Email of the user.

first_name
string

First name of the user.

last_name
string

Last name of the user.

last_updated
string

Date and time the user was last updated.

organization
string

Organization of the user.

password
string

Password of the user.

phone
string

Phone number of the user.

role
string
Enum: "admin" "super_user" "user" "api"

Role of the user. Allowed values: 'admin', 'ptz'.

title
string

Title of the user.

username
string

Username of the user.

Responses

Request samples

Content type
application/json
{
  • "camera_group_permissions": [
    ],
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "last_updated": "string",
  • "organization": "string",
  • "password": "string",
  • "phone": "string",
  • "role": "admin",
  • "title": "string",
  • "username": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "user": {
    }
}

Cluster Configuration

Get cluster configuration

Gets current cluster configuration

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "clusterConfig": {
    },
  • "message": "string"
}

Set cluster configuration

Sets the current cluster configuration

Authorizations:
OAuth2Password
Request Body schema: application/json
required

Cluster configuration

Array of objects (data.OriginListItem)

List of allowed HTTP origins / referers.

auto_blacklist_duration_hours
integer

Duration in hours for which a client IP is automatically blacklisted. A value of 0 results in the client IP being blacklisted indefinitely (until manually removed from the blacklist).

auto_blacklist_hls
boolean

Enable the automatic blacklisting of client IPs that concurrently accessing more than auto_blacklist_hls_max_connections different streams.

auto_blacklist_hls_max_connections
integer

Maximum number of unique HLS streams that can be concurrently accessed before a given client IP is automatically blacklisted.

Array of objects (data.IpListItem)

IP exemptions from automatic blacklisting. If set to null, no IPs are exempted from automatic blacklisting.

auto_blacklist_webrtc
boolean

Enable automatic blacklisting of client IPs concurrently accessing more than auto_blacklist_webrtc_max_connections unique WebRTC streams.

auto_blacklist_webrtc_max_connections
integer

Maximum number of unique WebRTC streams that can be concurrently accessed before a given client IP is automatically blacklisted.

enforce_allowed_origins
boolean

Reject HLS and WebRTC video requests from origins not included in the allowed_origins list.

exempt_mobile_devices
boolean

Bypass auth token and origin validation for HLS and WebRTC video requests from mobile devices.

firewall_integration
boolean

Enable streaming engine host (server) firewall rules management.

hls_mediaPlaylistName
string

Name of the HLS media playlist (optional). Default value is "xflow.m3u8".

hls_segmentCount
integer

Number of segments to include in HLS playlist. Minimum allowed value is 3.

hls_segmentDuration
integer

Duration of each segment in HLS playlist (in seconds). Minimum allowed value is 1.

Array of objects (data.IpListItem)

IP blacklist. If empty, no IPs are blacklisted for video access.

last_updated
string

Date and time the cluster configuration was last updated.

lb_disabled_persistence_threshold_mins
integer

Load balancer disabled persistence threshold in minutes. Minimum allowed value is 1.

lb_evalutaion_period_mins
integer

Load balancer evaluation period in minutes. Minimum allowed value is 1.

lb_failover_persistence_threshold_mins
integer

Load balancer failover persistence threshold in minutes. Minimum allowed value is 1.

lb_max_per_period_reassignment_count
integer

Load balancer maximum per evaluation period reassignment count. Maximum per evaluation period stream reassignment count. After reassigning the maximum period reassignment count, XFlow will wait the load balancer evaluation period, then reassess the availability of servers for additional reassignments. Minimum allowed value is 0 (no reassignments).

lb_overloaded_persistence_threshold_mins
integer

Load balancer overloaded persistence threshold in minutes. Minimum allowed value is 1.

lb_server_available_threshold_pct
integer

Load balancer server available threshold percentage. The resource utilization threshold below which the server is considered to be available for stream reassignment. Allowed range is 0 to 90. The available threshold percentage must be at least 5% less than the overloaded threshold percentage.

lb_server_overloaded_threshold_pct
integer

Load balancer server overloaded threshold percentage. The resource utilization threshold above which the server is considered to be overloaded. Allowed range is 30 to 100. The overloaded threshold percentage must be at least 5 percent greater than the available threshold percentage.

Array of objects (data.IpListItem)

RTMP IP whitelist.

rtmp_open_access
boolean

Enable RTMP open access (unsecured).

Array of objects (data.IpListItem)

RTSP IP whitelist.

rtsp_open_access
boolean

Enable RTSP open access (unsecured).

Array of objects (data.TokenListItem)

Shared auth token list.

snaps_host
string

IP address or hostname of server hosting Snaps service.

snaps_integration
boolean

Enable integration with Snaps service (for snapshot collection, processing, and publishing).

snaps_port
integer

Snaps service API port number.

snaps_secret
string

Snaps service API shared secret.

snaps_use_https
boolean

Use HTTPS to access Snaps service API.

Array of objects (data.IpListItem)

SRT IP whitelist.

srt_open_access
boolean

Enable SRT open access (unsecured).

Array of objects (data.IpListItem)

Trusted proxy list. If empty, no proxies are trusted for video access.

webrtc_player_dns
string

DNS (URL) to be used by the built-in WebRTC player. Default value is "https://dns.google/resolve".

xcube_host
string

IP address or hostname of server hosting XCube Display Manager.

xcube_integration
boolean

Enable integration with XCube Display Manager (to provide / sync output stream access information).

xcube_password
string

XCube Display Manager service API password.

xcube_port
integer

XCube Display Manager service API port number.

xcube_source_id
string

XCube Display Manager config source identifier.

xcube_use_https
boolean

Use HTTPS to access XCube Display Manager service API.

xcube_use_source_id_as_stream_prefix
boolean

Use config source identifier as stream prefix. If true, the stream prefix will be set to "-".

xcube_username
string

XCube Display Manager service API username.

Responses

Request samples

Content type
application/json
{
  • "allowed_origins": [
    ],
  • "auto_blacklist_duration_hours": 0,
  • "auto_blacklist_hls": true,
  • "auto_blacklist_hls_max_connections": 0,
  • "auto_blacklist_ip_exemptions": [
    ],
  • "auto_blacklist_webrtc": true,
  • "auto_blacklist_webrtc_max_connections": 0,
  • "enforce_allowed_origins": true,
  • "exempt_mobile_devices": true,
  • "firewall_integration": true,
  • "hls_mediaPlaylistName": "string",
  • "hls_segmentCount": 0,
  • "hls_segmentDuration": 0,
  • "ip_blacklist": [
    ],
  • "last_updated": "string",
  • "lb_disabled_persistence_threshold_mins": 0,
  • "lb_evalutaion_period_mins": 0,
  • "lb_failover_persistence_threshold_mins": 0,
  • "lb_max_per_period_reassignment_count": 0,
  • "lb_overloaded_persistence_threshold_mins": 0,
  • "lb_server_available_threshold_pct": 0,
  • "lb_server_overloaded_threshold_pct": 0,
  • "rtmp_ip_whitelist": [
    ],
  • "rtmp_open_access": true,
  • "rtsp_ip_whitelist": [
    ],
  • "rtsp_open_access": true,
  • "shared_auth_tokens": [
    ],
  • "snaps_host": "string",
  • "snaps_integration": true,
  • "snaps_port": 0,
  • "snaps_secret": "string",
  • "snaps_use_https": true,
  • "srt_ip_whitelist": [
    ],
  • "srt_open_access": true,
  • "trusted_proxies": [
    ],
  • "webrtc_player_dns": "string",
  • "xcube_host": "string",
  • "xcube_integration": true,
  • "xcube_password": "string",
  • "xcube_port": 0,
  • "xcube_source_id": "string",
  • "xcube_use_https": true,
  • "xcube_use_source_id_as_stream_prefix": true,
  • "xcube_username": "string"
}

Response samples

Content type
application/json
{
  • "clusterConfig": {
    },
  • "message": "string"
}

Server Configuration

Get server configuration list

Gets the list of server configurations

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverCount": 0,
  • "serversConfig": [
    ]
}

Add server configuration

Adds a new server configuration

Authorizations:
OAuth2Password
Request Body schema: application/json
required

Server configuration

description
string

Optional description of server.

disabled
boolean

Server disabled. When disabled, the server does not ingest any streams. Previously assigned streams may be migrated to other servers, depending on the load balancing configuration, and the availability of other servers.

hls_http_port
integer

Internal HLS port (for use by proxy).

hls_http_proxy_port
integer

HLS proxy port (for HLS stream access).

hls_secure
boolean

HTTPS enabled for HLS.

last_updated
string

Date and time the server configuration was last updated.

lb_participant
boolean

Participates in load balancing and failover operations. The server may be used to host streams 'owned' by other servers, in the event that those servers become disabled, unavailable, or overloaded.

multicast_ip_range
string

RTSP multicast IP range (CIDR).

multicast_rtcp_port
integer

Multicast RTCP port (for RTSP Multicast UDP stream access).

multicast_rtp_port
integer

Multicast RTP port (for RTSP Multicast UDP stream access).

name
string

Unique, alphanumeric server name or identifier. No spaces or special characters allowed (except for '-' and '_').

rtcp_port
integer

RTCP port (for RTSP UDP stream access).

rtmp_port
integer

RTMP port (for RTMP stream access).

rtmp_secure
boolean

RTMPS enabled (TLS encrypted RTMP).

rtmps_port
integer

RTMPS port (for RTMPS stream access).

rtp_port
integer

RTP port (for RTSP UDP stream access).

rtsp_multicast
boolean

RTSP multicast enabled.

rtsp_port
integer

RTSP port (for RTSP stream access).

rtsp_secure
boolean

RTSPS enabled (TLS encrypted RTSP).

rtsps_port
integer

RTSPS port (for RTSPS stream access).

se_api_host
string

IP address or hostname of server.

se_api_http_port
integer

Port for server (SE instance) API.

se_api_password
string

Password for server (SE instance) API.

se_api_secure
boolean

HTTPS enabled for server (SE instance) API.

se_api_user
string

Username for server (SE instance) API.

srt_port
integer

SRT port (for SRT stream access).

video_host
string

Video consumer facing IP address or hostname of server.

webrtc_http_port
integer

WebRTC HTTP port (for use by proxy).

webrtc_http_proxy_port
integer

WebRTC HTTP proxy port (for WebRTC stream requests / signalling).

webrtc_secure
boolean

HTTPS enabled for WebRTC.

webrtc_udp_port
integer

WebRTC UDP port (for WebRTC stream / video delivery).

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "disabled": true,
  • "hls_http_port": 0,
  • "hls_http_proxy_port": 0,
  • "hls_secure": true,
  • "last_updated": "string",
  • "lb_participant": true,
  • "multicast_ip_range": "string",
  • "multicast_rtcp_port": 0,
  • "multicast_rtp_port": 0,
  • "name": "string",
  • "rtcp_port": 0,
  • "rtmp_port": 0,
  • "rtmp_secure": true,
  • "rtmps_port": 0,
  • "rtp_port": 0,
  • "rtsp_multicast": true,
  • "rtsp_port": 0,
  • "rtsp_secure": true,
  • "rtsps_port": 0,
  • "se_api_host": "string",
  • "se_api_http_port": 0,
  • "se_api_password": "string",
  • "se_api_secure": true,
  • "se_api_user": "string",
  • "srt_port": 0,
  • "video_host": "string",
  • "webrtc_http_port": 0,
  • "webrtc_http_proxy_port": 0,
  • "webrtc_secure": true,
  • "webrtc_udp_port": 0
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverConfig": {
    }
}

Delete server configuration

Deletes the server configuration

Authorizations:
OAuth2Password
path Parameters
name
required
string

Server name

Responses

Response samples

Content type
application/json
"string"

Update server configuration

Updates the server configuration

Authorizations:
OAuth2Password
path Parameters
name
required
string

Server name

Request Body schema: application/json
required

Server configuration

description
string

Optional description of server.

disabled
boolean

Server disabled. When disabled, the server does not ingest any streams. Previously assigned streams may be migrated to other servers, depending on the load balancing configuration, and the availability of other servers.

hls_http_port
integer

Internal HLS port (for use by proxy).

hls_http_proxy_port
integer

HLS proxy port (for HLS stream access).

hls_secure
boolean

HTTPS enabled for HLS.

last_updated
string

Date and time the server configuration was last updated.

lb_participant
boolean

Participates in load balancing and failover operations. The server may be used to host streams 'owned' by other servers, in the event that those servers become disabled, unavailable, or overloaded.

multicast_ip_range
string

RTSP multicast IP range (CIDR).

multicast_rtcp_port
integer

Multicast RTCP port (for RTSP Multicast UDP stream access).

multicast_rtp_port
integer

Multicast RTP port (for RTSP Multicast UDP stream access).

name
string

Unique, alphanumeric server name or identifier. No spaces or special characters allowed (except for '-' and '_').

rtcp_port
integer

RTCP port (for RTSP UDP stream access).

rtmp_port
integer

RTMP port (for RTMP stream access).

rtmp_secure
boolean

RTMPS enabled (TLS encrypted RTMP).

rtmps_port
integer

RTMPS port (for RTMPS stream access).

rtp_port
integer

RTP port (for RTSP UDP stream access).

rtsp_multicast
boolean

RTSP multicast enabled.

rtsp_port
integer

RTSP port (for RTSP stream access).

rtsp_secure
boolean

RTSPS enabled (TLS encrypted RTSP).

rtsps_port
integer

RTSPS port (for RTSPS stream access).

se_api_host
string

IP address or hostname of server.

se_api_http_port
integer

Port for server (SE instance) API.

se_api_password
string

Password for server (SE instance) API.

se_api_secure
boolean

HTTPS enabled for server (SE instance) API.

se_api_user
string

Username for server (SE instance) API.

srt_port
integer

SRT port (for SRT stream access).

video_host
string

Video consumer facing IP address or hostname of server.

webrtc_http_port
integer

WebRTC HTTP port (for use by proxy).

webrtc_http_proxy_port
integer

WebRTC HTTP proxy port (for WebRTC stream requests / signalling).

webrtc_secure
boolean

HTTPS enabled for WebRTC.

webrtc_udp_port
integer

WebRTC UDP port (for WebRTC stream / video delivery).

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "disabled": true,
  • "hls_http_port": 0,
  • "hls_http_proxy_port": 0,
  • "hls_secure": true,
  • "last_updated": "string",
  • "lb_participant": true,
  • "multicast_ip_range": "string",
  • "multicast_rtcp_port": 0,
  • "multicast_rtp_port": 0,
  • "name": "string",
  • "rtcp_port": 0,
  • "rtmp_port": 0,
  • "rtmp_secure": true,
  • "rtmps_port": 0,
  • "rtp_port": 0,
  • "rtsp_multicast": true,
  • "rtsp_port": 0,
  • "rtsp_secure": true,
  • "rtsps_port": 0,
  • "se_api_host": "string",
  • "se_api_http_port": 0,
  • "se_api_password": "string",
  • "se_api_secure": true,
  • "se_api_user": "string",
  • "srt_port": 0,
  • "video_host": "string",
  • "webrtc_http_port": 0,
  • "webrtc_http_proxy_port": 0,
  • "webrtc_secure": true,
  • "webrtc_udp_port": 0
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverConfig": {
    }
}

Get server configuration

Gets the server configuration

Authorizations:
OAuth2Password
path Parameters
name
required
string

Server name

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverConfig": {
    }
}

Server Status

Get server connections list

Gets the list of server connections

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverCount": 0,
  • "serversConnections": [
    ]
}

Get server connections

Gets the server connections

Authorizations:
OAuth2Password
path Parameters
name
required
string

Server name

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverConnections": {
    }
}

Get server statistics list

Gets the list of server statistics

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverCount": 0,
  • "serversStats": [
    ]
}

Get server statistics archive list

Gets the server statistics archive list

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

hours
required
number

Hours

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverStatsHistory": [
    ]
}

Get server statistics

Gets the server statistics

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverStats": {
    }
}

Get server status list

Gets the list of server statuses

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverCount": 0,
  • "serversStatus": [
    ]
}

Get server status archived list

Gets the server status archived list

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

hours
required
number

Hours

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverStatusHistory": [
    ]
}

Get server status

Gets the server status

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "serverStatus": {
    }
}

Stream Configuration

Get stream configuration list

Gets the list of stream configurations

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsConfig": [
    ],
  • "totalStreamCount": 0
}

Add stream configuration

Adds a new stream configuration

Authorizations:
OAuth2Password
Request Body schema: application/json
required

Stream configuration

always_on
boolean

Stream is always ingested, even when no clients are connected. When set to false, the stream is only ingested when clients are connected.

con_bitrate_kbps
integer

Target bitrate in kilobits per second for stream transcoding. Allowed range is 64 to 5000. Default is none specified (dynamic, based on source stream and other transcoding parameters).

con_fps
integer

Target frame rate in frames per second for stream transcoding. Allowed range is 5 to 60. If set to 0, source stream frame rate is used.

con_height
integer

Target height in pixels for stream transcoding. Allowed range is 64 to 2160. Default is none specified (source stream height is used). Both con_width and con_height must be set or both must be unset.

con_output_buffer_kb
integer

Used in HTTP based protocol conversion / transcoding. Size of conversion / transcoding output buffer in kilobytes. Allowed range is 0 to 60000. Default is 0 for RTSP source streams and 3000 for other source stream types.

con_preset
string
Enum: "veryfast" "ultrafast" "superfast" "veryfast" "faster" "fast" "medium" "slow" "slower" "veryslow"

H264 (libx264) preset for stream transcoding. Allowed values are "ultrafast", "superfast", "veryfast", "faster", "fast", "medium", "slow", "slower", "veryslow", "placebo". Default is veryfast.

con_realtime
boolean

Optionally used in HTTP/HTTPS source stream conversion. Reading the source stream at its native frame rate is enabled, essentially simulating a 'live' stream. Can improve output stream stability when converting segment based source streams (e.g. HLS). Default is false.

con_remux_window_ms
integer

Used in HTTP based protocol conversion / transcoding. Maximum number of milliseconds to remux source stream frames. Can improve output stream stability when converting / transcoding segment based source streams (e.g. HLS). Allowed range is 1000 to 5000. Default is 1000.

con_type
string
Enum: "none" "remux" "transcode"

Allowed values are 'none', 'remux', and 'transcode'. When set to 'remux', the source stream is remuxed to rtsp or rtmp prior to restreaming. When set to 'transcode', the source stream is transcoded or re-encoded to H.264, based on the default or provided con_preset, con_bitrate_kbps, con_width, con_height and con_fps parameters. Note that the con_realtime and con_remux_window_ms parameters are only used for http/https source conversion.

con_width
integer

Target width in pixels for stream transcoding. Allowed range is 64 to 3840. Default is none specified (source stream width is used). Both con_width and con_height must be set or both must be unset.

description
string

Brief description of stream or stream source (camera name, camera location, etc.).

disabled
boolean

Stream disabled. The stream will not be ingested or restreamed.

home_server
string

Unique, alphanumeric home server name or identifier. No spaces or special characters allowed (except for '-' and '_').

load_balance
boolean

Load balancing and failover is enabled for this stream. The stream will be moved to another server (if / when one is available), in the event of its home server being disabled, unavailable or overloaded.

outbound_multicast_ip
string

Outbound multicast IP address for the stream (optional). If provided, must be a valid multicast IP address. If not provided, the assigned server will automatically select a multicast IP address from from the multicast CIDR configured for the server. RTSP multicast must be enabled on the assigned server.

Array of objects (data.PushTargetListItem)

List of push targets for the stream. Each target (e.g., rtsp://user:pass@remote.example.com:554/destpath) is a URL with a supported push protocol ("rtsp", "rtsps", "rtmp", "rtmps"). The stream will be continually pushed to each target in the list. Ignored when AlwaysOn is set to false.

secure_token_on
boolean

Token based authentication is enabled for this stream. HTTP/HTTPS (HLS and WebRTC) clients must provide a valid auth token in order to access the stream.

server
string

Unique, alphanumeric currently assigned server name or identifier. No spaces or special characters allowed (except for '-' and '_'). Read-only field.

shared_secret
string

Shared (alphanumeric) secret used to generate / validate auth tokens and srt passphrase for output streams. Must be 8 to 16 characters in length.

source
string

Source URL for the stream. Must be a valid URL with a supported protocol ("udp", "rtsp", "rtsps", "rtmp", "rtmps", "http", "https").

stream
string

Unique, lowercase, alphanumeric stream name or identifier. No spaces or special characters allowed (except for '-' and '_'). Used in output stream URLs.

transport
string
Enum: "udp" "tcp" "http" "https" "multicast"

Transport protocol of the source stream. Allowed values are "tcp", "udp", "multicast", "http" and "https".

updatetime
string

Date and time of last update to stream configuration.

Responses

Request samples

Content type
application/json
{
  • "always_on": true,
  • "con_bitrate_kbps": 0,
  • "con_fps": 0,
  • "con_height": 0,
  • "con_output_buffer_kb": 0,
  • "con_preset": "veryfast",
  • "con_realtime": true,
  • "con_remux_window_ms": 0,
  • "con_type": "none",
  • "con_width": 0,
  • "description": "string",
  • "disabled": true,
  • "home_server": "string",
  • "load_balance": true,
  • "outbound_multicast_ip": "string",
  • "push_targets": [
    ],
  • "secure_token_on": true,
  • "server": "string",
  • "shared_secret": "string",
  • "source": "string",
  • "stream": "string",
  • "transport": "udp",
  • "updatetime": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamConfig": {
    }
}

Delete stream configuration

Deletes the stream configuration

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

Responses

Response samples

Content type
application/json
"string"

Get stream configuration

Gets the stream configuration

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamConfig": {
    }
}

Update stream configuration

Updates the stream configuration

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

Request Body schema: application/json
required

Stream configuration

always_on
boolean

Stream is always ingested, even when no clients are connected. When set to false, the stream is only ingested when clients are connected.

con_bitrate_kbps
integer

Target bitrate in kilobits per second for stream transcoding. Allowed range is 64 to 5000. Default is none specified (dynamic, based on source stream and other transcoding parameters).

con_fps
integer

Target frame rate in frames per second for stream transcoding. Allowed range is 5 to 60. If set to 0, source stream frame rate is used.

con_height
integer

Target height in pixels for stream transcoding. Allowed range is 64 to 2160. Default is none specified (source stream height is used). Both con_width and con_height must be set or both must be unset.

con_output_buffer_kb
integer

Used in HTTP based protocol conversion / transcoding. Size of conversion / transcoding output buffer in kilobytes. Allowed range is 0 to 60000. Default is 0 for RTSP source streams and 3000 for other source stream types.

con_preset
string
Enum: "veryfast" "ultrafast" "superfast" "veryfast" "faster" "fast" "medium" "slow" "slower" "veryslow"

H264 (libx264) preset for stream transcoding. Allowed values are "ultrafast", "superfast", "veryfast", "faster", "fast", "medium", "slow", "slower", "veryslow", "placebo". Default is veryfast.

con_realtime
boolean

Optionally used in HTTP/HTTPS source stream conversion. Reading the source stream at its native frame rate is enabled, essentially simulating a 'live' stream. Can improve output stream stability when converting segment based source streams (e.g. HLS). Default is false.

con_remux_window_ms
integer

Used in HTTP based protocol conversion / transcoding. Maximum number of milliseconds to remux source stream frames. Can improve output stream stability when converting / transcoding segment based source streams (e.g. HLS). Allowed range is 1000 to 5000. Default is 1000.

con_type
string
Enum: "none" "remux" "transcode"

Allowed values are 'none', 'remux', and 'transcode'. When set to 'remux', the source stream is remuxed to rtsp or rtmp prior to restreaming. When set to 'transcode', the source stream is transcoded or re-encoded to H.264, based on the default or provided con_preset, con_bitrate_kbps, con_width, con_height and con_fps parameters. Note that the con_realtime and con_remux_window_ms parameters are only used for http/https source conversion.

con_width
integer

Target width in pixels for stream transcoding. Allowed range is 64 to 3840. Default is none specified (source stream width is used). Both con_width and con_height must be set or both must be unset.

description
string

Brief description of stream or stream source (camera name, camera location, etc.).

disabled
boolean

Stream disabled. The stream will not be ingested or restreamed.

home_server
string

Unique, alphanumeric home server name or identifier. No spaces or special characters allowed (except for '-' and '_').

load_balance
boolean

Load balancing and failover is enabled for this stream. The stream will be moved to another server (if / when one is available), in the event of its home server being disabled, unavailable or overloaded.

outbound_multicast_ip
string

Outbound multicast IP address for the stream (optional). If provided, must be a valid multicast IP address. If not provided, the assigned server will automatically select a multicast IP address from from the multicast CIDR configured for the server. RTSP multicast must be enabled on the assigned server.

Array of objects (data.PushTargetListItem)

List of push targets for the stream. Each target (e.g., rtsp://user:pass@remote.example.com:554/destpath) is a URL with a supported push protocol ("rtsp", "rtsps", "rtmp", "rtmps"). The stream will be continually pushed to each target in the list. Ignored when AlwaysOn is set to false.

secure_token_on
boolean

Token based authentication is enabled for this stream. HTTP/HTTPS (HLS and WebRTC) clients must provide a valid auth token in order to access the stream.

server
string

Unique, alphanumeric currently assigned server name or identifier. No spaces or special characters allowed (except for '-' and '_'). Read-only field.

shared_secret
string

Shared (alphanumeric) secret used to generate / validate auth tokens and srt passphrase for output streams. Must be 8 to 16 characters in length.

source
string

Source URL for the stream. Must be a valid URL with a supported protocol ("udp", "rtsp", "rtsps", "rtmp", "rtmps", "http", "https").

stream
string

Unique, lowercase, alphanumeric stream name or identifier. No spaces or special characters allowed (except for '-' and '_'). Used in output stream URLs.

transport
string
Enum: "udp" "tcp" "http" "https" "multicast"

Transport protocol of the source stream. Allowed values are "tcp", "udp", "multicast", "http" and "https".

updatetime
string

Date and time of last update to stream configuration.

Responses

Request samples

Content type
application/json
{
  • "always_on": true,
  • "con_bitrate_kbps": 0,
  • "con_fps": 0,
  • "con_height": 0,
  • "con_output_buffer_kb": 0,
  • "con_preset": "veryfast",
  • "con_realtime": true,
  • "con_remux_window_ms": 0,
  • "con_type": "none",
  • "con_width": 0,
  • "description": "string",
  • "disabled": true,
  • "home_server": "string",
  • "load_balance": true,
  • "outbound_multicast_ip": "string",
  • "push_targets": [
    ],
  • "secure_token_on": true,
  • "server": "string",
  • "shared_secret": "string",
  • "source": "string",
  • "stream": "string",
  • "transport": "udp",
  • "updatetime": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamConfig": {
    }
}

Get stream configuration list for server

Gets the list of stream configurations for a server

Authorizations:
OAuth2Password
path Parameters
server
required
string

Server

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsConfig": [
    ],
  • "totalStreamCount": 0
}

Stream Tours

Get stream tour list

Gets the list of stream tours

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "stream_tour_count": 0,
  • "stream_tour_list": [
    ]
}

Add stream tour

Adds a stream tour

Authorizations:
OAuth2Password
Request Body schema: application/json
required

Stream tour

description
string

Brief description of the tour (e.g., purpose, content, etc.).

dwell_time_secs
integer

Dwell time in seconds for each stream in the tour.

last_updated
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 '_').

stream_list
Array of strings

List of stream names that are part of the tour.

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "dwell_time_secs": 0,
  • "last_updated": "string",
  • "name": "string",
  • "stream_list": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "stream_tour": {
    }
}

Delete stream tour

Deletes the stream tour

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

Responses

Response samples

Content type
application/json
"string"

Get stream tour

Gets the stream tour

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "stream_tour": {
    }
}

Update stream tour

Updates the stream tour

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

Request Body schema: application/json
required

Stream tour

description
string

Brief description of the tour (e.g., purpose, content, etc.).

dwell_time_secs
integer

Dwell time in seconds for each stream in the tour.

last_updated
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 '_').

stream_list
Array of strings

List of stream names that are part of the tour.

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "dwell_time_secs": 0,
  • "last_updated": "string",
  • "name": "string",
  • "stream_list": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "stream_tour": {
    }
}

Stream Status

Get stream status list

Gets the list of stream statuses

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamCount": 0,
  • "streamsStatus": [
    ]
}

Get stream status history

Gets the stream status history

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

hours
required
integer

Hours

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamStatusHistory": [
    ]
}

Get stream status

Gets the stream status

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamStatus": {
    }
}

Get stream status list for server

Gets the list of stream statuses for a server

Authorizations:
OAuth2Password
path Parameters
server
required
string

Server

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamCount": 0,
  • "streamsStatus": [
    ]
}

Camera Configuration

Get camera configuration list

Gets the list of camera configurations

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "camera_config_count": 0,
  • "camera_config_list": [
    ],
  • "message": "string"
}

Add camera configuration

Adds a new camera configuration

Authorizations:
OAuth2Password
Request Body schema: application/json
required

Camera configuration

camera
string

Unique, lowercase, alphanumeric camera name or identifier. No spaces or special characters allowed (except for '-' and '_').

city
string

City name or identifier (optional).

control_disabled
boolean

Control disabled. When true, all camera communications are disabled.

control_protocol
string
Enum: "none" "onvif"

Protocol used for camera monitoring and control. Allowed values are 'none' or 'onvif'.

county
string

County name or identifier (optional).

description
string

Brief description of camera (optional).

entity
string

Entity name or identifier (optional).

last_updated
string

Date and time of last update to camera configuration.

location_description
string

Brief description of camera location (optional).

location_latitude
number

Latitude of camera location (optional).

location_longitude
number

Longitude of camera location (optional).

object

ONVIF configuration (optional).

operations_center
string

Operations center name or identifier (optional).

province
string

Province name or identifier (optional).

region
string

Region name or identifier (optional).

roadway
string

Roadway name or identifier (optional).

roadway_direction
string

Roadway direction (optional).

state
string

State name or identifier (optional).

stream_list
Array of strings

List of associated streams (optional).

Responses

Request samples

Content type
application/json
{
  • "camera": "string",
  • "city": "string",
  • "control_disabled": true,
  • "control_protocol": "none",
  • "county": "string",
  • "description": "string",
  • "entity": "string",
  • "last_updated": "string",
  • "location_description": "string",
  • "location_latitude": 0,
  • "location_longitude": 0,
  • "onvif_config": {
    },
  • "operations_center": "string",
  • "province": "string",
  • "region": "string",
  • "roadway": "string",
  • "roadway_direction": "string",
  • "state": "string",
  • "stream_list": [
    ]
}

Response samples

Content type
application/json
{
  • "camera_config": {
    },
  • "message": "string"
}

Get camera configuration

Gets the camera configuration

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "camera_config": {
    },
  • "message": "string"
}

Delete camera configuration

Deletes the camera configuration

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
"string"

Update camera configuration

Updates the camera configuration

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Camera configuration

camera
string

Unique, lowercase, alphanumeric camera name or identifier. No spaces or special characters allowed (except for '-' and '_').

city
string

City name or identifier (optional).

control_disabled
boolean

Control disabled. When true, all camera communications are disabled.

control_protocol
string
Enum: "none" "onvif"

Protocol used for camera monitoring and control. Allowed values are 'none' or 'onvif'.

county
string

County name or identifier (optional).

description
string

Brief description of camera (optional).

entity
string

Entity name or identifier (optional).

last_updated
string

Date and time of last update to camera configuration.

location_description
string

Brief description of camera location (optional).

location_latitude
number

Latitude of camera location (optional).

location_longitude
number

Longitude of camera location (optional).

object

ONVIF configuration (optional).

operations_center
string

Operations center name or identifier (optional).

province
string

Province name or identifier (optional).

region
string

Region name or identifier (optional).

roadway
string

Roadway name or identifier (optional).

roadway_direction
string

Roadway direction (optional).

state
string

State name or identifier (optional).

stream_list
Array of strings

List of associated streams (optional).

Responses

Request samples

Content type
application/json
{
  • "camera": "string",
  • "city": "string",
  • "control_disabled": true,
  • "control_protocol": "none",
  • "county": "string",
  • "description": "string",
  • "entity": "string",
  • "last_updated": "string",
  • "location_description": "string",
  • "location_latitude": 0,
  • "location_longitude": 0,
  • "onvif_config": {
    },
  • "operations_center": "string",
  • "province": "string",
  • "region": "string",
  • "roadway": "string",
  • "roadway_direction": "string",
  • "state": "string",
  • "stream_list": [
    ]
}

Response samples

Content type
application/json
{
  • "camera_config": {
    },
  • "message": "string"
}

Camera Groups

Get camera group list

Gets the list of camera groups

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "camera_group_list": [
    ],
  • "message": "string"
}

Add camera group

Adds a new camera group

Authorizations:
OAuth2Password
Request Body schema: application/json
required

Camera group

camera_list
Array of strings

List of cameras in group.

description
string

Brief description of camera group (optional).

last_updated
string

Date and time of last update to camera configuration.

name
string

Unique, alphanumeric camera group name or identifier. No spaces or special characters allowed (except for '-' and '_').

Responses

Request samples

Content type
application/json
{
  • "camera_list": [
    ],
  • "description": "string",
  • "last_updated": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "camera_group": {
    },
  • "message": "string"
}

Delete camera group

Deletes the camera group

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

Responses

Response samples

Content type
application/json
"string"

Get camera group

Gets the camera group

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

Responses

Response samples

Content type
application/json
{
  • "camera_group": {
    },
  • "message": "string"
}

Update camera group

Updates the camera group

Authorizations:
OAuth2Password
path Parameters
name
required
string

Name

Request Body schema: application/json
required

Camera group

camera_list
Array of strings

List of cameras in group.

description
string

Brief description of camera group (optional).

last_updated
string

Date and time of last update to camera configuration.

name
string

Unique, alphanumeric camera group name or identifier. No spaces or special characters allowed (except for '-' and '_').

Responses

Request samples

Content type
application/json
{
  • "camera_list": [
    ],
  • "description": "string",
  • "last_updated": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "camera_group": {
    },
  • "message": "string"
}

Camera Control

Get camera capabilities

Gets the camera capabilities

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "analytics": {
    },
  • "device": {
    },
  • "events": {
    },
  • "extension": {
    },
  • "imaging": {
    },
  • "media": {
    },
  • "ptz": {
    }
}

Goto camera home position

Moves the camera to its home position

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Goto Home Position Request

pan_tilt_speed
integer

Pan tilt speed. Allowed range: 0 to 1000.

zoom_speed
integer

Zoom speed. Allowed range: 0 to 1000.

Responses

Request samples

Content type
application/json
{
  • "pan_tilt_speed": 0,
  • "zoom_speed": 0
}

Response samples

Content type
application/json
"string"

Set camera home position

Sets the camera home position

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
"string"

Absolute move camera

Moves the camera to an absolute position

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Absolute Move Request

pan
integer

Absolute pan position. Allowed range: -1000 to 1000.

speed_pan_tilt
integer

Speed for pan and tilt. Allowed range: 0 to 1000.

speed_zoom
integer

Speed for zoom. Allowed range: 0 to 1000.

tilt
integer

Absolute tilt position. Allowed range: -1000 to 1000.

zoom
integer

Absolute zoom position. Allowed range: 0 to 1000.

Responses

Request samples

Content type
application/json
{
  • "pan": 0,
  • "speed_pan_tilt": 0,
  • "speed_zoom": 0,
  • "tilt": 0,
  • "zoom": 0
}

Response samples

Content type
application/json
"string"

Continuous move camera

Moves the camera continuously

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Continuous Move Request

pan_speed
integer

Pan speed. Allowed range: 0 to 1000.

tilt_speed
integer

Tilt speed. Allowed range: 0 to 1000.

timeout_secs
integer

Timeout in seconds. Must be greater than 0.

zoom_speed
integer

Zoom speed. Allowed range: 0 to 1000.

Responses

Request samples

Content type
application/json
{
  • "pan_speed": 0,
  • "tilt_speed": 0,
  • "timeout_secs": 0,
  • "zoom_speed": 0
}

Response samples

Content type
application/json
"string"

Relative move camera

Moves the camera to a relative position

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Relative Move Request

pan
integer

Relative pan position. Allowed range: -1000 to 1000.

speed_pan_tilt
integer

Speed for pan and tilt. Allowed range: 0 to 1000.

speed_zoom
integer

Speed for zoom. Allowed range: 0 to 1000.

tilt
integer

Relative tilt position. Allowed range: -1000 to 1000.

zoom
integer

Relative zoom position. Allowed range: -1000 to 1000.

Responses

Request samples

Content type
application/json
{
  • "pan": 0,
  • "speed_pan_tilt": 0,
  • "speed_zoom": 0,
  • "tilt": 0,
  • "zoom": 0
}

Response samples

Content type
application/json
"string"

Stop continuous camera movement

Stops the camera continuous movement

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Stop Continuous Move Request

pan_tilt
boolean

Stop pan and tilt.

zoom
boolean

Stop zoom.

Responses

Request samples

Content type
application/json
{
  • "pan_tilt": true,
  • "zoom": true
}

Response samples

Content type
application/json
"string"

Remove camera preset

Removes the camera preset

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Remove Preset Request

preset_token
string

Preset token (unique identifier).

Responses

Request samples

Content type
application/json
{
  • "preset_token": "string"
}

Response samples

Content type
application/json
"string"

Goto camera preset

Moves the camera to a preset position

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Goto Preset Request

pan_tilt_speed
integer

Pan tilt speed. Allowed range: 0 to 1000.

preset_token
string

Preset token (unique identifier).

zoom_speed
integer

Zoom speed. Allowed range: 0 to 1000.

Responses

Request samples

Content type
application/json
{
  • "pan_tilt_speed": 0,
  • "preset_token": "string",
  • "zoom_speed": 0
}

Response samples

Content type
application/json
"string"

Set camera preset

Sets the camera preset

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Request Body schema: application/json
required

Set Preset Request

preset_name
string

Preset name.

preset_token
string

Preset token (unique identifier).

Responses

Request samples

Content type
application/json
{
  • "preset_name": "string",
  • "preset_token": "string"
}

Response samples

Content type
application/json
"string"

Get camera ptz preset list

Gets the camera ptz preset list

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get active camera profile

Gets the active camera profile

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "audioEncoderConfiguration": {
    },
  • "audioSourceConfiguration": {
    },
  • "extension": {
    },
  • "fixed": true,
  • "metadataConfiguration": {
    },
  • "name": "string",
  • "ptzConfiguration": {
    },
  • "token": "string",
  • "videoAnalyticsConfiguration": {
    },
  • "videoEncoderConfiguration": {
    },
  • "videoSourceConfiguration": {
    }
}

Get camera profile list

Gets the camera profile list

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get camera ptz configuration

Gets the camera ptz configuration

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "defaultAbsolutePantTiltPositionSpace": "string",
  • "defaultAbsoluteZoomPositionSpace": "string",
  • "defaultContinuousPanTiltVelocitySpace": "string",
  • "defaultContinuousZoomVelocitySpace": "string",
  • "defaultPTZSpeed": {
    },
  • "defaultPTZTimeout": "string",
  • "defaultRelativePanTiltTranslationSpace": "string",
  • "defaultRelativeZoomTranslationSpace": "string",
  • "extension": {
    },
  • "moveRamp": 0,
  • "name": "string",
  • "nodeToken": "string",
  • "panTiltLimits": {
    },
  • "presetRamp": 0,
  • "presetTourRamp": 0,
  • "token": "string",
  • "useCount": 0,
  • "zoomLimits": {
    }
}

Get camera ptz node

Gets the camera ptz node

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "extension": {
    },
  • "fixedHomePosition": true,
  • "geoMove": true,
  • "homeSupported": true,
  • "maximumNumberOfPresets": 0,
  • "name": "string",
  • "supportedPTZSpaces": {
    },
  • "token": "string"
}

Get camera ptz status

Gets the camera ptz status

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "moveStatus": {
    },
  • "position": {
    },
  • "utcTime": "string"
}

Reboot camera

Reboots the camera

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
"string"

Get camera system date time

Gets the camera system date time

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "dateTimeType": "string",
  • "daylightSavings": true,
  • "localDateTime": "string",
  • "timeZone": "string",
  • "utcDateTime": "string"
}

Camera Status

Get camera status list

Gets the list of camera statuses

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "camera_status_count": 0,
  • "camera_status_list": [
    ],
  • "message": "string"
}

Get camera status

Gets the camera status

Authorizations:
OAuth2Password
path Parameters
camera
required
string

Camera

Responses

Response samples

Content type
application/json
{
  • "camera_status": {
    },
  • "message": "string"
}

Wall Presets

Get wall preset list

Gets the list of wall presets for the current user.

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Set wall preset list

Sets the wall preset list for the current user.

Authorizations:
OAuth2Password
Request Body schema: application/json
required

Wall preset list

Array
columns
integer

Columns of the wall preset.

Array of objects (data.WallPresetInput)

List of inputs in the wall preset.

name
string

Name of the wall preset.

rows
integer

Rows of the wall preset.

use_hls_only
boolean

Only use HLS for wall preset playback.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "message": "string",
  • "wall_presets": [
    ]
}

Network

Ping

Gets pong

Authorizations:
OAuth2Password

Responses

Response samples

Content type
application/json
{
  • "created_at": "string",
  • "message": "string",
  • "request_ip_address": "string",
  • "system_name": "string",
  • "wui_map_view": true
}

Player

Embedded WebRTC PTZ Player

Embedded WebRTC PTZ Player for ONVIF PTZ cameras

query Parameters
username
required
string

Username

password
required
string

Password

camera
required
string

Camera name

relativeMoveSupport
boolean

Enable relative move support (default: false)

limitedControl
boolean

Enable limited control (default: false)

source
required
string

Source URL for the WebRTC stream

token
string

Auth token (default: empty)

height
integer

Height of the video player in px (default: 100% fill)

width
integer

Width of the video player in px (default: 100% fill)

dns
string

DNS server URL (default: https://dns.google/resolve)

dnsTimeout
integer

DNS timeout in ms (default: 5000)

Responses

Viewer History

Get stream access history

Gets the stream access history list

Authorizations:
OAuth2Password
path Parameters
dateTime
required
string

Date and time of the least recent record requested

maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsAccessHistory": [
    ],
  • "totalStreamsAccessHistoryCount": 0
}

Get stream access history

Gets the stream access history list

Authorizations:
OAuth2Password
path Parameters
dateTime
required
string

Date and time of the most recent record requested

maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsAccessHistory": [
    ],
  • "totalStreamsAccessHistoryCount": 0
}

Get stream access history

Gets the stream access history list

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

dateTime
required
string

Date and time of the least recent record requested

maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsAccessHistory": [
    ],
  • "totalStreamsAccessHistoryCount": 0
}

Get stream access history

Gets the stream access history list

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

dateTime
required
string

Date and time of the most recent record requested

maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsAccessHistory": [
    ],
  • "totalStreamsAccessHistoryCount": 0
}

Get stream access history

Gets the stream access history list

Authorizations:
OAuth2Password
path Parameters
stream
required
string

Stream

maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsAccessHistory": [
    ],
  • "totalStreamsAccessHistoryCount": 0
}

Get stream access history

Gets the stream access history list

Authorizations:
OAuth2Password
path Parameters
maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "streamsAccessHistory": [
    ],
  • "totalStreamsAccessHistoryCount": 0
}

Blacklist History

Get blacklist history

Gets the blacklist history list

Authorizations:
OAuth2Password
path Parameters
dateTime
required
string

Date and time of the least recent record requested

maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "blacklistHistoryCount": 0,
  • "blacklistHistoryList": [
    ],
  • "message": "string"
}

Get blacklist history

Gets the blacklist history list

Authorizations:
OAuth2Password
path Parameters
dateTime
required
string

Date and time of the most recent record requested

maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "blacklistHistoryCount": 0,
  • "blacklistHistoryList": [
    ],
  • "message": "string"
}

Get blacklist history

Gets the blacklist history list

Authorizations:
OAuth2Password
path Parameters
maxCount
required
integer

Number of most recent records requested (up to the maximum count configured for this XFlow instance)

Responses

Response samples

Content type
application/json
{
  • "blacklistHistoryCount": 0,
  • "blacklistHistoryList": [
    ],
  • "message": "string"
}

Stream Control

Reset stream

Resets the stream (forces stream reconnection)

path Parameters
stream
required
string

Stream

Responses

Response samples

Content type
application/json
"string"