openapi: 3.0.0 info: version: 1.0.0 title: MediaMTX API description: API of MediaMTX, a server and proxy that supports various protocols. license: name: MIT url: https://opensource.org/licenses/MIT servers: - url: http://localhost:9997 security: [] components: schemas: OKStatus: type: string enum: [ok] ErrorStatus: type: string enum: [error] PathSourceType: type: string enum: - hlsSource - redirect - rpiCameraSource - rtmpConn - rtmpsConn - rtmpSource - rtspSession - rtspSource - rtspsSession - srtConn - srtSource - mpegtsSource - rtpSource - webRTCSession - webRTCSource PathReaderType: type: string enum: - hlsSession - rtmpConn - rtmpsConn - rtspConn - rtspSession - rtspsConn - rtspsSession - srtConn - webRTCSession PathTrackCodec: type: string enum: - AV1 - VP9 - VP8 - H265 - H264 - MPEG-4 Video - MPEG-1/2 Video - M-JPEG - Opus - Vorbis - MPEG-4 Audio - MPEG-4 Audio LATM - MPEG-1/2 Audio - AC3 - Speex - G726 - G722 - G711 - LPCM - MPEG-TS - KLV - Generic AlwaysAvailableTrackCodec: type: string enum: - AV1 - VP9 - H265 - H264 - MPEG4Audio - Opus - G711 - LPCM AuthAction: type: string enum: - publish - read - playback - api - metrics - pprof AuthMethod: type: string enum: [internal, http, jwt] Encryption: type: string enum: [no, optional, strict] HLSVariant: type: string enum: [mpegts, fmp4, lowLatency] LogDestination: type: string enum: [stdout, file, syslog] LogLevel: type: string enum: [error, warn, info, debug] RecordFormat: type: string enum: [fmp4, mpegts] RTSPAuthMethod: type: string enum: [basic, digest] RTSPRangeType: type: string enum: ["", clock, npt, smpte] RTSPTransport: type: string enum: [udp, multicast, tcp, automatic] RTMPConnState: type: string enum: [idle, read, publish] RTSPSessionState: type: string enum: [idle, read, publish] SRTConnState: type: string enum: [idle, read, publish] WebRTCSessionState: type: string enum: [read, publish] MoQSessionState: type: string enum: [idle, read, publish] OK: type: object properties: status: $ref: "#/components/schemas/OKStatus" Error: type: object properties: status: $ref: "#/components/schemas/ErrorStatus" error: type: string Info: type: object properties: version: type: string started: type: string AuthInternalUser: type: object properties: user: type: string pass: type: string ips: type: array items: type: string permissions: type: array items: $ref: "#/components/schemas/AuthInternalUserPermission" AuthInternalUserPermission: type: object properties: action: $ref: "#/components/schemas/AuthAction" path: type: string GlobalConf: type: object properties: # General logLevel: $ref: "#/components/schemas/LogLevel" logDestinations: type: array items: $ref: "#/components/schemas/LogDestination" logStructured: type: boolean logFile: type: string sysLogPrefix: type: string dumpPackets: type: boolean readTimeout: type: string writeTimeout: type: string readBufferCount: type: integer format: int64 nullable: true deprecated: true writeQueueSize: type: integer format: int64 udpMaxPayloadSize: type: integer format: int64 udpReadBufferSize: type: integer format: uint64 runOnConnect: type: string runOnConnectRestart: type: boolean runOnDisconnect: type: string # Authentication authMethod: $ref: "#/components/schemas/AuthMethod" authInternalUsers: type: array items: $ref: "#/components/schemas/AuthInternalUser" authHTTPAddress: type: string externalAuthenticationURL: type: string nullable: true deprecated: true authHTTPFingerprint: type: string authHTTPExclude: type: array items: $ref: "#/components/schemas/AuthInternalUserPermission" authJWTJWKS: type: string authJWTJWKSFingerprint: type: string authJWTClaimKey: type: string authJWTInHTTPQuery: type: boolean nullable: true deprecated: true authJWTIssuer: type: string authJWTAudience: type: string authJWTExclude: type: array items: $ref: "#/components/schemas/AuthInternalUserPermission" # Control API api: type: boolean apiAddress: type: string apiEncryption: type: boolean apiServerKey: type: string apiServerCert: type: string apiAllowOrigin: type: string nullable: true deprecated: true apiAllowOrigins: type: array items: type: string apiTrustedProxies: type: array items: type: string # Metrics metrics: type: boolean metricsAddress: type: string metricsEncryption: type: boolean metricsServerKey: type: string metricsServerCert: type: string metricsAllowOrigin: type: string nullable: true deprecated: true metricsAllowOrigins: type: array items: type: string metricsTrustedProxies: type: array items: type: string # PPROF pprof: type: boolean pprofAddress: type: string pprofEncryption: type: boolean pprofServerKey: type: string pprofServerCert: type: string pprofAllowOrigin: type: string nullable: true deprecated: true pprofAllowOrigins: type: array items: type: string pprofTrustedProxies: type: array items: type: string # Playback server playback: type: boolean playbackAddress: type: string playbackEncryption: type: boolean playbackServerKey: type: string playbackServerCert: type: string playbackAllowOrigin: type: string nullable: true deprecated: true playbackAllowOrigins: type: array items: type: string playbackTrustedProxies: type: array items: type: string # RTSP server rtsp: type: boolean rtspDisable: type: boolean nullable: true deprecated: true protocols: type: array nullable: true items: type: string enum: [udp, multicast, tcp] deprecated: true rtspTransports: type: array items: type: string enum: [udp, multicast, tcp] encryption: type: string nullable: true deprecated: true allOf: - $ref: "#/components/schemas/Encryption" rtspEncryption: $ref: "#/components/schemas/Encryption" rtspAddress: type: string rtspsAddress: type: string rtpAddress: type: string rtcpAddress: type: string multicastIPRange: type: string multicastRTPPort: type: integer format: int64 multicastRTCPPort: type: integer format: int64 srtpAddress: type: string srtcpAddress: type: string multicastSRTPPort: type: integer format: int64 multicastSRTCPPort: type: integer format: int64 rtspServerKey: type: string rtspServerCert: type: string authMethods: type: array nullable: true items: $ref: "#/components/schemas/RTSPAuthMethod" deprecated: true rtspAuthMethods: type: array items: $ref: "#/components/schemas/RTSPAuthMethod" rtspTrustedProxies: type: array items: type: string rtspUDPReadBufferSize: type: integer format: uint64 nullable: true deprecated: true # RTMP server rtmp: type: boolean rtmpDisable: type: boolean nullable: true deprecated: true rtmpEncryption: $ref: "#/components/schemas/Encryption" rtmpAddress: type: string rtmpsAddress: type: string rtmpServerKey: type: string rtmpServerCert: type: string rtmpTrustedProxies: type: array items: type: string # HLS server hls: type: boolean hlsDisable: type: boolean nullable: true deprecated: true hlsAddress: type: string hlsEncryption: type: boolean hlsServerKey: type: string hlsServerCert: type: string hlsAllowOrigin: type: string nullable: true deprecated: true hlsAllowOrigins: type: array items: type: string hlsTrustedProxies: type: array items: type: string hlsAlwaysRemux: type: boolean hlsVariant: $ref: "#/components/schemas/HLSVariant" hlsSegmentCount: type: integer format: int64 hlsSegmentDuration: type: string hlsPartDuration: type: string hlsSegmentMaxSize: type: string hlsDirectory: type: string hlsMuxerCloseAfter: type: string hlsCDNSecret: type: string # WebRTC server webrtc: type: boolean webrtcDisable: type: boolean nullable: true deprecated: true webrtcAddress: type: string webrtcEncryption: type: boolean webrtcServerKey: type: string webrtcServerCert: type: string webrtcAllowOrigin: type: string nullable: true deprecated: true webrtcAllowOrigins: type: array items: type: string webrtcTrustedProxies: type: array items: type: string webrtcLocalUDPAddress: type: string webrtcLocalTCPAddress: type: string webrtcIPsFromInterfaces: type: boolean webrtcIPsFromInterfacesList: type: array items: type: string webrtcAdditionalHosts: type: array items: type: string webrtcICEServers2: type: array items: $ref: "#/components/schemas/WebRTCICEServer" webrtcSTUNGatherTimeout: type: string webrtcHandshakeTimeout: type: string webrtcTrackGatherTimeout: type: string webrtcICEUDPMuxAddress: type: string nullable: true deprecated: true webrtcICETCPMuxAddress: type: string nullable: true deprecated: true webrtcICEHostNAT1To1IPs: type: array nullable: true items: type: string deprecated: true webrtcICEServers: type: array nullable: true items: type: string deprecated: true # SRT server srt: type: boolean srtAddress: type: string # MoQ server moq: type: boolean moqHTTPS2Address: type: string moqHTTPS3Address: type: string moqServerKey: type: string moqServerCert: type: string moqAllowOrigins: type: array items: type: string moqTrustedProxies: type: array items: type: string # Record (deprecated) record: type: boolean nullable: true deprecated: true recordPath: type: string nullable: true deprecated: true recordFormat: type: string nullable: true deprecated: true allOf: - $ref: "#/components/schemas/RecordFormat" recordPartDuration: type: string nullable: true deprecated: true recordSegmentDuration: type: string nullable: true deprecated: true recordDeleteAfter: type: string nullable: true deprecated: true PathConf: type: object properties: name: type: string # General source: type: string sourceFingerprint: type: string sourceOnDemand: type: boolean sourceOnDemandStartTimeout: type: string sourceOnDemandCloseAfter: type: string maxReaders: type: integer format: int64 srtReadPassphrase: type: string fallback: type: string nullable: true deprecated: true useAbsoluteTimestamp: type: boolean # Always available alwaysAvailable: type: boolean alwaysAvailableTracks: type: array items: $ref: "#/components/schemas/AlwaysAvailableTrack" alwaysAvailableFile: type: string # Record record: type: boolean playback: type: boolean nullable: true deprecated: true recordPath: type: string recordFormat: $ref: "#/components/schemas/RecordFormat" recordPartDuration: type: string recordMaxPartSize: type: string recordSegmentDuration: type: string recordDeleteAfter: type: string # Authentication (deprecated) publishUser: type: string nullable: true deprecated: true publishPass: type: string nullable: true deprecated: true publishIPs: type: array nullable: true items: type: string deprecated: true readUser: type: string nullable: true deprecated: true readPass: type: string nullable: true deprecated: true readIPs: type: array nullable: true items: type: string deprecated: true # Publisher source overridePublisher: type: boolean disablePublisherOverride: type: boolean nullable: true deprecated: true srtPublishPassphrase: type: string rtspDemuxMpegts: type: boolean # RTSP source rtspTransport: $ref: "#/components/schemas/RTSPTransport" rtspAnyPort: type: boolean sourceProtocol: type: string nullable: true deprecated: true allOf: - $ref: "#/components/schemas/RTSPTransport" sourceAnyPortEnable: type: boolean nullable: true deprecated: true rtspRangeType: $ref: "#/components/schemas/RTSPRangeType" rtspRangeStart: type: string rtspUDPReadBufferSize: type: integer format: uint64 nullable: true deprecated: true rtspUDPSourcePortRange: type: array minItems: 2 maxItems: 2 items: type: integer format: uint64 # MPEG-TS source mpegtsUDPReadBufferSize: type: integer format: uint64 nullable: true deprecated: true # RTP source rtpSDP: type: string rtpUDPReadBufferSize: type: integer format: uint64 nullable: true deprecated: true # WHEP source whepBearerToken: type: string whepSTUNGatherTimeout: type: string whepHandshakeTimeout: type: string whepTrackGatherTimeout: type: string # Redirect source sourceRedirect: type: string # Raspberry Pi Camera source rpiCameraCamID: type: integer format: uint64 rpiCameraSecondary: type: boolean rpiCameraWidth: type: integer format: uint64 rpiCameraHeight: type: integer format: uint64 rpiCameraHFlip: type: boolean rpiCameraVFlip: type: boolean rpiCameraBrightness: type: number format: double rpiCameraContrast: type: number format: double rpiCameraSaturation: type: number format: double rpiCameraSharpness: type: number format: double rpiCameraExposure: type: string rpiCameraAWB: type: string rpiCameraAWBGains: type: array minItems: 2 maxItems: 2 items: type: number format: double rpiCameraDenoise: type: string rpiCameraShutter: type: integer format: uint64 rpiCameraMetering: type: string rpiCameraGain: type: number format: double rpiCameraEV: type: number format: double rpiCameraROI: type: string rpiCameraHDR: type: boolean rpiCameraTuningFile: type: string rpiCameraMode: type: string rpiCameraFPS: type: number format: double rpiCameraAfMode: type: string rpiCameraAfRange: type: string rpiCameraAfSpeed: type: string rpiCameraLensPosition: type: number format: double rpiCameraAfWindow: type: string rpiCameraFlickerPeriod: type: integer format: uint64 rpiCameraTextOverlayEnable: type: boolean rpiCameraTextOverlay: type: string rpiCameraCodec: type: string rpiCameraIDRPeriod: type: integer format: uint64 rpiCameraBitrate: type: integer format: uint64 rpiCameraProfile: type: string nullable: true deprecated: true rpiCameraLevel: type: string nullable: true deprecated: true rpiCameraHardwareH264Profile: type: string rpiCameraHardwareH264Level: type: string rpiCameraSoftwareH264Profile: type: string rpiCameraSoftwareH264Level: type: string rpiCameraJPEGQuality: type: integer format: uint64 nullable: true deprecated: true rpiCameraMJPEGQuality: type: integer format: uint64 # Hooks runOnInit: type: string runOnInitRestart: type: boolean runOnDemand: type: string runOnDemandRestart: type: boolean runOnDemandStartTimeout: type: string runOnDemandCloseAfter: type: string runOnUnDemand: type: string runOnReady: type: string runOnReadyRestart: type: boolean runOnNotReady: type: string runOnRead: type: string runOnReadRestart: type: boolean runOnUnread: type: string runOnRecordSegmentCreate: type: string runOnRecordSegmentComplete: type: string PathConfList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/PathConf" Path: type: object properties: name: type: string confName: type: string source: type: object nullable: true allOf: - $ref: "#/components/schemas/PathSource" ready: type: boolean deprecated: true readyTime: type: string nullable: true deprecated: true available: type: boolean availableTime: type: string nullable: true online: type: boolean onlineTime: type: string nullable: true tracks: type: array deprecated: true items: $ref: "#/components/schemas/PathTrackCodec" tracks2: type: array items: $ref: "#/components/schemas/PathTrack" inboundBytes: type: integer format: uint64 outboundBytes: type: integer format: uint64 inboundFramesInError: type: integer format: uint64 bytesReceived: type: integer format: uint64 deprecated: true bytesSent: type: integer format: uint64 deprecated: true readers: type: array items: $ref: "#/components/schemas/PathReader" PathList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/Path" PathSource: type: object properties: type: $ref: "#/components/schemas/PathSourceType" id: type: string PathReader: type: object properties: type: $ref: "#/components/schemas/PathReaderType" id: type: string PathTrack: type: object properties: codec: $ref: "#/components/schemas/PathTrackCodec" codecProps: type: object nullable: true allOf: - $ref: "#/components/schemas/PathTrackCodecProps" PathTrackCodecProps: oneOf: - $ref: "#/components/schemas/PathTrackCodecPropsAV1" - $ref: "#/components/schemas/PathTrackCodecPropsVP9" - $ref: "#/components/schemas/PathTrackCodecPropsH265" - $ref: "#/components/schemas/PathTrackCodecPropsH264" - $ref: "#/components/schemas/PathTrackCodecPropsOpus" - $ref: "#/components/schemas/PathTrackCodecPropsMPEG4Audio" - $ref: "#/components/schemas/PathTrackCodecPropsAC3" - $ref: "#/components/schemas/PathTrackCodecPropsG711" - $ref: "#/components/schemas/PathTrackCodecPropsLPCM" PathTrackCodecPropsAV1: type: object properties: width: type: integer format: int64 height: type: integer format: int64 profile: type: integer format: int64 level: type: integer format: int64 tier: type: integer format: int64 PathTrackCodecPropsVP9: type: object properties: profile: type: integer format: int64 PathTrackCodecPropsH265: type: object properties: width: type: integer format: int64 height: type: integer format: int64 profile: type: string level: type: string PathTrackCodecPropsH264: type: object properties: width: type: integer format: int64 height: type: integer format: int64 profile: type: string level: type: string PathTrackCodecPropsOpus: type: object properties: channelCount: type: integer format: int64 PathTrackCodecPropsMPEG4Audio: type: object properties: sampleRate: type: integer format: int64 channelCount: type: integer format: int64 PathTrackCodecPropsAC3: type: object properties: sampleRate: type: integer format: int64 channelCount: type: integer format: int64 PathTrackCodecPropsG711: type: object properties: muLaw: type: boolean sampleRate: type: integer format: int64 channelCount: type: integer format: int64 PathTrackCodecPropsLPCM: type: object properties: bitDepth: type: integer format: int64 sampleRate: type: integer format: int64 channelCount: type: integer format: int64 HLSMuxer: type: object properties: path: type: string created: type: string lastRequest: type: string outboundBytes: type: integer format: uint64 outboundFramesDiscarded: type: integer format: uint64 bytesSent: type: integer format: uint64 deprecated: true HLSMuxerList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/HLSMuxer" HLSSession: type: object properties: id: type: string format: uuid created: type: string remoteAddr: type: string path: type: string query: type: string user: type: string userAgent: type: string isCDN: type: boolean outboundBytes: type: integer format: uint64 HLSSessionList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/HLSSession" Recording: type: object properties: name: type: string segments: type: array items: $ref: "#/components/schemas/RecordingSegment" RecordingList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/Recording" RecordingSegment: type: object properties: start: type: string RTMPConn: type: object properties: id: type: string format: uuid created: type: string remoteAddr: type: string state: $ref: "#/components/schemas/RTMPConnState" path: type: string query: type: string user: type: string userAgent: type: string inboundBytes: type: integer format: uint64 outboundBytes: type: integer format: uint64 outboundFramesDiscarded: type: integer format: uint64 bytesReceived: type: integer format: uint64 deprecated: true bytesSent: type: integer format: uint64 deprecated: true RTMPConnList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/RTMPConn" RTSPConn: type: object properties: id: type: string format: uuid created: type: string remoteAddr: type: string session: type: string format: uuid nullable: true tunnel: type: string inboundBytes: type: integer format: uint64 outboundBytes: type: integer format: uint64 bytesReceived: type: integer format: uint64 deprecated: true bytesSent: type: integer format: uint64 deprecated: true RTSPConnList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/RTSPConn" RTSPSession: type: object properties: id: type: string format: uuid created: type: string remoteAddr: type: string state: $ref: "#/components/schemas/RTSPSessionState" path: type: string query: type: string user: type: string userAgent: type: string transport: type: string nullable: true profile: type: string nullable: true conns: type: array items: type: string format: uuid inboundBytes: type: integer format: uint64 inboundRTPPackets: type: integer format: uint64 inboundRTPPacketsLost: type: integer format: uint64 inboundRTPPacketsInError: type: integer format: uint64 inboundRTPPacketsJitter: type: number format: double inboundRTCPPackets: type: integer format: uint64 inboundRTCPPacketsInError: type: integer format: uint64 outboundBytes: type: integer format: uint64 outboundRTPPackets: type: integer format: uint64 outboundRTPPacketsReportedLost: type: integer format: uint64 outboundRTPPacketsDiscarded: type: integer format: uint64 outboundRTCPPackets: type: integer format: uint64 bytesReceived: type: integer format: uint64 deprecated: true bytesSent: type: integer format: uint64 deprecated: true rtpPacketsReceived: type: integer format: uint64 deprecated: true rtpPacketsSent: type: integer format: uint64 deprecated: true rtpPacketsLost: type: integer format: uint64 deprecated: true rtpPacketsInError: type: integer format: uint64 deprecated: true rtpPacketsJitter: type: number format: double deprecated: true rtcpPacketsReceived: type: integer format: uint64 deprecated: true rtcpPacketsSent: type: integer format: uint64 deprecated: true rtcpPacketsInError: type: integer format: uint64 deprecated: true RTSPSessionList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/RTSPSession" SRTConn: type: object properties: id: type: string format: uuid created: type: string remoteAddr: type: string state: $ref: "#/components/schemas/SRTConnState" path: type: string query: type: string user: type: string packetsSent: type: integer format: uint64 description: The total number of sent DATA packets, including retransmitted packets packetsReceived: type: integer format: uint64 description: The total number of received DATA packets, including retransmitted packets packetsReceivedBelated: type: integer format: uint64 packetsSentUnique: type: integer format: uint64 description: The total number of unique DATA packets sent by the SRT sender packetsReceivedUnique: type: integer format: uint64 description: The total number of unique original, retransmitted or recovered by the packet filter DATA packets received in time, decrypted without errors and, as a result, scheduled for delivery to the upstream application by the SRT receiver. packetsSendLoss: type: integer format: uint64 description: The total number of data packets considered or reported as lost at the sender side. Does not correspond to the packets detected as lost at the receiver side. packetsReceivedLoss: type: integer format: uint64 description: The total number of SRT DATA packets detected as presently missing (either reordered or lost) at the receiver side packetsRetrans: type: integer format: uint64 description: The total number of retransmitted packets sent by the SRT sender packetsReceivedRetrans: type: integer format: uint64 description: The total number of retransmitted packets registered at the receiver side packetsSentACK: type: integer format: uint64 description: The total number of sent ACK (Acknowledgement) control packets packetsReceivedACK: type: integer format: uint64 description: The total number of received ACK (Acknowledgement) control packets packetsSentNAK: type: integer format: uint64 description: The total number of sent NAK (Negative Acknowledgement) control packets packetsReceivedNAK: type: integer format: uint64 description: The total number of received NAK (Negative Acknowledgement) control packets packetsSentKM: type: integer format: uint64 description: The total number of sent KM (Key Material) control packets packetsReceivedKM: type: integer format: uint64 description: The total number of received KM (Key Material) control packets usSndDuration: type: integer format: uint64 description: The total accumulated time in microseconds, during which the SRT sender has some data to transmit, including packets that have been sent, but not yet acknowledged packetsSendDrop: type: integer format: uint64 description: The total number of dropped by the SRT sender DATA packets that have no chance to be delivered in time packetsReceivedDrop: type: integer format: uint64 description: The total number of dropped by the SRT receiver and, as a result, not delivered to the upstream application DATA packets packetsReceivedUndecrypt: type: integer format: uint64 description: The total number of packets that failed to be decrypted at the receiver side bytesSent: type: integer format: uint64 description: Same as packetsSent, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesReceived: type: integer format: uint64 description: Same as packetsReceived, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesReceivedBelated: type: integer format: uint64 bytesSentUnique: type: integer format: uint64 description: Same as packetsSentUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesReceivedUnique: type: integer format: uint64 description: Same as packetsReceivedUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesReceivedLoss: type: integer format: uint64 description: Same as packetsReceivedLoss, but expressed in bytes, including payload and all the headers (IP, TCP, SRT), bytes for the presently missing (either reordered or lost) packets' payloads are estimated based on the average packet size bytesRetrans: type: integer format: uint64 description: Same as packetsRetrans, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesReceivedRetrans: type: integer format: uint64 description: Same as packetsReceivedRetrans, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesSendDrop: type: integer format: uint64 description: Same as packetsSendDrop, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesReceivedDrop: type: integer format: uint64 description: Same as packetsReceivedDrop, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesReceivedUndecrypt: type: integer format: uint64 description: Same as packetsReceivedUndecrypt, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) usPacketsSendPeriod: type: number format: double description: Current minimum time interval between which consecutive packets are sent, in microseconds packetsFlowWindow: type: integer format: uint64 description: The maximum number of packets that can be "in flight" packetsFlightSize: type: integer format: uint64 description: The number of packets in flight msRTT: type: number format: double description: Smoothed round-trip time (SRTT), an exponentially-weighted moving average (EWMA) of an endpoint's RTT samples, in milliseconds mbpsSendRate: type: number format: double description: Current transmission bandwidth, in Mbps mbpsReceiveRate: type: number format: double description: Current receiving bandwidth, in Mbps mbpsLinkCapacity: type: number format: double description: Estimated capacity of the network link, in Mbps bytesAvailSendBuf: type: integer format: uint64 description: The available space in the sender's buffer, in bytes bytesAvailReceiveBuf: type: integer format: uint64 description: The available space in the receiver's buffer, in bytes mbpsMaxBW: type: number format: double description: Transmission bandwidth limit, in Mbps byteMSS: type: integer format: uint64 description: Maximum Segment Size (MSS), in bytes packetsSendBuf: type: integer format: uint64 description: The number of packets in the sender's buffer that are already scheduled for sending or even possibly sent, but not yet acknowledged bytesSendBuf: type: integer format: uint64 description: Instantaneous (current) value of packetsSndBuf, but expressed in bytes, including payload and all headers (IP, TCP, SRT) msSendBuf: type: integer format: uint64 description: The timespan (msec) of packets in the sender's buffer (unacknowledged packets) msSendTsbPdDelay: type: integer format: uint64 description: Timestamp-based Packet Delivery Delay value of the peer packetsReceiveBuf: type: integer format: uint64 description: The number of acknowledged packets in receiver's buffer bytesReceiveBuf: type: integer format: uint64 description: Instantaneous (current) value of packetsRcvBuf, expressed in bytes, including payload and all headers (IP, TCP, SRT) msReceiveBuf: type: integer format: uint64 description: The timespan (msec) of acknowledged packets in the receiver's buffer msReceiveTsbPdDelay: type: integer format: uint64 description: Timestamp-based Packet Delivery Delay value set on the socket via SRTO_RCVLATENCY or SRTO_LATENCY packetsReorderTolerance: type: integer format: uint64 description: Instant value of the packet reorder tolerance packetsReceivedAvgBelatedTime: type: integer format: uint64 description: Accumulated difference between the current time and the time-to-play of a packet that is received late packetsSendLossRate: type: number format: double description: Percentage of resent data vs. sent data packetsReceivedLossRate: type: number format: double description: Percentage of retransmitted data vs. received data outboundFramesDiscarded: type: integer format: uint64 SRTConnList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/SRTConn" AlwaysAvailableTrack: type: object properties: codec: $ref: "#/components/schemas/AlwaysAvailableTrackCodec" sampleRate: type: integer format: int64 channelCount: type: integer format: int64 muLaw: type: boolean WebRTCICEServer: type: object properties: url: type: string username: type: string password: type: string clientOnly: type: boolean WebRTCSession: type: object properties: id: type: string format: uuid created: type: string remoteAddr: type: string peerConnectionEstablished: type: boolean localCandidate: type: string remoteCandidate: type: string state: $ref: "#/components/schemas/WebRTCSessionState" path: type: string query: type: string user: type: string userAgent: type: string inboundBytes: type: integer format: uint64 inboundRTPPackets: type: integer format: uint64 inboundRTPPacketsLost: type: integer format: uint64 inboundRTPPacketsJitter: type: number format: double inboundRTCPPackets: type: integer format: uint64 outboundBytes: type: integer format: uint64 outboundRTPPackets: type: integer format: uint64 outboundRTCPPackets: type: integer format: uint64 outboundFramesDiscarded: type: integer format: uint64 bytesReceived: type: integer format: uint64 deprecated: true bytesSent: type: integer format: uint64 deprecated: true rtpPacketsReceived: type: integer format: uint64 deprecated: true rtpPacketsSent: type: integer format: uint64 deprecated: true rtpPacketsLost: type: integer format: uint64 deprecated: true rtpPacketsJitter: type: number format: double deprecated: true rtcpPacketsReceived: type: integer format: uint64 deprecated: true rtcpPacketsSent: type: integer format: uint64 deprecated: true WebRTCSessionList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/WebRTCSession" MoQSession: type: object properties: id: type: string format: uuid created: type: string remoteAddr: type: string state: $ref: "#/components/schemas/MoQSessionState" path: type: string query: type: string userAgent: type: string MoQSessionList: type: object properties: pageCount: type: integer format: int64 itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/MoQSession" paths: /v3/info: get: operationId: info tags: [General] summary: returns informations about the instance. responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/Info" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/auth/jwks/refresh: post: operationId: authJwksRefresh tags: [Authentication] summary: Manually refreshes the JWT JWKS. responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/global/get: get: operationId: configGlobalGet tags: [Configuration] summary: returns the global configuration. description: "" responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/GlobalConf" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/global/patch: patch: operationId: configGlobalSet tags: [Configuration] summary: patches the global configuration. description: all fields are optional. requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/GlobalConf" responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/pathdefaults/get: get: operationId: configPathDefaultsGet tags: [Configuration] summary: returns the default path configuration. description: "" responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/PathConf" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/pathdefaults/patch: patch: operationId: configPathDefaultsPatch tags: [Configuration] summary: patches the default path configuration. description: all fields are optional. requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/PathConf" responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/paths/list: get: operationId: configPathsList tags: [Configuration] summary: returns all path configurations. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/PathConfList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/paths/get/{name}: get: operationId: configPathsGet tags: [Configuration] summary: returns a path configuration. description: "" parameters: - name: name in: path required: true description: the name of the path. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/PathConf" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: path not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/paths/add/{name}: post: operationId: configPathsAdd tags: [Configuration] summary: adds a path configuration. description: all fields are optional. parameters: - name: name in: path required: true description: the name of the path. schema: type: string requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/PathConf" responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/paths/patch/{name}: patch: operationId: configPathsPatch tags: [Configuration] summary: patches a path configuration. description: all fields are optional. parameters: - name: name in: path required: true description: the name of the path. schema: type: string requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/PathConf" responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: path not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/paths/replace/{name}: post: operationId: configPathsReplace tags: [Configuration] summary: replaces all values of a path configuration. description: all fields are optional. parameters: - name: name in: path required: true description: the name of the path. schema: type: string requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/PathConf" responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: path not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/config/paths/delete/{name}: delete: operationId: configPathsDelete tags: [Configuration] summary: removes a path configuration. description: "" parameters: - name: name in: path required: true description: the name of the path. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: path not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/hlsmuxers/list: get: operationId: hlsMuxersList tags: [HLS] summary: returns all HLS muxers. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/HLSMuxerList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/hlsmuxers/get/{name}: get: operationId: hlsMuxersGet tags: [HLS] summary: returns a HLS muxer. description: "" parameters: - name: name in: path required: true description: name of the muxer. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/HLSMuxer" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: muxer not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/hlssessions/list: get: operationId: hlssessionsList tags: [HLS] summary: returns all HLS sessions. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/HLSSessionList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/hlssessions/get/{id}: get: operationId: hlssessionsGet tags: [HLS] summary: returns a HLS session. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/HLSSession" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/hlssessions/kick/{id}: post: operationId: hlssessionsKick tags: [HLS] summary: kicks out a HLS session from the server. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/paths/list: get: operationId: pathsList tags: [Paths] summary: returns all paths. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/PathList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/paths/get/{name}: get: operationId: pathsGet tags: [Paths] summary: returns a path. description: "" parameters: - name: name in: path required: true description: name of the path. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/Path" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: path not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspconns/list: get: operationId: rtspConnsList tags: [RTSP] summary: returns all RTSP connections. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPConnList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspconns/get/{id}: get: operationId: rtspConnsGet tags: [RTSP] summary: returns a RTSP connection. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPConn" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspsessions/list: get: operationId: rtspSessionsList tags: [RTSP] summary: returns all RTSP sessions. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPSessionList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspsessions/get/{id}: get: operationId: rtspSessionsGet tags: [RTSP] summary: returns a RTSP session. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPSession" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspsessions/kick/{id}: post: operationId: rtspSessionsKick tags: [RTSP] summary: kicks out a RTSP session from the server. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspsconns/list: get: operationId: rtspsConnsList tags: [RTSP] summary: returns all RTSPS connections. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPConnList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspsconns/get/{id}: get: operationId: rtspsConnsGet tags: [RTSP] summary: returns a RTSPS connection. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPConn" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspssessions/list: get: operationId: rtspsSessionsList tags: [RTSP] summary: returns all RTSPS sessions. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPSessionList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspssessions/get/{id}: get: operationId: rtspsSessionsGet tags: [RTSP] summary: returns a RTSPS session. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTSPSession" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtspssessions/kick/{id}: post: operationId: rtspsSessionsKick tags: [RTSP] summary: kicks out a RTSPS session from the server. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtmpconns/list: get: operationId: rtmpConnsList tags: [RTMP] summary: returns all RTMP connections. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTMPConnList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtmpconns/get/{id}: get: operationId: rtmpConnectionsGet tags: [RTMP] summary: returns a RTMP connection. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTMPConn" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtmpconns/kick/{id}: post: operationId: rtmpConnsKick tags: [RTMP] summary: kicks out a RTMP connection from the server. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtmpsconns/list: get: operationId: rtmpsConnsList tags: [RTMP] summary: returns all RTMPS connections. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTMPConnList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtmpsconns/get/{id}: get: operationId: rtmpsConnectionsGet tags: [RTMP] summary: returns a RTMPS connection. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RTMPConn" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/rtmpsconns/kick/{id}: post: operationId: rtmpsConnsKick tags: [RTMP] summary: kicks out a RTMPS connection from the server. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/srtconns/list: get: operationId: srtConnsList tags: [SRT] summary: returns all SRT connections. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/SRTConnList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/srtconns/get/{id}: get: operationId: srtConnsGet tags: [SRT] summary: returns a SRT connection. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/SRTConn" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/srtconns/kick/{id}: post: operationId: srtConnsKick tags: [SRT] summary: kicks out a SRT connection from the server. description: "" parameters: - name: id in: path required: true description: ID of the connection. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/webrtcsessions/list: get: operationId: webrtcSessionsList tags: [WebRTC] summary: returns all WebRTC sessions. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/WebRTCSessionList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/webrtcsessions/get/{id}: get: operationId: webrtcSessionsGet tags: [WebRTC] summary: returns a WebRTC session. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/WebRTCSession" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/webrtcsessions/kick/{id}: post: operationId: webrtcSessionsKick tags: [WebRTC] summary: kicks out a WebRTC session from the server. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/moqsessions/list: get: operationId: moqSessionsList tags: [MoQ] summary: returns all MoQ sessions. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/MoQSessionList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/moqsessions/get/{id}: get: operationId: moqSessionsGet tags: [MoQ] summary: returns a MoQ session. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/MoQSession" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/moqsessions/kick/{id}: post: operationId: moqSessionsKick tags: [MoQ] summary: kicks out a MoQ session from the server. description: "" parameters: - name: id in: path required: true description: ID of the session. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: session not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/recordings/list: get: operationId: recordingsList tags: [Recordings] summary: returns all recordings, splitted by path. description: "" parameters: - name: page in: query description: page number. schema: type: integer default: 0 - name: itemsPerPage in: query description: items per page. schema: type: integer default: 100 responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/RecordingList" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/recordings/get/{name}: get: operationId: recordingsGet tags: [Recordings] summary: returns recordings of a path. description: "" parameters: - name: name in: path required: true description: name of the path. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/Recording" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: path not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error" /v3/recordings/deletesegment: delete: operationId: recordingsDeleteSegment tags: [Recordings] summary: deletes a recording segment. description: "" parameters: - name: path in: query required: true description: path. schema: type: string - name: start in: query required: true description: starting date of the segment. schema: type: string responses: "200": description: the request was successful. content: application/json: schema: $ref: "#/components/schemas/OK" "400": description: invalid request. content: application/json: schema: $ref: "#/components/schemas/Error" "404": description: connection not found. content: application/json: schema: $ref: "#/components/schemas/Error" "500": description: server error. content: application/json: schema: $ref: "#/components/schemas/Error"