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: HLSVariant: type: string enum: [mpegts, fmp4, lowLatency] LogDestination: type: string enum: [stdout, file, syslog] LogLevel: type: string enum: [error, warn, info, debug] RTSPAuthMethod: type: string enum: [basic, digest] RTSPTransport: type: string enum: [udp, multicast, tcp, automatic] 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" ErrorStatus: type: string enum: - error 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 MoQSessionState: type: string enum: - idle - read - publish MoQVersion: type: string enum: - moqt-18 - moqt-19 OKStatus: type: string enum: - ok PathReaderType: type: string enum: - hlsSession - rtmpConn - rtmpsConn - rtspConn - rtspSession - rtspsConn - rtspsSession - srtConn - webRTCSession - moqSession - hidden PathSourceType: type: string enum: - hlsSource - redirect - rpiCameraSource - rtmpConn - rtmpsConn - rtmpSource - rtspSession - rtspSource - rtspsSession - srtConn - srtSource - mpegtsSource - rtpSource - webRTCSession - webRTCSource - moqSession PathTrackCodec: type: string enum: - AV1 - VP9 - VP8 - H265 - H264 - MPEG-4 Video - MPEG-1/2 Video - M-JPEG - Opus - FLAC - Vorbis - MPEG-4 Audio - MPEG-4 Audio LATM - MPEG-1/2 Audio - AC3 - Speex - G726 - G722 - G711 - LPCM - MPEG-TS - KLV - Generic RTMPConnState: type: string enum: - idle - read - publish RTSPRangeType: type: string enum: - "" - clock - npt - smpte RTSPSessionState: type: string enum: - idle - read - publish RecordFormat: type: string enum: - fmp4 - mpegts SRTConnState: type: string enum: - idle - read - publish WebRTCSessionState: type: string enum: - read - publish AlwaysAvailableTrack: type: object properties: channelCount: type: integer format: int64 codec: $ref: "#/components/schemas/AlwaysAvailableTrackCodec" muLaw: type: boolean sampleRate: type: integer format: int64 AuthInternalUser: type: object properties: ips: type: array items: type: string pass: type: string permissions: type: array items: $ref: "#/components/schemas/AuthInternalUserPermission" user: type: string AuthInternalUserPermission: type: object properties: action: $ref: "#/components/schemas/AuthAction" path: type: string Error: type: object properties: error: type: string status: $ref: "#/components/schemas/ErrorStatus" GlobalConf: type: object properties: api: type: boolean description: Control API apiAddress: type: string apiAllowOrigin: type: string nullable: true deprecated: true apiAllowOrigins: type: array items: type: string apiEncryption: type: boolean apiServerCert: type: string apiServerKey: type: string apiTrustedProxies: type: array items: type: string authHTTPAddress: type: string authHTTPExclude: type: array items: $ref: "#/components/schemas/AuthInternalUserPermission" authHTTPFingerprint: type: string authInternalUsers: type: array items: $ref: "#/components/schemas/AuthInternalUser" authJWTAudience: type: string authJWTClaimKey: type: string authJWTExclude: type: array items: $ref: "#/components/schemas/AuthInternalUserPermission" authJWTInHTTPQuery: type: boolean nullable: true deprecated: true authJWTIssuer: type: string authJWTJWKS: type: string authJWTJWKSFingerprint: type: string authMethod: $ref: "#/components/schemas/AuthMethod" description: Authentication authMethods: type: array nullable: true deprecated: true items: $ref: "#/components/schemas/RTSPAuthMethod" dumpPackets: type: boolean encryption: type: string allOf: - $ref: "#/components/schemas/Encryption" nullable: true deprecated: true externalAuthenticationURL: type: string nullable: true deprecated: true hls: type: boolean description: HLS server hlsAddress: type: string hlsAllowOrigin: type: string nullable: true deprecated: true hlsAllowOrigins: type: array items: type: string hlsAlwaysRemux: type: boolean hlsCDNSecret: type: string hlsDirectory: type: string hlsDisable: type: boolean nullable: true deprecated: true hlsEncryption: type: boolean hlsMuxerCloseAfter: type: string hlsPartDuration: type: string hlsSegmentCount: type: integer format: int64 hlsSegmentDuration: type: string hlsSegmentMaxSize: type: string hlsServerCert: type: string hlsServerKey: type: string hlsTrustedProxies: type: array items: type: string hlsVariant: $ref: "#/components/schemas/HLSVariant" logDestinations: type: array items: $ref: "#/components/schemas/LogDestination" logFile: type: string logLevel: $ref: "#/components/schemas/LogLevel" description: General logStructured: type: boolean metrics: type: boolean description: Metrics metricsAddress: type: string metricsAllowOrigin: type: string nullable: true deprecated: true metricsAllowOrigins: type: array items: type: string metricsEncryption: type: boolean metricsServerCert: type: string metricsServerKey: type: string metricsTrustedProxies: type: array items: type: string moq: type: boolean description: MoQ server moqAllowOrigins: type: array items: type: string moqHTTP2Address: type: string moqHTTP3Address: type: string moqHTTPS2Address: type: string nullable: true deprecated: true moqHTTPS3Address: type: string nullable: true deprecated: true moqServerCert: type: string moqServerKey: type: string moqTrustedProxies: type: array items: type: string multicastIPRange: type: string multicastRTCPPort: type: integer format: int64 multicastRTPPort: type: integer format: int64 multicastSRTCPPort: type: integer format: int64 multicastSRTPPort: type: integer format: int64 playback: type: boolean description: Playback playbackAddress: type: string playbackAllowOrigin: type: string nullable: true deprecated: true playbackAllowOrigins: type: array items: type: string playbackEncryption: type: boolean playbackServerCert: type: string playbackServerKey: type: string playbackTrustedProxies: type: array items: type: string pprof: type: boolean description: PPROF pprofAddress: type: string pprofAllowOrigin: type: string nullable: true deprecated: true pprofAllowOrigins: type: array items: type: string pprofEncryption: type: boolean pprofServerCert: type: string pprofServerKey: type: string pprofTrustedProxies: type: array items: type: string protocols: type: array nullable: true deprecated: true items: type: string enum: - udp - multicast - tcp readBufferCount: type: integer format: int64 nullable: true deprecated: true readTimeout: type: string record: type: boolean description: Record (deprecated) nullable: true deprecated: true recordDeleteAfter: type: string nullable: true deprecated: true recordFormat: type: string allOf: - $ref: "#/components/schemas/RecordFormat" nullable: true deprecated: true recordPartDuration: type: string nullable: true deprecated: true recordPath: type: string nullable: true deprecated: true recordSegmentDuration: type: string nullable: true deprecated: true rtcpAddress: type: string rtmp: type: boolean description: RTMP server rtmpAddress: type: string rtmpDisable: type: boolean nullable: true deprecated: true rtmpEncryption: $ref: "#/components/schemas/Encryption" rtmpServerCert: type: string rtmpServerKey: type: string rtmpTrustedProxies: type: array items: type: string rtmpsAddress: type: string rtpAddress: type: string rtsp: type: boolean description: RTSP server rtspAddress: type: string rtspAuthMethods: type: array items: $ref: "#/components/schemas/RTSPAuthMethod" rtspDisable: type: boolean nullable: true deprecated: true rtspEncryption: $ref: "#/components/schemas/Encryption" rtspServerCert: type: string rtspServerKey: type: string rtspTransports: type: array items: type: string enum: - udp - multicast - tcp rtspTrustedProxies: type: array items: type: string rtspUDPReadBufferSize: type: integer format: uint64 nullable: true deprecated: true rtspsAddress: type: string runOnConnect: type: string runOnConnectRestart: type: boolean runOnDisconnect: type: string srt: type: boolean description: SRT server srtAddress: type: string srtcpAddress: type: string srtpAddress: type: string sysLogPrefix: type: string udpMaxPayloadSize: type: integer format: int64 udpReadBufferSize: type: integer format: uint64 webrtc: type: boolean description: WebRTC server webrtcAdditionalHosts: type: array items: type: string webrtcAddress: type: string webrtcAllowOrigin: type: string nullable: true deprecated: true webrtcAllowOrigins: type: array items: type: string webrtcDisable: type: boolean nullable: true deprecated: true webrtcEncryption: type: boolean webrtcHandshakeTimeout: type: string webrtcICEHostNAT1To1IPs: type: array nullable: true deprecated: true items: type: string webrtcICEServers: type: array nullable: true deprecated: true items: type: string webrtcICEServers2: type: array items: $ref: "#/components/schemas/WebRTCICEServer" webrtcICETCPMuxAddress: type: string nullable: true deprecated: true webrtcICEUDPMuxAddress: type: string nullable: true deprecated: true webrtcIPsFromInterfaces: type: boolean webrtcIPsFromInterfacesList: type: array items: type: string webrtcLocalTCPAddress: type: string webrtcLocalUDPAddress: type: string webrtcSTUNGatherTimeout: type: string webrtcServerCert: type: string webrtcServerKey: type: string webrtcTrackGatherTimeout: type: string webrtcTrustedProxies: type: array items: type: string writeQueueSize: type: integer format: int64 writeTimeout: type: string HLSMuxer: type: object properties: bytesSent: type: integer format: uint64 description: deprecated deprecated: true created: type: string lastRequest: type: string outboundBytes: type: integer format: uint64 outboundFramesDiscarded: type: integer format: uint64 path: type: string HLSMuxerList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/HLSMuxer" pageCount: type: integer format: int64 HLSSession: type: object properties: created: type: string id: type: string format: uuid isCDN: type: boolean outboundBytes: type: integer format: uint64 path: type: string query: type: string remoteAddr: type: string user: type: string userAgent: type: string HLSSessionList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/HLSSession" pageCount: type: integer format: int64 Info: type: object properties: started: type: string version: type: string MoQSession: type: object properties: created: type: string id: type: string format: uuid inboundBytes: type: integer format: uint64 outboundBytes: type: integer format: uint64 path: type: string query: type: string remoteAddr: type: string state: $ref: "#/components/schemas/MoQSessionState" userAgent: type: string version: $ref: "#/components/schemas/MoQVersion" MoQSessionList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/MoQSession" pageCount: type: integer format: int64 OK: type: object properties: status: $ref: "#/components/schemas/OKStatus" Path: type: object properties: available: type: boolean availableTime: type: string nullable: true bytesReceived: type: integer format: uint64 description: deprecated deprecated: true bytesSent: type: integer format: uint64 deprecated: true confName: type: string inboundBytes: type: integer format: uint64 inboundFramesInError: type: integer format: uint64 name: type: string online: type: boolean onlineTime: type: string nullable: true outboundBytes: type: integer format: uint64 readers: type: array items: $ref: "#/components/schemas/PathReader" ready: type: boolean deprecated: true readyTime: type: string nullable: true deprecated: true source: type: object allOf: - $ref: "#/components/schemas/PathSource" nullable: true tracks: type: array deprecated: true items: $ref: "#/components/schemas/PathTrackCodec" tracks2: type: array items: $ref: "#/components/schemas/PathTrack" PathConf: type: object properties: alwaysAvailable: type: boolean description: Always available alwaysAvailableFile: type: string alwaysAvailableTracks: type: array items: $ref: "#/components/schemas/AlwaysAvailableTrack" disablePublisherOverride: type: boolean nullable: true deprecated: true fallback: type: string nullable: true deprecated: true maxReaders: type: integer format: int64 mpegtsUDPReadBufferSize: type: integer format: uint64 description: MPEG-TS source nullable: true deprecated: true name: type: string description: filled by Validate() overridePublisher: type: boolean description: Publisher source playback: type: boolean nullable: true deprecated: true publishIPs: type: array nullable: true deprecated: true items: type: string publishPass: type: string nullable: true deprecated: true publishUser: type: string description: Authentication (deprecated) nullable: true deprecated: true readIPs: type: array nullable: true deprecated: true items: type: string readPass: type: string nullable: true deprecated: true readUser: type: string nullable: true deprecated: true record: type: boolean description: Record recordDeleteAfter: type: string recordFormat: $ref: "#/components/schemas/RecordFormat" recordMaxPartSize: type: string recordPartDuration: type: string recordPath: type: string recordSegmentDuration: type: string rpiCameraAWB: type: string rpiCameraAWBGains: type: array items: type: number format: double rpiCameraAfMode: type: string rpiCameraAfRange: type: string rpiCameraAfSpeed: type: string rpiCameraAfWindow: type: string rpiCameraBitrate: type: integer format: uint64 rpiCameraBrightness: type: number format: double rpiCameraCamID: type: integer format: uint64 description: Raspberry Pi Camera source rpiCameraCodec: type: string rpiCameraContrast: type: number format: double rpiCameraDenoise: type: string rpiCameraEV: type: number format: double rpiCameraExposure: type: string rpiCameraFPS: type: number format: double rpiCameraFlickerPeriod: type: integer format: uint64 rpiCameraGain: type: number format: double rpiCameraH264Level: type: string rpiCameraH264Profile: type: string rpiCameraHDR: type: boolean rpiCameraHFlip: type: boolean rpiCameraHardwareH264Level: type: string nullable: true deprecated: true rpiCameraHardwareH264Profile: type: string nullable: true deprecated: true rpiCameraHeight: type: integer format: uint64 rpiCameraIDRPeriod: type: integer format: uint64 rpiCameraJPEGQuality: type: integer format: uint64 nullable: true deprecated: true rpiCameraLensPosition: type: number format: double rpiCameraLevel: type: string nullable: true deprecated: true rpiCameraMJPEGQuality: type: integer format: uint64 rpiCameraMetering: type: string rpiCameraMode: type: string rpiCameraProfile: type: string nullable: true deprecated: true rpiCameraROI: type: string rpiCameraSaturation: type: number format: double rpiCameraSecondary: type: boolean rpiCameraSharpness: type: number format: double rpiCameraShutter: type: integer format: uint64 rpiCameraSoftwareH264Level: type: string nullable: true deprecated: true rpiCameraSoftwareH264Profile: type: string nullable: true deprecated: true rpiCameraTextOverlay: type: string rpiCameraTextOverlayEnable: type: boolean rpiCameraTuningFile: type: string rpiCameraVFlip: type: boolean rpiCameraWidth: type: integer format: uint64 rtpSDP: type: string description: RTP source rtpUDPReadBufferSize: type: integer format: uint64 nullable: true deprecated: true rtspAnyPort: type: boolean rtspDemuxMpegts: type: boolean rtspRangeStart: type: string rtspRangeType: $ref: "#/components/schemas/RTSPRangeType" rtspScale: type: string rtspTransport: $ref: "#/components/schemas/RTSPTransport" description: RTSP source rtspUDPReadBufferSize: type: integer format: uint64 nullable: true deprecated: true rtspUDPSourcePortRange: type: array items: type: integer format: uint64 runOnAvailable: type: string runOnAvailableRestart: type: boolean runOnDemand: type: string runOnDemandCloseAfter: type: string runOnDemandRestart: type: boolean runOnDemandStartTimeout: type: string runOnInit: type: string description: Hooks runOnInitRestart: type: boolean runOnNotReady: type: string nullable: true deprecated: true runOnOffline: type: string runOnOnline: type: string runOnOnlineRestart: type: boolean runOnRead: type: string runOnReadRestart: type: boolean runOnReady: type: string nullable: true deprecated: true runOnReadyRestart: type: boolean nullable: true deprecated: true runOnRecordSegmentComplete: type: string runOnRecordSegmentCreate: type: string runOnUnDemand: type: string runOnUnavailable: type: string runOnUnread: type: string source: type: string description: General sourceAnyPortEnable: type: boolean nullable: true deprecated: true sourceFingerprint: type: string sourceOnDemand: type: boolean sourceOnDemandCloseAfter: type: string sourceOnDemandStartTimeout: type: string sourceProtocol: type: string allOf: - $ref: "#/components/schemas/RTSPTransport" nullable: true deprecated: true sourceRedirect: type: string description: Redirect source srtPublishPassphrase: type: string srtReadPassphrase: type: string useAbsoluteTimestamp: type: boolean whepBearerToken: type: string description: WHEP source whepHandshakeTimeout: type: string whepSTUNGatherTimeout: type: string whepTrackGatherTimeout: type: string PathConfList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/PathConf" pageCount: type: integer format: int64 PathList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/Path" pageCount: type: integer format: int64 PathReader: type: object properties: id: type: string type: $ref: "#/components/schemas/PathReaderType" PathSource: type: object properties: id: type: string type: $ref: "#/components/schemas/PathSourceType" PathTrack: type: object properties: codec: $ref: "#/components/schemas/PathTrackCodec" codecProps: type: object allOf: - $ref: "#/components/schemas/PathTrackCodecProps" nullable: true PathTrackCodecPropsAC3: type: object properties: channelCount: type: integer format: int64 sampleRate: type: integer format: int64 PathTrackCodecPropsAV1: type: object properties: height: type: integer format: int64 level: type: integer format: int64 profile: type: integer format: int64 tier: type: integer format: int64 width: type: integer format: int64 PathTrackCodecPropsG711: type: object properties: channelCount: type: integer format: int64 muLaw: type: boolean sampleRate: type: integer format: int64 PathTrackCodecPropsH264: type: object properties: height: type: integer format: int64 level: type: string profile: type: string width: type: integer format: int64 PathTrackCodecPropsH265: type: object properties: height: type: integer format: int64 level: type: string profile: type: string width: type: integer format: int64 PathTrackCodecPropsLPCM: type: object properties: bitDepth: type: integer format: int64 channelCount: type: integer format: int64 sampleRate: type: integer format: int64 PathTrackCodecPropsMPEG4Audio: type: object properties: channelCount: type: integer format: int64 sampleRate: type: integer format: int64 PathTrackCodecPropsOpus: type: object properties: channelCount: type: integer format: int64 PathTrackCodecPropsVP9: type: object properties: profile: type: integer format: int64 Recording: type: object properties: name: type: string segments: type: array items: $ref: "#/components/schemas/RecordingSegment" RecordingList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/Recording" pageCount: type: integer format: int64 RecordingSegment: type: object properties: start: type: string RTMPConn: type: object properties: bytesReceived: type: integer format: uint64 description: deprecated deprecated: true bytesSent: type: integer format: uint64 deprecated: true created: type: string id: type: string format: uuid inboundBytes: type: integer format: uint64 outboundBytes: type: integer format: uint64 outboundFramesDiscarded: type: integer format: uint64 path: type: string query: type: string remoteAddr: type: string state: $ref: "#/components/schemas/RTMPConnState" user: type: string userAgent: type: string RTMPConnList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/RTMPConn" pageCount: type: integer format: int64 RTSPConn: type: object properties: bytesReceived: type: integer format: uint64 deprecated: true bytesSent: type: integer format: uint64 deprecated: true created: type: string id: type: string format: uuid inboundBytes: type: integer format: uint64 outboundBytes: type: integer format: uint64 remoteAddr: type: string session: type: string format: uuid nullable: true tunnel: type: string RTSPConnList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/RTSPConn" pageCount: type: integer format: int64 RTSPSession: type: object properties: bytesReceived: type: integer format: uint64 description: deprecated deprecated: true bytesSent: type: integer format: uint64 deprecated: true conns: type: array items: type: string format: uuid created: type: string id: type: string format: uuid inboundBytes: type: integer format: uint64 inboundRTCPPackets: type: integer format: uint64 inboundRTCPPacketsInError: type: integer format: uint64 inboundRTPPackets: type: integer format: uint64 inboundRTPPacketsInError: type: integer format: uint64 inboundRTPPacketsJitter: type: number format: double inboundRTPPacketsLost: type: integer format: uint64 outboundBytes: type: integer format: uint64 outboundRTCPPackets: type: integer format: uint64 outboundRTPPackets: type: integer format: uint64 outboundRTPPacketsDiscarded: type: integer format: uint64 outboundRTPPacketsReportedLost: type: integer format: uint64 path: type: string profile: type: string nullable: true query: type: string remoteAddr: type: string rtcpPacketsInError: type: integer format: uint64 deprecated: true rtcpPacketsReceived: type: integer format: uint64 deprecated: true rtcpPacketsSent: type: integer format: uint64 deprecated: true rtpPacketsInError: type: integer format: uint64 deprecated: true rtpPacketsJitter: type: number format: double deprecated: true rtpPacketsLost: type: integer format: uint64 deprecated: true rtpPacketsReceived: type: integer format: uint64 deprecated: true rtpPacketsSent: type: integer format: uint64 deprecated: true state: $ref: "#/components/schemas/RTSPSessionState" transport: type: string nullable: true user: type: string userAgent: type: string RTSPSessionList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/RTSPSession" pageCount: type: integer format: int64 SRTConn: type: object properties: byteMSS: type: integer format: uint64 description: Maximum Segment Size (MSS), in bytes bytesAvailReceiveBuf: type: integer format: uint64 description: The available space in the receiver's buffer, in bytes bytesAvailSendBuf: type: integer format: uint64 description: The available space in the sender's buffer, in bytes bytesReceiveBuf: type: integer format: uint64 description: Instantaneous (current) value of packetsRcvBuf, expressed in bytes, including payload and all 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 description: Same as PacketsReceivedBelated, 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) 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 bytesReceivedRetrans: type: integer format: uint64 description: Same as packetsReceivedRetrans, 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) bytesReceivedUnique: type: integer format: uint64 description: Same as packetsReceivedUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesRetrans: type: integer format: uint64 description: Same as packetsRetrans, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesSendBuf: type: integer format: uint64 description: Instantaneous (current) value of packetsSndBuf, but expressed in bytes, including payload and all 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) bytesSent: type: integer format: uint64 description: Same as packetsSent, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) bytesSentUnique: type: integer format: uint64 description: Same as packetsSentUnique, but expressed in bytes, including payload and all the headers (IP, TCP, SRT) created: type: string id: type: string format: uuid mbpsLinkCapacity: type: number format: double description: Estimated capacity of the network link, in Mbps mbpsMaxBW: type: number format: double description: Transmission bandwidth limit, in Mbps mbpsReceiveRate: type: number format: double description: Current receiving bandwidth, in Mbps mbpsSendRate: type: number format: double description: Current transmission bandwidth, in Mbps 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 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 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 outboundFramesDiscarded: type: integer format: uint64 packetsFlightSize: type: integer format: uint64 description: The number of packets in flight packetsFlowWindow: type: integer format: uint64 description: The maximum number of packets that can be "in flight" packetsReceiveBuf: type: integer format: uint64 description: The number of acknowledged packets in receiver's buffer packetsReceived: type: integer format: uint64 description: The total number of received DATA packets, including retransmitted packets packetsReceivedACK: type: integer format: uint64 description: The total number of received ACK (Acknowledgement) control packets packetsReceivedAvgBelatedTime: type: integer format: uint64 description: Accumulated difference between the current time and the time-to-play of a packet that is received late packetsReceivedBelated: type: integer format: uint64 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 packetsReceivedKM: type: integer format: uint64 description: The total number of received KM (Key Material) control packets 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 packetsReceivedLossRate: type: number format: double description: Percentage of retransmitted data vs. received data packetsReceivedNAK: type: integer format: uint64 description: The total number of received NAK (Negative Acknowledgement) control packets packetsReceivedRetrans: type: integer format: uint64 description: The total number of retransmitted packets registered at the receiver side packetsReceivedUndecrypt: type: integer format: uint64 description: The total number of packets that failed to be decrypted at the receiver side 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. packetsReorderTolerance: type: integer format: uint64 description: Instant value of the packet reorder tolerance packetsRetrans: type: integer format: uint64 description: The total number of retransmitted packets sent by the SRT sender 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 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 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. packetsSendLossRate: type: number format: double description: Percentage of resent data vs. sent data packetsSent: type: integer format: uint64 description: The total number of sent DATA packets, including retransmitted packets packetsSentACK: type: integer format: uint64 description: The total number of sent ACK (Acknowledgement) control packets packetsSentKM: type: integer format: uint64 description: The total number of sent KM (Key Material) control packets packetsSentNAK: type: integer format: uint64 description: The total number of sent NAK (Negative Acknowledgement) control packets packetsSentUnique: type: integer format: uint64 description: The total number of unique DATA packets sent by the SRT sender path: type: string query: type: string remoteAddr: type: string state: $ref: "#/components/schemas/SRTConnState" usPacketsSendPeriod: type: number format: double description: Current minimum time interval between which consecutive packets are sent, in microseconds 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 user: type: string SRTConnList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/SRTConn" pageCount: type: integer format: int64 WebRTCICEServer: type: object properties: clientOnly: type: boolean password: type: string url: type: string username: type: string WebRTCSession: type: object properties: bytesReceived: type: integer format: uint64 description: deprecated deprecated: true bytesSent: type: integer format: uint64 deprecated: true created: type: string id: type: string format: uuid inboundBytes: type: integer format: uint64 inboundRTCPPackets: type: integer format: uint64 inboundRTPPackets: type: integer format: uint64 inboundRTPPacketsJitter: type: number format: double inboundRTPPacketsLost: type: integer format: uint64 localCandidate: type: string outboundBytes: type: integer format: uint64 outboundFramesDiscarded: type: integer format: uint64 outboundRTCPPackets: type: integer format: uint64 outboundRTPPackets: type: integer format: uint64 path: type: string peerConnectionEstablished: type: boolean query: type: string remoteAddr: type: string remoteCandidate: type: string rtcpPacketsReceived: type: integer format: uint64 deprecated: true rtcpPacketsSent: type: integer format: uint64 deprecated: true rtpPacketsJitter: type: number format: double deprecated: true rtpPacketsLost: type: integer format: uint64 deprecated: true rtpPacketsReceived: type: integer format: uint64 deprecated: true rtpPacketsSent: type: integer format: uint64 deprecated: true state: $ref: "#/components/schemas/WebRTCSessionState" user: type: string userAgent: type: string WebRTCSessionList: type: object properties: itemCount: type: integer format: int64 items: type: array items: $ref: "#/components/schemas/WebRTCSession" pageCount: type: integer format: int64 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: [Media-over-QUIC] 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: [Media-over-QUIC] 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: [Media-over-QUIC] 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"