{ "openapi": "3.0.0", "info": { "description": "This document presents the REST API for Videon streaming devices. Multimedia encoder settings and media destinations(outputs) can be configured through the REST API.\n\nFor specific possible values, please refer to the particular streaming device you are using. All Videon streaming devices share a common REST API, but the specific features supported will vary for each device model.\n\nBefore starting, check out our REST API Quickstart Guide. It makes getting started easy!", "title": "Videon Streaming REST API", "version": "" }, "servers": [ { "url": "http://ip.address:2020/" } ], "paths": { "/v2/encoders": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "aud_encoders": [ { "active": false, "aud_encoder_id": 0, "seconds_in_status": 0, "status": "DISABLED" } ], "data_encoders": [ { "active": false, "codec": "klv_sync", "data_encoder_id": 0, "seconds_in_status": 0, "status": "DISABLED" } ], "max_aud_encoders": 0, "max_vid_encoders": 0, "vid_encoders": [ { "active": false, "seconds_in_status": 0, "status": "DISABLED", "vid_encoder_id": 0 } ] } } }, "schema": { "properties": { "aud_encoders": { "items": { "properties": { "active": { "type": "boolean" }, "aud_encoder_id": { "type": "number" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "aud_encoder_id", "active" ], "type": "object" }, "type": "array" }, "data_encoders": { "items": { "properties": { "active": { "type": "boolean" }, "codec": { "enum": [ "klv_sync", "scte35" ], "type": "string" }, "data_encoder_id": { "type": "number" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "data_encoder_id", "codec", "active" ], "type": "object" }, "type": "array" }, "max_aud_encoders": { "type": "number" }, "max_vid_encoders": { "type": "number" }, "vid_encoders": { "items": { "properties": { "active": { "type": "boolean" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" }, "vid_encoder_id": { "type": "number" } }, "required": [ "vid_encoder_id", "active" ], "type": "object" }, "type": "array" } }, "required": [ "vid_encoders", "max_vid_encoders", "aud_encoders", "max_aud_encoders", "data_encoders" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Encoders" ], "description": "Get the list of encoders present in the device.", "operationId": "Get Encoders List", "summary": "Get Encoders List" } }, "/v2/encoders/aud_encoders": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "aud_encoders": [ { "active": false, "aud_encoder_id": 0, "seconds_in_status": 0, "status": "DISABLED" } ], "available_codecs": [ "mpeg4_aac" ], "max_aud_encoders": 0 } } }, "schema": { "properties": { "aud_encoders": { "items": { "properties": { "active": { "type": "boolean" }, "aud_encoder_id": { "type": "number" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "aud_encoder_id", "active" ], "type": "object" }, "type": "array" }, "available_codecs": { "items": { "type": "string" }, "type": "array" }, "max_aud_encoders": { "type": "number" } }, "required": [ "aud_encoders", "available_codecs", "max_aud_encoders" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Audio Encoders" ], "description": "Get the list of audio encoders present in the device.", "operationId": "Get Audio Encoders List", "summary": "Get Audio Encoders List" }, "post": { "responses": { "201": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0 } } }, "schema": { "properties": { "id": { "type": "number" } }, "required": [ "id" ], "type": "object" } } }, "description": "Created", "headers": {} } }, "tags": [ "Audio Encoders" ], "description": "Create a new audio encoder with the specified settings.", "operationId": "Create New Audio Encoder", "summary": "Create New Audio Encoder" } }, "/v2/encoders/aud_encoders/{id}": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Audio Encoders" ], "description": "Delete the specified audio encoder.", "operationId": "Delete Audio Encoder", "summary": "Delete Audio Encoder" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "active": false, "aud_encoder_id": 0, "bitrate": { "value": 64, "value_range": { "max": 512, "min": 32 } }, "bitrate_mode": { "possible_values": [ "constant", "variable" ], "value": "variable" }, "channel_configuration": { "avail_channel_range": { "max": 512, "min": 32 }, "num_channel_range": { "max": 512, "min": 32 }, "selected_channels": [ 1, 2 ] }, "codec": { "possible_values": [ "mpeg4_aac" ], "value": "mpeg4_aac" }, "in_channel_id": 0, "mix_mode": { "possible_values": [ "STEREO", "DUAL_MONO", "LEFT_MONO", "RIGHT_MONO", "CROSS_MONO" ], "value": "STEREO" }, "name": "AudioEncoder1", "sample": { "possible_values": [ "SAMPLE_16_khz", "SAMPLE_32_khz", "SAMPLE_44p1_khz", "SAMPLE_48_khz", "SAMPLE_96_khz", "SAMPLE_192_khz" ], "value": "SAMPLE_48_khz" }, "seconds_in_status": 0, "status": "DISABLED" } } }, "schema": { "properties": { "active": { "type": "boolean" }, "aud_encoder_id": { "type": "number" }, "bitrate": { "properties": { "value": { "type": "number" }, "value_range": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" } }, "required": [ "value", "value_range" ], "type": "object" }, "bitrate_mode": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "channel_configuration": { "properties": { "avail_channel_range": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" }, "num_channel_range": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" }, "selected_channels": { "items": { "anyOf": [ { "type": "number" }, { "type": "number" } ] }, "type": "array" } }, "required": [ "num_channel_range", "avail_channel_range", "selected_channels" ], "type": "object" }, "codec": { "properties": { "possible_values": { "items": { "type": "string" }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "in_channel_id": { "type": "number" }, "mix_mode": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "name": { "type": "string" }, "sample": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "name", "active", "aud_encoder_id", "in_channel_id", "codec", "sample", "mix_mode", "bitrate", "bitrate_mode", "channel_configuration" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Audio Encoders" ], "description": "Get the current audio encoder settings.", "operationId": "Get Audio Encoder Configuration", "summary": "Get Audio Encoder Configuration" }, "put": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Audio Encoders" ], "description": "Update the current audio encoder settings.", "operationId": "Update Audio Encoder Configuration", "requestBody": { "content": { "application/json": { "schema": { "example": { "bitrate": { "value": 64 }, "bitrate_mode": { "value": "variable" }, "channel_configuration": { "selected_channels": [ 1, 2 ] }, "codec": { "value": "mpeg4_aac" }, "in_channel_id": 0, "mix_mode": { "value": "STEREO" }, "name": "AudioEncoder1" }, "properties": { "bitrate": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" }, "bitrate_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "channel_configuration": { "properties": { "selected_channels": { "items": { "anyOf": [ { "type": "number" }, { "type": "number" } ] }, "type": "array" } }, "required": [ "selected_channels" ], "type": "object" }, "codec": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "in_channel_id": { "type": "number" }, "mix_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "name": { "type": "string" } }, "required": [ "name", "in_channel_id", "codec", "mix_mode", "bitrate", "bitrate_mode", "channel_configuration" ], "type": "object" } } } }, "summary": "Update Audio Encoder Configuration" } }, "/v2/encoders/data_encoders": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "available_codecs": [ "klv_sync", "scte35" ], "data_encoders": [ { "active": false, "codec": "klv_sync", "data_encoder_id": 0, "seconds_in_status": 0, "status": "DISABLED" } ] } } }, "schema": { "properties": { "available_codecs": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "data_encoders": { "items": { "properties": { "active": { "type": "boolean" }, "codec": { "enum": [ "klv_sync", "scte35" ], "type": "string" }, "data_encoder_id": { "type": "number" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "data_encoder_id", "codec", "active" ], "type": "object" }, "type": "array" } }, "required": [ "data_encoders", "available_codecs" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Get the list of data encoders present in the device.", "operationId": "Get Data Encoders List", "summary": "Get Data Encoders List" }, "post": { "responses": { "201": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0 } } }, "schema": { "properties": { "id": { "type": "number" } }, "required": [ "id" ], "type": "object" } } }, "description": "Created", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Create a new data encoder with the specified settings.", "operationId": "Create New Data Encoder", "requestBody": { "content": { "application/json": { "schema": { "example": { "codec": "klv_sync" }, "properties": { "codec": { "enum": [ "klv_sync", "scte35" ], "type": "string" } }, "required": [ "codec" ], "type": "object" } } } }, "summary": "Create New Data Encoder" } }, "/v2/encoders/data_encoders/{id}": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Delete the specified data encoder.", "operationId": "Delete Data Encoder", "summary": "Delete Data Encoder" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "active": false, "codec": { "klv_sync": {}, "scte35": { "splice_duration": 30000 }, "value": "klv_sync" }, "data_encoder_id": 0, "name": "DataEncoder1", "seconds_in_status": 0, "status": "DISABLED" } } }, "schema": { "properties": { "active": { "type": "boolean" }, "codec": { "properties": { "klv_sync": { "properties": {}, "type": "object" }, "scte35": { "properties": { "splice_duration": { "type": "number" } }, "required": [ "splice_duration" ], "type": "object" }, "value": { "enum": [ "klv_sync", "scte35" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "data_encoder_id": { "type": "number" }, "name": { "type": "string" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "name", "active", "data_encoder_id", "codec" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Get the current data encoder settings.", "operationId": "Get Data Encoder Configuration", "summary": "Get Data Encoder Configuration" }, "put": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Update the current data encoder settings.", "operationId": "Update Data Encoder Configuration", "requestBody": { "content": { "application/json": { "schema": { "example": { "codec": { "klv_sync": {}, "scte35": { "splice_duration": 30000 }, "value": "klv_sync" }, "name": "DataEncoder1" }, "properties": { "codec": { "properties": { "klv_sync": { "properties": {}, "type": "object" }, "scte35": { "properties": { "splice_duration": { "type": "number" } }, "required": [ "splice_duration" ], "type": "object" }, "value": { "enum": [ "klv_sync", "scte35" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "name": { "type": "string" } }, "required": [ "name", "codec" ], "type": "object" } } } }, "summary": "Update Data Encoder Configuration" } }, "/v2/encoders/data_encoders/{id}/action/insert_splice": { "post": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Insert splice markers to transport stream outputs starting now. The duration of the splice will be what is configured in\nthe SCTE-35 encoder. There will be at least a 4 second delay in splice start.", "operationId": "SCTE-35 - Insert Splice", "summary": "SCTE-35 - Insert Splice" } }, "/v2/encoders/vid_encoders": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "available_codecs": [ "H264", "H265" ], "max_sync_groups": 0, "max_vid_encoders": 0, "sync_groups": [ { "active": false, "sync_group_id": 0 } ], "vid_encoders": [ { "active": false, "seconds_in_status": 0, "status": "DISABLED", "vid_encoder_id": 0 } ] } } }, "schema": { "properties": { "available_codecs": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "max_sync_groups": { "type": "number" }, "max_vid_encoders": { "type": "number" }, "sync_groups": { "items": { "properties": { "active": { "type": "boolean" }, "sync_group_id": { "type": "number" } }, "required": [ "active", "sync_group_id" ], "type": "object" }, "type": "array" }, "vid_encoders": { "items": { "properties": { "active": { "type": "boolean" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" }, "vid_encoder_id": { "type": "number" } }, "required": [ "vid_encoder_id", "active" ], "type": "object" }, "type": "array" } }, "required": [ "vid_encoders", "available_codecs", "max_vid_encoders", "sync_groups", "max_sync_groups" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Video Encoders" ], "description": "Get the list of video encoders present in the device.", "operationId": "Get Video Encoders List", "summary": "Get Video Encoders List" }, "post": { "responses": { "201": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0 } } }, "schema": { "properties": { "id": { "type": "number" } }, "required": [ "id" ], "type": "object" } } }, "description": "Created", "headers": {} } }, "tags": [ "Video Encoders" ], "description": "Create new video encoder with the specified settings.", "operationId": "Create New Video Encoder", "summary": "Create New Video Encoder" } }, "/v2/encoders/vid_encoders/sync_groups": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "max_sync_groups": 0, "sync_groups": [ { "active": false, "sync_group_id": 0 } ] } } }, "schema": { "properties": { "max_sync_groups": { "type": "number" }, "sync_groups": { "items": { "properties": { "active": { "type": "boolean" }, "sync_group_id": { "type": "number" } }, "required": [ "active", "sync_group_id" ], "type": "object" }, "type": "array" } }, "required": [ "sync_groups", "max_sync_groups" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Sync Groups" ], "description": "Get the list of sync groups.", "operationId": "Get Sync Group List", "summary": "Get Sync Group List" }, "post": { "responses": { "201": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0 } } }, "schema": { "properties": { "id": { "type": "number" } }, "required": [ "id" ], "type": "object" } } }, "description": "Created", "headers": {} } }, "tags": [ "Sync Groups" ], "description": "Create sync group with the specified settings.", "operationId": "Create Sync Group", "summary": "Create Sync Group" } }, "/v2/encoders/vid_encoders/sync_groups/{id}": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Sync Groups" ], "description": "Delete the specified sync group.", "operationId": "Delete Sync Group", "summary": "Delete Sync Group" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "active": false, "encoder_ids": [ 1, 2, 3, 4 ], "in_channel_id": 0, "keyframe_interval": { "interval": 100, "interval_range_frames": { "max": 512, "min": 32 }, "interval_range_milliseconds": { "max": 512, "min": 32 }, "possible_units": [ "FRAMES", "MILLISECONDS" ], "unit": "MILLISECONDS" }, "latency_mode": { "possible_values": [ "HIGH", "NORMAL", "LOW", "LOWEST" ], "value": "HIGH" }, "limit_to_30_fps": false, "name": "SyncGroup1", "sync_group_id": 0 } } }, "schema": { "properties": { "active": { "type": "boolean" }, "encoder_ids": { "items": {}, "type": "array" }, "in_channel_id": { "type": "number" }, "keyframe_interval": { "properties": { "interval": { "type": "number" }, "interval_range_frames": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" }, "interval_range_milliseconds": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" }, "possible_units": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "unit": { "type": "string" } }, "required": [ "interval", "unit", "possible_units" ], "type": "object" }, "latency_mode": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "limit_to_30_fps": { "type": "boolean" }, "name": { "type": "string" }, "sync_group_id": { "type": "number" } }, "required": [ "name", "active", "sync_group_id", "in_channel_id", "encoder_ids", "keyframe_interval", "limit_to_30_fps", "latency_mode" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Sync Groups" ], "description": "Get settings for the specified sync group.", "operationId": "Get Sync Group Configuration", "summary": "Get Sync Group Configuration" }, "put": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Sync Groups" ], "description": "Update settings for the specified sync group.", "operationId": "Update Sync Group Configuration", "requestBody": { "content": { "application/json": { "schema": { "example": { "in_channel_id": 0, "keyframe_interval": { "interval": 100, "unit": "MILLISECONDS" }, "latency_mode": { "value": "HIGH" }, "limit_to_30_fps": false, "name": "SyncGroup1" }, "properties": { "in_channel_id": { "type": "number" }, "keyframe_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "latency_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "limit_to_30_fps": { "type": "boolean" }, "name": { "type": "string" } }, "required": [ "name", "in_channel_id", "keyframe_interval", "limit_to_30_fps", "latency_mode" ], "type": "object" } } } }, "summary": "Update Sync Group Configuration" } }, "/v2/encoders/vid_encoders/{id}": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Video Encoders" ], "description": "Delete the specified video encoder.", "operationId": "Delete Video Encoder", "summary": "Delete Video Encoder" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "active": false, "bitrate": { "value": 500, "value_range": { "max": 512, "min": 32 } }, "bitrate_mode": { "possible_values": [ "constant", "variable" ], "value": "variable" }, "codec": { "h264": { "level": { "value": "LVL5P1" }, "profile": { "possible_values": [ "PROFILE_BASELINE", "PROFILE_MAIN", "PROFILE_HIGH" ], "value": "PROFILE_BASELINE" } }, "h265": { "level": { "value": "LVL_5P1_HIGH" }, "profile": { "possible_values": [ "PROFILE_MAIN" ], "value": "PROFILE_MAIN" } }, "possible_values": [ "H264", "H265" ], "value": "H264" }, "in_channel_id": 0, "keyframe_interval": { "interval": 100, "interval_range_frames": { "max": 512, "min": 32 }, "interval_range_milliseconds": { "max": 512, "min": 32 }, "possible_units": [ "FRAMES", "MILLISECONDS" ], "unit": "FRAMES" }, "klv_timestamp_enabled": false, "latency_mode": { "possible_values": [ "HIGH", "NORMAL", "LOW", "LOWEST" ], "value": "HIGH" }, "limit_to_30_fps": false, "name": "VideoEncoder1", "scaling_resolution": { "possible_values": [ "RES_3840X2160", "RES_1920X1080", "RES_1280X720", "RES_960X540", "RES_720X576", "RES_640X360", "RES_480X270", "RES_320X180" ], "value": "RES_1920X1080" }, "seconds_in_status": 0, "status": "DISABLED", "sync_group_id": 0, "vid_encoder_id": 0 } } }, "schema": { "properties": { "active": { "type": "boolean" }, "bitrate": { "properties": { "value": { "type": "number" }, "value_range": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" } }, "required": [ "value", "value_range" ], "type": "object" }, "bitrate_mode": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "codec": { "properties": { "h264": { "properties": { "level": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "profile": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" } }, "required": [ "profile", "level" ], "type": "object" }, "h265": { "properties": { "level": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "profile": { "properties": { "possible_values": { "items": { "type": "string" }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" } }, "required": [ "profile", "level" ], "type": "object" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "in_channel_id": { "type": "number" }, "keyframe_interval": { "properties": { "interval": { "type": "number" }, "interval_range_frames": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" }, "interval_range_milliseconds": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" }, "possible_units": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "unit": { "type": "string" } }, "required": [ "interval", "unit", "possible_units" ], "type": "object" }, "klv_timestamp_enabled": { "type": "boolean" }, "latency_mode": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "limit_to_30_fps": { "type": "boolean" }, "name": { "type": "string" }, "scaling_resolution": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" }, "sync_group_id": { "type": "number" }, "vid_encoder_id": { "type": "number" } }, "required": [ "name", "active", "vid_encoder_id", "in_channel_id", "bitrate", "latency_mode", "bitrate_mode", "keyframe_interval", "scaling_resolution", "limit_to_30_fps", "codec", "klv_timestamp_enabled" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Video Encoders" ], "description": "Get the current encoder settings.", "operationId": "Get Video Encoder Configuration", "summary": "Get Video Encoder Configuration" }, "put": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Video Encoders" ], "description": "Update the current encoder settings.", "operationId": "Update Video Encoder Configuration", "requestBody": { "content": { "application/json": { "schema": { "example": { "bitrate": { "value": 500 }, "bitrate_mode": { "value": "variable" }, "codec": { "h264": { "profile": { "value": "PROFILE_MAIN" } }, "h265": { "profile": { "value": "PROFILE_MAIN" } }, "value": "H264" }, "in_channel_id": 0, "keyframe_interval": { "interval": 100, "unit": "FRAMES" }, "klv_timestamp_enabled": false, "latency_mode": { "value": "HIGH" }, "limit_to_30_fps": false, "name": "VideoEncoder1", "scaling_resolution": { "value": "RES_1920X1080" }, "sync_group_id": 0 }, "properties": { "bitrate": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" }, "bitrate_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "codec": { "properties": { "h264": { "properties": { "profile": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" } }, "required": [ "profile" ], "type": "object" }, "h265": { "properties": { "profile": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" } }, "required": [ "profile" ], "type": "object" }, "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "in_channel_id": { "type": "number" }, "keyframe_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "klv_timestamp_enabled": { "type": "boolean" }, "latency_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "limit_to_30_fps": { "type": "boolean" }, "name": { "type": "string" }, "scaling_resolution": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "sync_group_id": { "type": "number" } }, "required": [ "name", "in_channel_id", "bitrate", "latency_mode", "bitrate_mode", "keyframe_interval", "scaling_resolution", "limit_to_30_fps", "klv_timestamp_enabled", "codec" ], "type": "object" } } } }, "summary": "Update Video Encoder Configuration" } }, "/v2/in_channels": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "in_channels": [ { "in_channel_id": 0 } ] } } }, "schema": { "properties": { "in_channels": { "items": { "properties": { "in_channel_id": { "type": "number" } }, "required": [ "in_channel_id" ], "type": "object" }, "type": "array" } }, "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Input Channels" ], "description": "Get the list of input channels.", "operationId": "Get Input Channel List", "summary": "Get Input Channel List" } }, "/v2/in_channels/{id}": { "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "audio_input": { "detected": false, "possible_values": [ "input_auto", "input_embedded", "input_3p5mm" ], "value": "input_embedded" }, "graphic_overlay": { "enable": false, "image_status": "NO_IMAGE", "position": { "height": 100, "lock_resolution_ratio": { "possible_values": [ "NO_LOCK", "LOCK_TO_WIDTH", "LOCK_TO_HEIGHT" ], "value": "NO_LOCK" }, "preset": { "possible_values": [ "MANUAL", "FULLSCREEN", "LOWER_THIRD", "TOP_LEFT", "BOTTOM_LEFT", "TOP_CENTER", "CENTER", "BOTTOM_CENTER", "TOP_RIGHT", "BOTTOM_RIGHT" ], "value": "MANUAL" }, "width": 100, "x": 0, "y": 0 } }, "in_channel_id": 0, "video_input": { "detected_format": { "value": "FORMAT_1080p60" }, "possible_values": [ "input_auto", "input_hdmi", "input_sdi" ], "value": "input_hdmi" } } } }, "schema": { "properties": { "audio_input": { "properties": { "detected": { "type": "boolean" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "detected" ], "type": "object" }, "graphic_overlay": { "properties": { "enable": { "type": "boolean" }, "image_status": { "type": "string" }, "position": { "properties": { "height": { "type": "number" }, "lock_resolution_ratio": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "preset": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "width": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "required": [ "preset", "x", "y", "width", "height", "lock_resolution_ratio" ], "type": "object" } }, "required": [ "enable", "position", "image_status" ], "type": "object" }, "in_channel_id": { "type": "number" }, "video_input": { "properties": { "detected_format": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "detected_format" ], "type": "object" } }, "required": [ "in_channel_id", "audio_input", "video_input", "graphic_overlay" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Input Channels" ], "description": "Get the input channel configuration.", "operationId": "Get Input Channel Configuration", "summary": "Get Input Channel Configuration" }, "put": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Input Channels" ], "description": "Set the input channel configuration.", "operationId": "Update Input Channel Configuration", "requestBody": { "content": { "application/json": { "schema": { "example": { "audio_input": { "value": "input_embedded" }, "graphic_overlay": { "enable": false, "position": { "height": 100, "lock_resolution_ratio": { "value": "NO_LOCK" }, "preset": { "value": "MANUAL" }, "width": 100, "x": 0, "y": 0 } }, "video_input": { "value": "input_hdmi" } }, "properties": { "audio_input": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "graphic_overlay": { "properties": { "enable": { "type": "boolean" }, "position": { "properties": { "height": { "type": "number" }, "lock_resolution_ratio": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "preset": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "width": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "required": [ "preset", "x", "y", "width", "height", "lock_resolution_ratio" ], "type": "object" } }, "required": [ "enable", "position" ], "type": "object" }, "video_input": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" } }, "required": [ "audio_input", "video_input", "graphic_overlay" ], "type": "object" } } } }, "summary": "Update Input Channel Configuration" } }, "/v2/in_channels/{id}/overlay_graphic": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Input Channels" ], "description": "Delete the stored overlay graphic.", "operationId": "Delete overlay graphic", "summary": "Delete overlay graphic" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "image/png; Content-Transfer-Encoding: base64": { "examples": { "response": { "value": "\n" } } } }, "description": "OK", "headers": {} } }, "tags": [ "Input Channels" ], "description": "", "operationId": "Retrieve Overlay Graphic", "summary": "Retrieve Overlay Graphic" }, "post": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Input Channels" ], "description": "Upload overlay graphic.", "operationId": "Upload Overlay Graphic", "summary": "Upload Overlay Graphic" } }, "/v2/out_streams": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "out_streams": [ { "out_stream_id": 0, "output_type": "unicast" } ] } } }, "schema": { "properties": { "out_streams": { "items": { "properties": { "out_stream_id": { "type": "number" }, "output_type": { "enum": [ "unicast", "multicast", "rtsp", "rtmp", "http_pull", "http_push", "srt", "file", "thumbnail" ], "type": "string" } }, "required": [ "out_stream_id", "output_type" ], "type": "object" }, "type": "array" } }, "required": [ "out_streams" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Output Streams" ], "description": "Get the list of streaming outputs.", "operationId": "Get Encoder Streaming Outputs List", "summary": "Get Encoder Streaming Outputs List" } }, "/v2/out_streams/{id}": { "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "audio_sources": { "audio_source_ids": [], "max_sources": 0 }, "enable": false, "out_stream_id": 0, "output_type": { "file_record": { "available_drives": [ { "free_space": 0, "size": 0, "type": "", "uuid": "" } ], "delete_oldest_when_full": false, "device_selection_policy": { "data": "device_uuid", "possible_values": [ "ATTACH_TIME_FIRST", "ATTACH_TIME_LAST", "FREE_SPACE_MAX", "TOTAL_SPACE_MAX", "VOLUME_UUID" ], "value": "ATTACH_TIME_FIRST" }, "file_format": { "possible_values": [ "MP4", "TS", "FMP4" ], "value": "TS" }, "filename_base": "VID", "filename_timezone": { "possible_values": [ "UTC", "LOCALTIME" ], "value": "UTC" }, "ftp_upload": { "bytes_uploaded": 0, "delete_file_after_upload": false, "enable": false, "file_path": "recordings", "files_remaining": 0, "password": "password", "port": 21, "protocol": { "possible_values": [ "FTP", "SFTP" ], "value": "FTP" }, "seconds_elapsed": 0, "server": "my.ftp.com", "status": "", "total_bytes": 0, "username": "admin" }, "limit_max_file_size": { "enable": true, "value": 1000000 }, "selected_device_name": "84C4-6DDE", "status": "`FILE_NO_STORAGE_DEVICE" }, "http_pull": { "media_container": { "possible_values": [ "TS", "FMP4" ], "value": "FMP4" }, "number_of_segments": 0, "protocols": [ "DASH", "HLS" ], "segment_length": 0, "ultra_low_latency": { "chunk_interval": { "interval": 0, "possible_units": [ "MILLISECONDS", "FRAMES" ], "unit": "MILLISECONDS" }, "enable": false } }, "http_push": { "manifest_type": { "available_protocols": [ "HLS", "DASH" ], "protocols": [ "HLS", "DASH" ] }, "media_container": { "possible_values": [ "TS", "FMP4" ], "value": "FMP4" }, "number_of_segments": 10, "save_segment_window": false, "segment_length": 2, "service": { "data": "{}", "possible_values": [ "generic", "akamai" ], "value": "generic" }, "synchronization": { "dash_presentation_delay": 0, "enable": false }, "ultra_low_latency": { "chunk_interval": { "interval": 0, "possible_units": [ "MILLISECONDS", "FRAMES" ], "unit": "MILLISECONDS" }, "enable": false } }, "multicast": { "multicast_ip": "1.2.3.4", "multicast_port": 1234, "protocol": "RTP", "ttl": 0 }, "rtmp": { "service": { "data": "{}", "possible_values": [ "generic", "akamai", "wowza", "wowza_cloud", "youtube", "facebook", "aws_ivs", "mux" ], "value": "generic" }, "status": "STREAM_OFF" }, "rtsp": { "server_port": 5555, "stream_name": "test" }, "srt": { "bw_overhead": 25, "call_mode": { "possible_values": [ "CALLER", "LISTENER" ], "value": "CALLER" }, "dest_ip": "1.2.3.4 || stream.url", "dest_port": 5555, "key_size": { "possible_values": [ "AES128", "AES192", "AES256" ], "value": "AES128" }, "latency": 120, "passphrase": "abc123", "status": "STREAM_OFF", "stream_id": "stream1" }, "thumbnail": { "interval": { "value": 1, "value_range": { "max": 512, "min": 32 } }, "width": { "value": 320, "value_range": { "max": 512, "min": 32 } } }, "unicast": { "destination_ip": "1.2.3.4", "destination_port": 1234, "protocol": "RTP" }, "value": "unicast" }, "video_sources": { "max_sources": 0, "video_source_ids": [] } } } }, "schema": { "properties": { "audio_sources": { "properties": { "audio_source_ids": { "items": { "type": "number" }, "type": "array" }, "max_sources": { "type": "number" } }, "required": [ "max_sources", "audio_source_ids" ], "type": "object" }, "enable": { "type": "boolean" }, "out_stream_id": { "type": "number" }, "output_type": { "properties": { "file_record": { "properties": { "available_drives": { "items": {}, "type": "array" }, "delete_oldest_when_full": { "type": "boolean" }, "device_selection_policy": { "properties": { "data": { "type": "string" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "data" ], "type": "object" }, "file_format": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "filename_base": { "type": "string" }, "filename_timezone": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "ftp_upload": { "properties": { "bytes_uploaded": { "type": "number" }, "delete_file_after_upload": { "type": "boolean" }, "enable": { "type": "boolean" }, "file_path": { "type": "string" }, "files_remaining": { "type": "number" }, "password": { "type": "string" }, "port": { "type": "number" }, "protocol": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "enum": [ "FTP", "SFTP" ], "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "seconds_elapsed": { "type": "number" }, "server": { "type": "string" }, "status": { "type": "string" }, "total_bytes": { "type": "number" }, "username": { "type": "string" } }, "required": [ "enable", "server", "port", "username", "password", "file_path", "delete_file_after_upload", "bytes_uploaded", "total_bytes", "seconds_elapsed", "files_remaining", "status" ], "type": "object" }, "limit_max_file_size": { "properties": { "enable": { "type": "boolean" }, "value": { "type": "number" } }, "required": [ "enable", "value" ], "type": "object" }, "selected_device_name": { "type": "string" }, "status": { "type": "string" } }, "required": [ "filename_base", "filename_timezone", "selected_device_name", "available_drives", "status", "file_format", "device_selection_policy" ], "type": "object" }, "http_pull": { "properties": { "media_container": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "number_of_segments": { "type": "number" }, "protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "segment_length": { "type": "number" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "possible_units": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "unit": { "type": "string" } }, "required": [ "interval", "unit", "possible_units" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "required": [ "protocols" ], "type": "object" }, "http_push": { "properties": { "manifest_type": { "properties": { "available_protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" } }, "required": [ "protocols", "available_protocols" ], "type": "object" }, "media_container": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "number_of_segments": { "type": "number" }, "save_segment_window": { "type": "boolean" }, "segment_length": { "type": "number" }, "service": { "properties": { "data": { "type": "string" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "data" ], "type": "object" }, "synchronization": { "properties": { "dash_presentation_delay": { "type": "number" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "possible_units": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "unit": { "type": "string" } }, "required": [ "interval", "unit", "possible_units" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "type": "object" }, "multicast": { "properties": { "multicast_ip": { "type": "string" }, "multicast_port": { "type": "number" }, "protocol": { "type": "string" }, "ttl": { "type": "number" } }, "type": "object" }, "rtmp": { "properties": { "service": { "properties": { "data": { "type": "string" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "data" ], "type": "object" }, "status": { "type": "string" } }, "required": [ "status", "service" ], "type": "object" }, "rtsp": { "properties": { "server_port": { "type": "number" }, "stream_name": { "type": "string" } }, "type": "object" }, "srt": { "properties": { "bw_overhead": { "type": "number" }, "call_mode": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "dest_ip": { "type": "string" }, "dest_port": { "type": "number" }, "key_size": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "latency": { "type": "number" }, "passphrase": { "type": "string" }, "status": { "type": "string" }, "stream_id": { "type": "string" } }, "required": [ "status", "dest_ip", "dest_port", "latency", "bw_overhead" ], "type": "object" }, "thumbnail": { "properties": { "interval": { "properties": { "value": { "type": "number" }, "value_range": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" } }, "required": [ "value", "value_range" ], "type": "object" }, "width": { "properties": { "value": { "type": "number" }, "value_range": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" } }, "required": [ "value", "value_range" ], "type": "object" } }, "required": [ "interval", "width" ], "type": "object" }, "unicast": { "properties": { "destination_ip": { "type": "string" }, "destination_port": { "type": "number" }, "protocol": { "type": "string" } }, "type": "object" }, "value": { "enum": [ "unicast", "multicast", "rtsp", "rtmp", "http_pull", "http_push", "srt", "file", "thumbnail" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "video_sources": { "properties": { "max_sources": { "type": "number" }, "video_source_ids": { "items": { "type": "number" }, "type": "array" } }, "required": [ "max_sources", "video_source_ids" ], "type": "object" } }, "required": [ "out_stream_id", "enable", "output_type" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Output Streams" ], "description": "Get the state of a single streaming output", "operationId": "Get Encoder Streaming Output", "summary": "Get Encoder Streaming Output" }, "put": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Output Streams" ], "description": "Update the state of a single encoder streaming output", "operationId": "Update Encoder Streaming Output", "requestBody": { "content": { "application/json": { "schema": { "example": { "audio_sources": { "audio_source_ids": [] }, "enable": false, "output_type": { "file_record": { "delete_oldest_when_full": false, "device_selection_policy": { "data": "device_uuid", "value": "ATTACH_TIME_FIRST" }, "file_format": { "value": "TS" }, "filename_base": "VID", "filename_timezone": { "value": "UTC" }, "ftp_upload": { "delete_file_after_upload": false, "enable": false, "file_path": "recordings", "password": "password", "port": 21, "protocol": { "value": "FTP" }, "server": "my.ftp.com", "sftp_key": "string", "username": "admin" }, "limit_max_file_size": { "enable": true, "value": 1000000 } }, "http_pull": { "media_container": { "value": "FMP4" }, "number_of_segments": 0, "segment_length": 0, "ultra_low_latency": { "chunk_interval": { "interval": 0, "unit": "MILLISECONDS" }, "enable": false } }, "http_push": { "manifest_type": { "protocols": [ "HLS", "DASH" ] }, "media_container": { "value": "FMP4" }, "number_of_segments": 10, "save_segment_window": false, "segment_length": 2, "service": { "data": "{}", "value": "generic" }, "synchronization": { "dash_presentation_delay": 0, "enable": false }, "ultra_low_latency": { "chunk_interval": { "interval": 0, "unit": "MILLISECONDS" }, "enable": false } }, "multicast": { "multicast_ip": "1.2.3.4", "multicast_port": 1234, "protocol": "RTP", "ttl": 0 }, "rtmp": { "service": { "data": "{}", "value": "generic" } }, "rtsp": { "server_port": 5555, "stream_name": "test" }, "srt": { "bw_overhead": 25, "call_mode": { "value": "CALLER" }, "dest_ip": "1.2.3.4 || stream.url", "dest_port": 5555, "key_size": { "value": "AES128" }, "latency": 120, "passphrase": "abc123", "stream_id": "stream1" }, "thumbnail": { "interval": { "value": 1 }, "width": { "value": 320 } }, "unicast": { "destination_ip": "1.2.3.4", "destination_port": 1234, "protocol": "RTP" }, "value": "unicast" }, "video_sources": { "video_source_ids": [] } }, "properties": { "audio_sources": { "properties": { "audio_source_ids": { "items": { "type": "number" }, "type": "array" } }, "required": [ "audio_source_ids" ], "type": "object" }, "enable": { "type": "boolean" }, "output_type": { "properties": { "file_record": { "properties": { "delete_oldest_when_full": { "type": "boolean" }, "device_selection_policy": { "properties": { "data": { "type": "string" }, "value": { "type": "string" } }, "required": [ "value", "data" ], "type": "object" }, "file_format": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "filename_base": { "type": "string" }, "filename_timezone": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "ftp_upload": { "properties": { "delete_file_after_upload": { "type": "boolean" }, "enable": { "type": "boolean" }, "file_path": { "type": "string" }, "password": { "type": "string" }, "port": { "type": "number" }, "protocol": { "properties": { "value": { "enum": [ "FTP", "SFTP" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "server": { "type": "string" }, "sftp_key": { "type": "string" }, "username": { "type": "string" } }, "required": [ "enable", "server", "port", "username", "password", "file_path", "delete_file_after_upload" ], "type": "object" }, "limit_max_file_size": { "properties": { "enable": { "type": "boolean" }, "value": { "type": "number" } }, "required": [ "enable", "value" ], "type": "object" } }, "required": [ "filename_base", "filename_timezone", "file_format", "device_selection_policy" ], "type": "object" }, "http_pull": { "properties": { "media_container": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "number_of_segments": { "type": "number" }, "segment_length": { "type": "number" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "type": "object" }, "http_push": { "properties": { "manifest_type": { "properties": { "protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" } }, "required": [ "protocols" ], "type": "object" }, "media_container": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "number_of_segments": { "type": "number" }, "save_segment_window": { "type": "boolean" }, "segment_length": { "type": "number" }, "service": { "properties": { "data": { "type": "string" }, "value": { "type": "string" } }, "required": [ "value", "data" ], "type": "object" }, "synchronization": { "properties": { "dash_presentation_delay": { "type": "number" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "type": "object" }, "multicast": { "properties": { "multicast_ip": { "type": "string" }, "multicast_port": { "type": "number" }, "protocol": { "type": "string" }, "ttl": { "type": "number" } }, "type": "object" }, "rtmp": { "properties": { "service": { "properties": { "data": { "type": "string" }, "value": { "type": "string" } }, "required": [ "value", "data" ], "type": "object" } }, "required": [ "service" ], "type": "object" }, "rtsp": { "properties": { "server_port": { "type": "number" }, "stream_name": { "type": "string" } }, "type": "object" }, "srt": { "properties": { "bw_overhead": { "type": "number" }, "call_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "dest_ip": { "type": "string" }, "dest_port": { "type": "number" }, "key_size": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "latency": { "type": "number" }, "passphrase": { "type": "string" }, "stream_id": { "type": "string" } }, "required": [ "dest_ip", "dest_port" ], "type": "object" }, "thumbnail": { "properties": { "interval": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" }, "width": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" } }, "required": [ "interval", "width" ], "type": "object" }, "unicast": { "properties": { "destination_ip": { "type": "string" }, "destination_port": { "type": "number" }, "protocol": { "type": "string" } }, "type": "object" }, "value": { "enum": [ "unicast", "multicast", "rtsp", "rtmp", "http_pull", "http_push", "file", "srt", "thumbnail" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "video_sources": { "properties": { "video_source_ids": { "items": { "type": "number" }, "type": "array" } }, "required": [ "video_source_ids" ], "type": "object" } }, "required": [ "enable", "output_type" ], "type": "object" } } } }, "summary": "Update Encoder Streaming Output" } }, "/v2/out_streams/{id}/action/authenticate_ftp": { "post": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "result": "SUCCESS" } } }, "schema": { "properties": { "result": { "enum": [ "SUCCESS", "FAILURE_SERVER_UNREACHABLE", "FAILURE_AUTHENTICATION", "FAILURE_PERMISSIONS" ], "type": "string" } }, "required": [ "result" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Output Streams" ], "description": "Validate the FTP server configuration provided in the request. If 'password' is not provided, then the currently saved one will be used.", "operationId": "File Record - Validate FTP", "requestBody": { "content": { "application/json": { "schema": { "example": { "file_path": "recordings", "password": "password", "server": "my.ftp.com", "username": "admin" }, "properties": { "file_path": { "type": "string" }, "password": { "type": "string" }, "server": { "type": "string" }, "username": { "type": "string" } }, "type": "object" } } } }, "summary": "File Record - Validate FTP" } }, "/v2/out_streams/{id}/action/{action_name}": { "post": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } }, { "description": "", "example": "pair, account_info, streamlist, authenticate_ftp", "in": "path", "name": "action_name", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "OK", "headers": {} } }, "tags": [ "Output Streams" ], "description": "Run action for output, often supported by RTMP outputs, to support third-party API calls.", "operationId": "General Output Actions", "summary": "General Output Actions" } }, "/v2/storage": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": [ { "devno": 2145, "devpath": "/dev/block/sdg1", "devtime_us": 1575662248234999, "disk_devno": 2144, "fslimits": { "max_file_size_bytes": 4294967295, "max_filename_length": 255, "max_path_length": 4096, "max_volume_size_bytes": 17592186044416 }, "fstype": "vfat", "kind": "PARTITION", "label": "VOLUMEONE", "model": "StorageModel", "mount": { "avail_bytes": 8874713088, "blocksize_bytes": 8192, "devno": 2145, "dir": "/mnt/media_rw/84C4-6DDE", "freq": 0, "fsname": "/dev/block/vold/public:8,97", "opts": "rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro", "passno": 0, "size_bytes": 15588130816, "type": "vfat" }, "partno": "1", "size_bytes": 15604908032, "syspath": "/sys/devices/soc/6a00000.ssusb/6a00000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1:1.0/host2/target2:0:0/2:0:0:0/block/sdg/sdg1", "type": "USB", "usage": "filesystem", "uuid": "84C4-6DDE", "vendor": "StorageVendor", "version": "FAT32" } ] } }, "schema": { "items": { "properties": { "devno": { "type": "number" }, "devpath": { "type": "string" }, "devtime_us": { "type": "number" }, "disk_devno": { "type": "number" }, "fslimits": { "properties": { "max_file_size_bytes": { "type": "number" }, "max_filename_length": { "type": "number" }, "max_path_length": { "type": "number" }, "max_volume_size_bytes": { "type": "number" } }, "required": [ "max_volume_size_bytes", "max_file_size_bytes", "max_filename_length", "max_path_length" ], "type": "object" }, "fstype": { "type": "string" }, "kind": { "type": "string" }, "label": { "type": "string" }, "model": { "type": "string" }, "mount": { "properties": { "avail_bytes": { "type": "number" }, "blocksize_bytes": { "type": "number" }, "devno": { "type": "number" }, "dir": { "type": "string" }, "freq": { "type": "number" }, "fsname": { "type": "string" }, "opts": { "type": "string" }, "passno": { "type": "number" }, "size_bytes": { "type": "number" }, "type": { "type": "string" } }, "required": [ "devno", "fsname", "dir", "type", "opts", "freq", "passno", "size_bytes", "avail_bytes", "blocksize_bytes" ], "type": "object" }, "partno": { "type": "string" }, "size_bytes": { "type": "number" }, "syspath": { "type": "string" }, "type": { "type": "string" }, "usage": { "type": "string" }, "uuid": { "type": "string" }, "vendor": { "type": "string" }, "version": { "type": "string" } }, "required": [ "devpath", "syspath", "devno", "devtime_us", "fstype", "version", "label", "uuid", "usage", "kind", "disk_devno", "partno", "type", "vendor", "model", "size_bytes", "mount", "fslimits" ], "type": "object" }, "type": "array" } } }, "description": "OK", "headers": {} } }, "tags": [ "Storage" ], "description": "Get a list of storage devices.", "operationId": "List Storage Devices", "summary": "List Storage Devices" } }, "/v2/storage/{devno}": { "get": { "parameters": [ { "description": "", "example": "2145", "in": "path", "name": "devno", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "devno": 2145, "devpath": "/dev/block/sdg1", "devtime_us": 1575662248234999, "disk_devno": 2144, "fslimits": { "max_file_size_bytes": 4294967295, "max_filename_length": 255, "max_path_length": 4096, "max_volume_size_bytes": 17592186044416 }, "fstype": "vfat", "kind": "PARTITION", "label": "VOLUMEONE", "model": "StorageModel", "mount": { "avail_bytes": 8874713088, "blocksize_bytes": 8192, "devno": 2145, "dir": "/mnt/media_rw/84C4-6DDE", "freq": 0, "fsname": "/dev/block/vold/public:8,97", "opts": "rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro", "passno": 0, "size_bytes": 15588130816, "type": "vfat" }, "partno": "1", "size_bytes": 15604908032, "syspath": "/sys/devices/soc/6a00000.ssusb/6a00000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1:1.0/host2/target2:0:0/2:0:0:0/block/sdg/sdg1", "type": "USB", "usage": "filesystem", "uuid": "84C4-6DDE", "vendor": "StorageVendor", "version": "FAT32" } } }, "schema": { "additionalProperties": false, "properties": { "devno": { "type": "number" }, "devpath": { "type": "string" }, "devtime_us": { "type": "number" }, "disk_devno": { "type": "number" }, "fslimits": { "properties": { "max_file_size_bytes": { "type": "number" }, "max_filename_length": { "type": "number" }, "max_path_length": { "type": "number" }, "max_volume_size_bytes": { "type": "number" } }, "required": [ "max_volume_size_bytes", "max_file_size_bytes", "max_filename_length", "max_path_length" ], "type": "object" }, "fstype": { "type": "string" }, "kind": { "type": "string" }, "label": { "type": "string" }, "model": { "type": "string" }, "mount": { "properties": { "avail_bytes": { "type": "number" }, "blocksize_bytes": { "type": "number" }, "devno": { "type": "number" }, "dir": { "type": "string" }, "freq": { "type": "number" }, "fsname": { "type": "string" }, "opts": { "type": "string" }, "passno": { "type": "number" }, "size_bytes": { "type": "number" }, "type": { "type": "string" } }, "required": [ "devno", "fsname", "dir", "type", "opts", "freq", "passno", "size_bytes", "avail_bytes", "blocksize_bytes" ], "type": "object" }, "partno": { "type": "string" }, "size_bytes": { "type": "number" }, "syspath": { "type": "string" }, "type": { "type": "string" }, "usage": { "type": "string" }, "uuid": { "type": "string" }, "vendor": { "type": "string" }, "version": { "type": "string" } }, "required": [ "devpath", "syspath", "devno", "devtime_us", "fstype", "version", "label", "uuid", "usage", "kind", "disk_devno", "partno", "type", "vendor", "model", "size_bytes", "mount", "fslimits" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Storage" ], "description": "Get storage device information for the specified device.", "operationId": "Get Storage Device Info", "summary": "Get Storage Device Info" } }, "/v2/storage/{devno}/format": { "post": { "parameters": [ { "description": "", "example": "2145", "in": "path", "name": "devno", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "OK", "headers": {} } }, "tags": [ "Storage" ], "description": "Format the specified device.", "operationId": "Format Storage Device", "summary": "Format Storage Device" } }, "/v2/storage/{devno}/unmount": { "post": { "parameters": [ { "description": "", "example": "2145", "in": "path", "name": "devno", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "OK", "headers": {} } }, "tags": [ "Storage" ], "description": "Unmount the specified device.", "operationId": "Unmount Storage Device", "summary": "Unmount Storage Device" } }, "/v2/system": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "clock": { "ntp_server": "time.nist.gov", "timezone": "America/New_York" }, "device_id": "deviceid", "device_name": "StreamDevices1", "ip_address": "1.2.3.4", "ip_scheme": "dhcp", "mac_address": "ab:cd:ef:12:34:56", "net_connected": true, "static_network": { "dns_address": "5.6.7.8", "gateway": "1.2.3.1", "ip_address": "1.2.3.4", "netmask": "255.255.255.0" }, "version": "versionstring", "xml": { "enabled": false, "poll_interval": 10, "url": "http://get.your.xml.here/test.xml" } } } }, "schema": { "properties": { "clock": { "properties": { "ntp_server": { "type": "string" }, "timezone": { "type": "string" } }, "required": [ "ntp_server", "timezone" ], "type": "object" }, "device_id": { "type": "string" }, "device_name": { "type": "string" }, "ip_address": { "type": "string" }, "ip_scheme": { "type": "string" }, "mac_address": { "type": "string" }, "net_connected": { "type": "boolean" }, "static_network": { "properties": { "dns_address": { "type": "string" }, "gateway": { "type": "string" }, "ip_address": { "type": "string" }, "netmask": { "type": "string" } }, "required": [ "ip_address", "netmask", "gateway", "dns_address" ], "type": "object" }, "version": { "type": "string" }, "xml": { "properties": { "enabled": { "type": "boolean" }, "poll_interval": { "type": "number" }, "url": { "type": "string" } }, "required": [ "enabled", "url", "poll_interval" ], "type": "object" } }, "required": [ "device_name", "ip_scheme", "net_connected", "mac_address", "ip_address", "static_network", "version", "device_id", "clock" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "System" ], "description": "Get the system-wide settings for the device.\n\nThese settings include network settings, name, id and other attributes not related to encode or media transmission.", "operationId": "Get System Settings", "summary": "Get System Settings" }, "put": { "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "System" ], "description": "Update the system-wide settings for the device.\n\nThese settings include network settings, name, id and other attributes not related to encode or media transmission.", "operationId": "Update System Settings", "requestBody": { "content": { "application/json": { "schema": { "example": { "clock": { "ntp_server": "time.nist.gov", "timezone": "America/New_York" }, "device_name": "StreamDevices1", "ip_scheme": "static", "static_network": { "dns_address": "5.6.7.8", "gateway": "1.2.3.1", "ip_address": "1.2.3.4", "netmask": "255.255.255.0" }, "xml": { "enabled": false, "poll_interval": 10, "url": "http://get.your.xml.here/test.xml" } }, "properties": { "clock": { "properties": { "ntp_server": { "type": "string" }, "timezone": { "type": "string" } }, "required": [ "ntp_server", "timezone" ], "type": "object" }, "device_name": { "type": "string" }, "ip_scheme": { "type": "string" }, "static_network": { "properties": { "dns_address": { "type": "string" }, "gateway": { "type": "string" }, "ip_address": { "type": "string" }, "netmask": { "type": "string" } }, "required": [ "ip_address", "netmask", "gateway", "dns_address" ], "type": "object" }, "xml": { "properties": { "enabled": { "type": "boolean" }, "poll_interval": { "type": "number" }, "url": { "type": "string" } }, "required": [ "enabled", "url", "poll_interval" ], "type": "object" } }, "required": [ "device_name", "ip_scheme", "static_network", "clock" ], "type": "object" } } } }, "summary": "Update System Settings" } }, "/v2/xml": { "get": { "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "xml": { "enabled": false, "password": "", "poll_interval": 10, "url": "http://get.your.xml.here/test.xml", "username": "" } } } }, "schema": { "properties": { "xml": { "properties": { "enabled": { "type": "boolean" }, "password": { "type": "string" }, "poll_interval": { "type": "number" }, "url": { "type": "string" }, "username": { "type": "string" } }, "required": [ "enabled", "url", "poll_interval" ], "type": "object" } }, "required": [ "xml" ], "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "XML" ], "description": "Get the XML polling settings for the device.", "operationId": "Get XML Settings", "summary": "Get XML Settings" }, "put": { "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "XML" ], "description": "Update the XML polling settings for the device.", "operationId": "Update XML Settings", "requestBody": { "content": { "application/json": { "schema": { "example": { "xml": { "enabled": false, "password": "", "poll_interval": 10, "url": "http://get.your.xml.here/test.xml", "username": "" } }, "properties": { "xml": { "properties": { "enabled": { "type": "boolean" }, "password": { "type": "string" }, "poll_interval": { "type": "number" }, "url": { "type": "string" }, "username": { "type": "string" } }, "required": [ "enabled", "url", "poll_interval" ], "type": "object" } }, "required": [ "xml" ], "type": "object" } } } }, "summary": "Update XML Settings" } } }, "components": { "schemas": { "AudEncoder": { "properties": { "active": { "type": "boolean" }, "aud_encoder_id": { "type": "number" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "aud_encoder_id", "active" ], "type": "object" }, "AudEncoderWrite": { "properties": { "bitrate": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" }, "bitrate_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "channel_configuration": { "properties": { "selected_channels": { "items": { "anyOf": [ { "type": "number" }, { "type": "number" } ] }, "type": "array" } }, "required": [ "selected_channels" ], "type": "object" }, "codec": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "in_channel_id": { "type": "number" }, "mix_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "name": { "type": "string" } }, "required": [ "name", "in_channel_id", "codec", "mix_mode", "bitrate", "bitrate_mode", "channel_configuration" ], "type": "object" }, "Audio_Encoder_Configuration": {}, "Audio_Encoders": {}, "ClockSettings": { "properties": { "ntp_server": { "type": "string" }, "timezone": { "type": "string" } }, "required": [ "ntp_server", "timezone" ], "type": "object" }, "CodecParamsRead264": { "properties": { "level": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "profile": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" } }, "required": [ "profile", "level" ], "type": "object" }, "CodecParamsRead265": { "properties": { "level": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "profile": { "properties": { "possible_values": { "items": { "type": "string" }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" } }, "required": [ "profile", "level" ], "type": "object" }, "CodecParamsWrite": { "properties": { "profile": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" } }, "required": [ "profile" ], "type": "object" }, "DataEncoder": { "properties": { "active": { "type": "boolean" }, "codec": { "enum": [ "klv_sync", "scte35" ], "type": "string" }, "data_encoder_id": { "type": "number" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" } }, "required": [ "data_encoder_id", "codec", "active" ], "type": "object" }, "Data_Encoder_Actions": {}, "Data_Encoder_Configuration": {}, "Data_Encoders": {}, "DriveInfo": { "properties": { "free_space": { "type": "number" }, "size": { "type": "number" }, "type": { "type": "string" }, "uuid": { "type": "string" } }, "required": [ "uuid", "type", "size", "free_space" ], "type": "object" }, "Encoder_Streaming_Output": {}, "Encoder_Streaming_Outputs_List": {}, "Encoders": {}, "FileRecordRead": { "properties": { "available_drives": { "items": {}, "type": "array" }, "delete_oldest_when_full": { "type": "boolean" }, "device_selection_policy": { "properties": { "data": { "type": "string" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "data" ], "type": "object" }, "file_format": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "filename_base": { "type": "string" }, "filename_timezone": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "ftp_upload": { "properties": { "bytes_uploaded": { "type": "number" }, "delete_file_after_upload": { "type": "boolean" }, "enable": { "type": "boolean" }, "file_path": { "type": "string" }, "files_remaining": { "type": "number" }, "password": { "type": "string" }, "port": { "type": "number" }, "protocol": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "enum": [ "FTP", "SFTP" ], "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "seconds_elapsed": { "type": "number" }, "server": { "type": "string" }, "status": { "type": "string" }, "total_bytes": { "type": "number" }, "username": { "type": "string" } }, "required": [ "enable", "server", "port", "username", "password", "file_path", "delete_file_after_upload", "bytes_uploaded", "total_bytes", "seconds_elapsed", "files_remaining", "status" ], "type": "object" }, "limit_max_file_size": { "properties": { "enable": { "type": "boolean" }, "value": { "type": "number" } }, "required": [ "enable", "value" ], "type": "object" }, "selected_device_name": { "type": "string" }, "status": { "type": "string" } }, "required": [ "filename_base", "filename_timezone", "selected_device_name", "available_drives", "status", "file_format", "device_selection_policy" ], "type": "object" }, "FileRecordWrite": { "properties": { "delete_oldest_when_full": { "type": "boolean" }, "device_selection_policy": { "properties": { "data": { "type": "string" }, "value": { "type": "string" } }, "required": [ "value", "data" ], "type": "object" }, "file_format": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "filename_base": { "type": "string" }, "filename_timezone": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "ftp_upload": { "properties": { "delete_file_after_upload": { "type": "boolean" }, "enable": { "type": "boolean" }, "file_path": { "type": "string" }, "password": { "type": "string" }, "port": { "type": "number" }, "protocol": { "properties": { "value": { "enum": [ "FTP", "SFTP" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "server": { "type": "string" }, "sftp_key": { "type": "string" }, "username": { "type": "string" } }, "required": [ "enable", "server", "port", "username", "password", "file_path", "delete_file_after_upload" ], "type": "object" }, "limit_max_file_size": { "properties": { "enable": { "type": "boolean" }, "value": { "type": "number" } }, "required": [ "enable", "value" ], "type": "object" } }, "required": [ "filename_base", "filename_timezone", "file_format", "device_selection_policy" ], "type": "object" }, "HttpPullRead": { "properties": { "media_container": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "number_of_segments": { "type": "number" }, "protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "segment_length": { "type": "number" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "possible_units": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "unit": { "type": "string" } }, "required": [ "interval", "unit", "possible_units" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "required": [ "protocols" ], "type": "object" }, "HttpPullWrite": { "properties": { "media_container": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "number_of_segments": { "type": "number" }, "segment_length": { "type": "number" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "type": "object" }, "HttpPushRead": { "properties": { "manifest_type": { "properties": { "available_protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" } }, "required": [ "protocols", "available_protocols" ], "type": "object" }, "media_container": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "number_of_segments": { "type": "number" }, "save_segment_window": { "type": "boolean" }, "segment_length": { "type": "number" }, "service": { "properties": { "data": { "type": "string" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "data" ], "type": "object" }, "synchronization": { "properties": { "dash_presentation_delay": { "type": "number" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "possible_units": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "unit": { "type": "string" } }, "required": [ "interval", "unit", "possible_units" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "type": "object" }, "HttpPushWrite": { "properties": { "manifest_type": { "properties": { "protocols": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" } }, "required": [ "protocols" ], "type": "object" }, "media_container": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "number_of_segments": { "type": "number" }, "save_segment_window": { "type": "boolean" }, "segment_length": { "type": "number" }, "service": { "properties": { "data": { "type": "string" }, "value": { "type": "string" } }, "required": [ "value", "data" ], "type": "object" }, "synchronization": { "properties": { "dash_presentation_delay": { "type": "number" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" }, "ultra_low_latency": { "properties": { "chunk_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "enable": { "type": "boolean" } }, "required": [ "enable" ], "type": "object" } }, "type": "object" }, "InChannel": { "properties": { "in_channel_id": { "type": "number" } }, "required": [ "in_channel_id" ], "type": "object" }, "Input_Channel_Configuration": {}, "Input_Channels": {}, "KlvSync": { "properties": {}, "type": "object" }, "Multicast": { "properties": { "multicast_ip": { "type": "string" }, "multicast_port": { "type": "number" }, "protocol": { "type": "string" }, "ttl": { "type": "number" } }, "type": "object" }, "OutStream": { "properties": { "out_stream_id": { "type": "number" }, "output_type": { "enum": [ "unicast", "multicast", "rtsp", "rtmp", "http_pull", "http_push", "srt", "file", "thumbnail" ], "type": "string" } }, "required": [ "out_stream_id", "output_type" ], "type": "object" }, "Output_Actions": {}, "Overlay_Graphic": {}, "Range": { "properties": { "max": { "type": "number" }, "min": { "type": "number" } }, "required": [ "min", "max" ], "type": "object" }, "RtmpRead": { "properties": { "service": { "properties": { "data": { "type": "string" }, "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values", "data" ], "type": "object" }, "status": { "type": "string" } }, "required": [ "status", "service" ], "type": "object" }, "RtmpWrite": { "properties": { "service": { "properties": { "data": { "type": "string" }, "value": { "type": "string" } }, "required": [ "value", "data" ], "type": "object" } }, "required": [ "service" ], "type": "object" }, "Rtsp": { "properties": { "server_port": { "type": "number" }, "stream_name": { "type": "string" } }, "type": "object" }, "SCTE35": { "properties": { "splice_duration": { "type": "number" } }, "required": [ "splice_duration" ], "type": "object" }, "SRTRead": { "properties": { "bw_overhead": { "type": "number" }, "call_mode": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "dest_ip": { "type": "string" }, "dest_port": { "type": "number" }, "key_size": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" }, "latency": { "type": "number" }, "passphrase": { "type": "string" }, "status": { "type": "string" }, "stream_id": { "type": "string" } }, "required": [ "status", "dest_ip", "dest_port", "latency", "bw_overhead" ], "type": "object" }, "SRTWrite": { "properties": { "bw_overhead": { "type": "number" }, "call_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "dest_ip": { "type": "string" }, "dest_port": { "type": "number" }, "key_size": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "latency": { "type": "number" }, "passphrase": { "type": "string" }, "stream_id": { "type": "string" } }, "required": [ "dest_ip", "dest_port" ], "type": "object" }, "StaticNetworkSettings": { "properties": { "dns_address": { "type": "string" }, "gateway": { "type": "string" }, "ip_address": { "type": "string" }, "netmask": { "type": "string" } }, "required": [ "ip_address", "netmask", "gateway", "dns_address" ], "type": "object" }, "Storage": { "properties": { "devno": { "type": "number" }, "devpath": { "type": "string" }, "devtime_us": { "type": "number" }, "disk_devno": { "type": "number" }, "fslimits": { "properties": { "max_file_size_bytes": { "type": "number" }, "max_filename_length": { "type": "number" }, "max_path_length": { "type": "number" }, "max_volume_size_bytes": { "type": "number" } }, "required": [ "max_volume_size_bytes", "max_file_size_bytes", "max_filename_length", "max_path_length" ], "type": "object" }, "fstype": { "type": "string" }, "kind": { "type": "string" }, "label": { "type": "string" }, "model": { "type": "string" }, "mount": { "properties": { "avail_bytes": { "type": "number" }, "blocksize_bytes": { "type": "number" }, "devno": { "type": "number" }, "dir": { "type": "string" }, "freq": { "type": "number" }, "fsname": { "type": "string" }, "opts": { "type": "string" }, "passno": { "type": "number" }, "size_bytes": { "type": "number" }, "type": { "type": "string" } }, "required": [ "devno", "fsname", "dir", "type", "opts", "freq", "passno", "size_bytes", "avail_bytes", "blocksize_bytes" ], "type": "object" }, "partno": { "type": "string" }, "size_bytes": { "type": "number" }, "syspath": { "type": "string" }, "type": { "type": "string" }, "usage": { "type": "string" }, "uuid": { "type": "string" }, "vendor": { "type": "string" }, "version": { "type": "string" } }, "required": [ "devpath", "syspath", "devno", "devtime_us", "fstype", "version", "label", "uuid", "usage", "kind", "disk_devno", "partno", "type", "vendor", "model", "size_bytes", "mount", "fslimits" ], "type": "object" }, "Storage_Devices": {}, "SyncGroup": { "properties": { "active": { "type": "boolean" }, "sync_group_id": { "type": "number" } }, "required": [ "active", "sync_group_id" ], "type": "object" }, "SyncGroupWrite": { "properties": { "in_channel_id": { "type": "number" }, "keyframe_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "latency_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "limit_to_30_fps": { "type": "boolean" }, "name": { "type": "string" } }, "required": [ "name", "in_channel_id", "keyframe_interval", "limit_to_30_fps", "latency_mode" ], "type": "object" }, "Sync_Group_Configuration": {}, "Sync_Groups": {}, "System": {}, "SystemXmlSettings": { "properties": { "enabled": { "type": "boolean" }, "poll_interval": { "type": "number" }, "url": { "type": "string" } }, "required": [ "enabled", "url", "poll_interval" ], "type": "object" }, "ThumbnailRead": { "properties": { "interval": { "properties": { "value": { "type": "number" }, "value_range": { "$ref": "#/components/schemas/Range" } }, "required": [ "value", "value_range" ], "type": "object" }, "width": { "properties": { "value": { "type": "number" }, "value_range": { "$ref": "#/components/schemas/Range" } }, "required": [ "value", "value_range" ], "type": "object" } }, "required": [ "interval", "width" ], "type": "object" }, "ThumbnailWrite": { "properties": { "interval": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" }, "width": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" } }, "required": [ "interval", "width" ], "type": "object" }, "Unicast": { "properties": { "destination_ip": { "type": "string" }, "destination_port": { "type": "number" }, "protocol": { "type": "string" } }, "type": "object" }, "VidEncoder": { "properties": { "active": { "type": "boolean" }, "seconds_in_status": { "type": "number" }, "status": { "type": "string" }, "vid_encoder_id": { "type": "number" } }, "required": [ "vid_encoder_id", "active" ], "type": "object" }, "VidEncoderWrite": { "properties": { "bitrate": { "properties": { "value": { "type": "number" } }, "required": [ "value" ], "type": "object" }, "bitrate_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "codec": { "properties": { "h264": { "$ref": "#/components/schemas/CodecParamsWrite" }, "h265": { "$ref": "#/components/schemas/CodecParamsWrite" }, "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "in_channel_id": { "type": "number" }, "keyframe_interval": { "properties": { "interval": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "interval", "unit" ], "type": "object" }, "klv_timestamp_enabled": { "type": "boolean" }, "latency_mode": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "limit_to_30_fps": { "type": "boolean" }, "name": { "type": "string" }, "scaling_resolution": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "sync_group_id": { "type": "number" } }, "required": [ "name", "in_channel_id", "bitrate", "latency_mode", "bitrate_mode", "keyframe_interval", "scaling_resolution", "limit_to_30_fps", "klv_timestamp_enabled", "codec" ], "type": "object" }, "VidFormatDetected": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "Video_Encoder_Configuration": {}, "Video_Encoders": {}, "XML": {}, "XmlSettings": { "properties": { "enabled": { "type": "boolean" }, "password": { "type": "string" }, "poll_interval": { "type": "number" }, "url": { "type": "string" }, "username": { "type": "string" } }, "required": [ "enabled", "url", "poll_interval" ], "type": "object" } } }, "tags": [ { "name": "System" }, { "name": "Input Channels" }, { "name": "Encoders" }, { "name": "Video Encoders" }, { "name": "Sync Groups" }, { "name": "Audio Encoders" }, { "name": "Data Encoders" }, { "name": "Output Streams" }, { "name": "Storage" }, { "name": "XML" } ] }