{ "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.", "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": "Legacy endpoint. Insert splice markers to transport stream outputs starting now. The duration of the splice will be what\nis configured in the 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/data_encoders/{id}/klv": { "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "klv": [ { "id": 0, "klv": [ { "blob": "060E2B34010101010105020000000000105965737465726461797320576F726C64", "enumerated": { "key": "060E2B34010101010105020000000000", "length": 16, "value": "5965737465726461797320576F726C64" }, "value": "blob" } ], "precision_datetime_utc": "1980-01-04T04:20:30.789Z" } ] } } }, "schema": { "properties": { "klv": { "items": { "properties": { "id": { "type": "number" }, "klv": { "items": { "properties": { "blob": { "type": "string" }, "enumerated": { "properties": { "key": { "type": "string" }, "length": { "type": "number" }, "value": { "type": "string" } }, "type": "object" }, "value": { "enum": [ "blob", "enumerated" ], "type": "string" } }, "type": "object" }, "type": "array" }, "precision_datetime_utc": { "type": "string" } }, "type": "object" }, "type": "array" } }, "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Get the list of KLV requests.", "operationId": "Get KLV Requests", "summary": "Get KLV Requests" }, "post": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0 } } }, "schema": { "properties": { "id": { "type": "number" } }, "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Create a request to inject KLV into the stream. The KLV will be associated with the video frame that has an MISB 604\nPrecision Time Stamp matching closest to the the given UTC time.\n\nThe format of the KLV in transport streams will follow ISO/IEC 13818-1 Metadata AU Wrapper. The first Metadata AU Cell\nwill be the MISB 0601 KLV containing the Precision Time Stamp, which will be followed by subsequent Metadata AU Cells\nfor each KLV listed in the request.\n\n* **precision_datetime_utc** - The UTC time to associate the KLV with. It will be paired with the video frame with\nclosest matching time.\n * Time should be specified as ISO 8601 in UTC (i.e. “yyyy-mm-ddTHH:MM:SS.mmmZ”).\n * This field is optional and if not specified, the command will be inserted immediately.\n * If the time given is up to 1 minute in the past, then the command will be inserted immediately. Otherwise, it will be\nrejected and an error returned.\n * If two separate requests have a precision time matching to the same video frame, they will still be tracked\nseparately, but both will be included in the same KLV frame.\n\n* **klv** - An array of KLV to insert into the stream. They are all inserted into the stream at the same time and\nassociated to the same video frame using **precision_datetime_utc**. Each KLV object can be specified using multiple\nformats. **value** is the distinguishing field for format and indicates what corresponding object is being used (e.g. **blob**).\n\n* **blob** - A hexadecimal string containing the full KLV data in the form of a binary blob. KLV data must conform to SMPTE-336.\n\n* **enumerated**\n * **key** - A hexadecimal string containing the 16 byte KLV key in the form of a binary blob. Key must conform to SMPTE-336.\n * **value** - A hexadecimal string containing the KLV value in the form of a binary blob. Value must conform to SMPTE-336.", "operationId": "Create KLV Request", "requestBody": { "content": { "application/json": { "schema": { "example": { "klv": [ { "blob": "060E2B34010101010105020000000000105965737465726461797320576F726C64", "enumerated": { "key": "060E2B34010101010105020000000000", "value": "5965737465726461797320576F726C64" }, "value": "blob" } ], "precision_datetime_utc": "1980-01-04T04:20:30.789Z" }, "properties": { "klv": { "items": { "properties": { "blob": { "type": "string" }, "enumerated": { "properties": { "key": { "type": "string" }, "value": { "type": "string" } }, "required": [ "key", "value" ], "type": "object" }, "value": { "enum": [ "blob", "enumerated" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "type": "array" }, "precision_datetime_utc": { "type": "string" } }, "required": [ "klv" ], "type": "object" } } } }, "summary": "Create KLV Request" } }, "/v2/encoders/data_encoders/{id}/klv/{klv_id}": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } }, { "description": "", "example": "1", "in": "path", "name": "klv_id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Delete a KLV request.", "operationId": "Delete KLV Request", "summary": "Delete KLV Request" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } }, { "description": "", "example": "1", "in": "path", "name": "klv_id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0, "klv": [ { "blob": "060E2B34010101010105020000000000105965737465726461797320576F726C64", "enumerated": { "key": "060E2B34010101010105020000000000", "length": 16, "value": "5965737465726461797320576F726C64" }, "value": "blob" } ], "precision_datetime_utc": "1980-01-04T04:20:30.789Z" } } }, "schema": { "properties": { "id": { "type": "number" }, "klv": { "items": { "properties": { "blob": { "type": "string" }, "enumerated": { "properties": { "key": { "type": "string" }, "length": { "type": "number" }, "value": { "type": "string" } }, "type": "object" }, "value": { "enum": [ "blob", "enumerated" ], "type": "string" } }, "type": "object" }, "type": "array" }, "precision_datetime_utc": { "type": "string" } }, "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Get the details of a KLV request.", "operationId": "Get KLV Request", "summary": "Get KLV Request" }, "put": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } }, { "description": "", "example": "1", "in": "path", "name": "klv_id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Update the details of a KLV request. Individual KLV within the original request is not added or removed. The KLV data is\nreplaced wholesale.", "operationId": "Update KLV Request", "requestBody": { "content": { "application/json": { "schema": { "example": { "klv": [ { "blob": "060E2B34010101010105020000000000105965737465726461797320576F726C64", "enumerated": { "key": "060E2B34010101010105020000000000", "value": "5965737465726461797320576F726C64" }, "value": "blob" } ], "precision_datetime_utc": "1980-01-04T04:20:30.789Z" }, "properties": { "klv": { "items": { "properties": { "blob": { "type": "string" }, "enumerated": { "properties": { "key": { "type": "string" }, "value": { "type": "string" } }, "required": [ "key", "value" ], "type": "object" }, "value": { "enum": [ "blob", "enumerated" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "type": "array" }, "precision_datetime_utc": { "type": "string" } }, "required": [ "klv" ], "type": "object" } } } }, "summary": "Update KLV Request" } }, "/v2/encoders/data_encoders/{id}/splice_commands": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Cancel all active splice commands. See description of DELETE for individual splice commands for more detail on how\ncancelling works.", "operationId": "Delete Splice Commands", "summary": "Delete Splice Commands" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "splice_commands": [ { "id": 0, "process_time_utc": "1980-01-04T04:20:30.789Z", "splice_command": { "splice_insert": { "duration_msec": 30000, "preroll_time_msec": 4000, "splice_event_id": 0 }, "time_signal": { "preroll_time_msec": 4000, "segment_num": 0, "segmentation_descriptor": "020F43554549000000017FBF0000300101", "segmentation_event_id": 0, "segmentation_type_id": 0 }, "value": "splice_insert" } } ] } } }, "schema": { "properties": { "splice_commands": { "items": { "properties": { "id": { "type": "number" }, "process_time_utc": { "type": "string" }, "splice_command": { "properties": { "splice_insert": { "properties": { "duration_msec": { "type": "number" }, "preroll_time_msec": { "type": "number" }, "splice_event_id": { "type": "number" } }, "type": "object" }, "time_signal": { "properties": { "preroll_time_msec": { "type": "number" }, "segment_num": { "type": "number" }, "segmentation_descriptor": { "type": "string" }, "segmentation_event_id": { "type": "number" }, "segmentation_type_id": { "type": "number" } }, "type": "object" }, "value": { "enum": [ "splice_insert", "time_signal" ], "type": "string" } }, "type": "object" } }, "type": "object" }, "type": "array" } }, "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Get the list of active splice commands.", "operationId": "Get Splice Commands", "summary": "Get Splice Commands" }, "post": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0 } } }, "schema": { "properties": { "id": { "type": "number" } }, "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Create a splice command to insert into the stream. The command will be processed at the given UTC time or immediately if\nno time is specified.\n\n* **splice_insert** - Creates a splice_insert command with the given pre-roll and duration. If pre-roll is not specified, 4\nseconds is used. If the duration is not specified, the duration configured in the SCTE-35 encoder will be used. The\ncommand will be inserted into the stream at the process time and will be reinserted every 2 seconds of pre-roll for\nredundancy.\n\n* **time_signal** - Creates a time_signal command with the given pre-roll and with the given segmentation descriptor\nattached. If pre-roll is not specified, 4 seconds is used. The segmentation descriptor is the binary blob of the\ndescriptor data in the form of a hexidecimal string. The command will be inserted into the stream at the process\ntime and will be reinserted every 2 seconds of pre-roll for redundancy.", "operationId": "Create Splice Command", "requestBody": { "content": { "application/json": { "schema": { "example": { "process_time_utc": "1980-01-04T04:20:30.789Z", "splice_command": { "splice_insert": { "duration_msec": 30000, "preroll_time_msec": 4000 }, "time_signal": { "preroll_time_msec": 4000, "segmentation_descriptor": "020F43554549000000017FBF0000300101" }, "value": "splice_insert" } }, "properties": { "process_time_utc": { "type": "string" }, "splice_command": { "properties": { "splice_insert": { "properties": { "duration_msec": { "type": "number" }, "preroll_time_msec": { "type": "number" } }, "type": "object" }, "time_signal": { "properties": { "preroll_time_msec": { "type": "number" }, "segmentation_descriptor": { "type": "string" } }, "required": [ "segmentation_descriptor" ], "type": "object" }, "value": { "enum": [ "splice_insert", "time_signal" ], "type": "string" } }, "required": [ "value" ], "type": "object" } }, "required": [ "splice_command" ], "type": "object" } } } }, "summary": "Create Splice Command" } }, "/v2/encoders/data_encoders/{id}/splice_commands/{cmd_id}": { "delete": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } }, { "description": "", "example": "1", "in": "path", "name": "cmd_id", "required": true, "schema": { "type": "integer" } } ], "responses": { "204": { "description": "No Content", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Cancel an active splice command.\n\n* If no splice info sections for the event have been inserted into the stream yet, the active splice command is simply\ndeleted.\n\n* If splice info sections have been inserted but the event has not occured yet, a cancel splice info section is inserted\nimmediately.\n\n* (Splice Insert Only) If the splice event has occurred and the duration is under way, an immediate in to network\nsplice_insert is inserted.", "operationId": "Delete Splice Command", "summary": "Delete Splice Command" }, "get": { "parameters": [ { "description": "", "example": "0", "in": "path", "name": "id", "required": true, "schema": { "type": "integer" } }, { "description": "", "example": "1", "in": "path", "name": "cmd_id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "examples": { "response": { "value": { "id": 0, "process_time_utc": "1980-01-04T04:20:30.789Z", "splice_command": { "splice_insert": { "duration_msec": 30000, "preroll_time_msec": 4000, "splice_event_id": 0 }, "time_signal": { "preroll_time_msec": 4000, "segment_num": 0, "segmentation_descriptor": "020F43554549000000017FBF0000300101", "segmentation_event_id": 0, "segmentation_type_id": 0 }, "value": "splice_insert" } } } }, "schema": { "properties": { "id": { "type": "number" }, "process_time_utc": { "type": "string" }, "splice_command": { "properties": { "splice_insert": { "properties": { "duration_msec": { "type": "number" }, "preroll_time_msec": { "type": "number" }, "splice_event_id": { "type": "number" } }, "type": "object" }, "time_signal": { "properties": { "preroll_time_msec": { "type": "number" }, "segment_num": { "type": "number" }, "segmentation_descriptor": { "type": "string" }, "segmentation_event_id": { "type": "number" }, "segmentation_type_id": { "type": "number" } }, "type": "object" }, "value": { "enum": [ "splice_insert", "time_signal" ], "type": "string" } }, "type": "object" } }, "type": "object" } } }, "description": "OK", "headers": {} } }, "tags": [ "Data Encoders" ], "description": "Get the details of an active splice command.", "operationId": "Get Splice Command", "summary": "Get Splice Command" } }, "/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" }, "current_bitrate": 0, "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_PASSTHROUGH", "RES_3840X2160", "RES_1920X1080", "RES_1280X720", "RES_960X540", "RES_720X576", "RES_854x480", "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" }, "current_bitrate": { "type": "number" }, "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": "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_aspect_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" }, "video_rotation": { "possible_values": [ "ROTATE_0", "ROTATE_90", "ROTATE_180", "ROTATE_270" ], "value": "ROTATE_0" } } } }, "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_aspect_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_aspect_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" }, "video_rotation": { "properties": { "possible_values": { "items": { "anyOf": [ { "type": "string" }, { "type": "string" }, { "type": "string" }, { "type": "string" } ] }, "type": "array" }, "value": { "type": "string" } }, "required": [ "value", "possible_values" ], "type": "object" } }, "required": [ "in_channel_id", "audio_input", "video_input", "video_rotation", "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_aspect_ratio": { "value": "NO_LOCK" }, "preset": { "value": "MANUAL" }, "width": 100, "x": 0, "y": 0 } }, "video_input": { "value": "input_hdmi" }, "video_rotation": { "value": "ROTATE_0" } }, "properties": { "audio_input": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "graphic_overlay": { "properties": { "enable": { "type": "boolean" }, "position": { "properties": { "height": { "type": "number" }, "lock_aspect_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_aspect_ratio" ], "type": "object" } }, "required": [ "enable", "position" ], "type": "object" }, "video_input": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "video_rotation": { "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, "encryption_enabled": true, "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" }, "encryption_enabled": { "type": "boolean" }, "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", "encryption_enabled", "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, "encryption_enabled": true, "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" }, "encryption_enabled": { "type": "boolean" }, "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", "encryption_enabled" ], "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, "network": { "dns_addresses": [ "1.1.1.1", "8.8.8.8" ], "gateway": "1.2.3.1", "ip_address": "1.2.3.4", "netmask": "255.255.255.0" }, "static_network": { "dns_addresses": [ "1.1.1.1", "8.8.8.8" ], "gateway": "1.2.3.1", "ip_address": "1.2.3.4", "netmask": "255.255.255.0" }, "version": "versionstring" } } }, "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" }, "network": { "properties": { "dns_addresses": { "items": {}, "type": "array" }, "gateway": { "type": "string" }, "ip_address": { "type": "string" }, "netmask": { "type": "string" } }, "required": [ "ip_address", "netmask", "gateway", "dns_addresses" ], "type": "object" }, "static_network": { "properties": { "dns_addresses": { "items": {}, "type": "array" }, "gateway": { "type": "string" }, "ip_address": { "type": "string" }, "netmask": { "type": "string" } }, "required": [ "ip_address", "netmask", "gateway", "dns_addresses" ], "type": "object" }, "version": { "type": "string" } }, "required": [ "device_name", "ip_scheme", "net_connected", "mac_address", "ip_address", "network", "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_addresses": [ "1.1.1.1", "8.8.8.8" ], "gateway": "1.2.3.1", "ip_address": "1.2.3.4", "netmask": "255.255.255.0" } }, "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_addresses": { "type": "array" }, "gateway": { "type": "string" }, "ip_address": { "type": "string" }, "netmask": { "type": "string" } }, "required": [ "ip_address", "netmask", "gateway", "dns_addresses" ], "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": { "requestBodies": { "Create_KLV_RequestBody": { "content": { "application/json": { "schema": { "example": { "klv": [ { "blob": "060E2B34010101010105020000000000105965737465726461797320576F726C64", "enumerated": { "key": "060E2B34010101010105020000000000", "value": "5965737465726461797320576F726C64" }, "value": "blob" } ], "precision_datetime_utc": "1980-01-04T04:20:30.789Z" }, "properties": { "klv": { "items": { "properties": { "blob": { "type": "string" }, "enumerated": { "properties": { "key": { "type": "string" }, "value": { "type": "string" } }, "required": [ "key", "value" ], "type": "object" }, "value": { "enum": [ "blob", "enumerated" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "type": "array" }, "precision_datetime_utc": { "type": "string" } }, "required": [ "klv" ], "type": "object" } } } } }, "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": {}, "KlvObject": { "properties": { "blob": { "type": "string" }, "enumerated": { "properties": { "key": { "type": "string" }, "length": { "type": "number" }, "value": { "type": "string" } }, "type": "object" }, "value": { "enum": [ "blob", "enumerated" ], "type": "string" } }, "type": "object" }, "KlvObjectWrite": { "properties": { "blob": { "type": "string" }, "enumerated": { "properties": { "key": { "type": "string" }, "value": { "type": "string" } }, "required": [ "key", "value" ], "type": "object" }, "value": { "enum": [ "blob", "enumerated" ], "type": "string" } }, "required": [ "value" ], "type": "object" }, "KlvRequest": { "properties": { "id": { "type": "number" }, "klv": { "items": { "$ref": "#/components/schemas/KlvObject" }, "type": "array" }, "precision_datetime_utc": { "type": "string" } }, "type": "object" }, "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" }, "SCTE-35_Splice_Commands": {}, "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" }, "encryption_enabled": { "type": "boolean" }, "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", "encryption_enabled", "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" }, "encryption_enabled": { "type": "boolean" }, "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", "encryption_enabled" ], "type": "object" }, "SpliceCommand": { "properties": { "id": { "type": "number" }, "process_time_utc": { "type": "string" }, "splice_command": { "properties": { "splice_insert": { "properties": { "duration_msec": { "type": "number" }, "preroll_time_msec": { "type": "number" }, "splice_event_id": { "type": "number" } }, "type": "object" }, "time_signal": { "properties": { "preroll_time_msec": { "type": "number" }, "segment_num": { "type": "number" }, "segmentation_descriptor": { "type": "string" }, "segmentation_event_id": { "type": "number" }, "segmentation_type_id": { "type": "number" } }, "type": "object" }, "value": { "enum": [ "splice_insert", "time_signal" ], "type": "string" } }, "type": "object" } }, "type": "object" }, "StaticNetworkSettings": { "properties": { "dns_addresses": { "items": {}, "type": "array" }, "gateway": { "type": "string" }, "ip_address": { "type": "string" }, "netmask": { "type": "string" } }, "required": [ "ip_address", "netmask", "gateway", "dns_addresses" ], "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": {}, "Synchronous_KLV_Injection": {}, "System": {}, "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" } ] }