mediamtx/apidocs/openapi.yaml

1545 lines
36 KiB
YAML
Raw Normal View History

2021-08-07 16:28:27 +00:00
openapi: 3.0.0
info:
version: 1.0.0
2023-05-16 18:54:06 +00:00
title: MediaMTX API
description: API of MediaMTX, a server and proxy that supports various protocols.
2021-08-07 16:28:27 +00:00
license:
name: MIT
url: https://opensource.org/licenses/MIT
servers:
2021-08-07 17:08:07 +00:00
- url: http://localhost:9997
2021-08-07 16:28:27 +00:00
security: []
2021-08-07 16:28:27 +00:00
components:
schemas:
GlobalConf:
2021-08-07 16:28:27 +00:00
type: object
properties:
# General
2021-08-07 16:28:27 +00:00
logLevel:
type: string
logDestinations:
type: array
items:
type: string
logFile:
type: string
readTimeout:
type: string
2021-08-07 16:28:27 +00:00
writeTimeout:
type: string
writeQueueSize:
2021-08-07 16:28:27 +00:00
type: integer
udpMaxPayloadSize:
type: integer
externalAuthenticationURL:
type: string
2021-08-07 16:28:27 +00:00
api:
type: boolean
apiAddress:
type: string
metrics:
type: boolean
metricsAddress:
type: string
pprof:
type: boolean
pprofAddress:
type: string
runOnConnect:
type: string
runOnConnectRestart:
type: boolean
runOnDisconnect:
type: string
2021-08-07 16:28:27 +00:00
2021-12-21 23:27:58 +00:00
# RTSP
rtsp:
2021-08-07 16:28:27 +00:00
type: boolean
protocols:
type: array
items:
type: string
encryption:
type: string
rtspAddress:
type: string
rtspsAddress:
type: string
rtpAddress:
type: string
rtcpAddress:
type: string
multicastIPRange:
type: string
multicastRTPPort:
type: integer
multicastRTCPPort:
type: integer
serverKey:
type: string
serverCert:
type: string
authMethods:
type: array
items:
type: string
2021-12-21 23:27:58 +00:00
# RTMP
rtmp:
2021-08-07 16:28:27 +00:00
type: boolean
rtmpAddress:
type: string
2022-12-19 22:30:45 +00:00
rtmpEncryption:
type: string
rtmpsAddress:
type: string
rtmpServerKey:
type: string
rtmpServerCert:
type: string
2021-08-07 16:28:27 +00:00
2021-12-21 23:27:58 +00:00
# HLS
hls:
2021-08-07 16:28:27 +00:00
type: boolean
hlsAddress:
type: string
2022-12-19 22:30:45 +00:00
hlsEncryption:
type: boolean
hlsServerKey:
type: string
hlsServerCert:
type: string
2021-08-07 16:28:27 +00:00
hlsAlwaysRemux:
type: boolean
Implement Low-Latency HLS (#938) * add hlsVariant parameter * hls: split muxer into variants * hls: implement fmp4 segments * hls muxer: implement low latency mode * hls muxer: support audio with fmp4 mode * hls muxer: rewrite file router * hls muxer: implement preload hint * hls muxer: add various error codes * hls muxer: use explicit flags * hls muxer: fix error in aac pts * hls muxer: fix sudden freezes with video+audio * hls muxer: skip empty parts * hls muxer: fix video FPS * hls muxer: add parameter hlsPartDuration * hls muxer: refactor fmp4 muxer * hls muxer: fix CAN-SKIP-UNTIL * hls muxer: refactor code * hls muxer: show only parts of last 2 segments * hls muxer: implementa playlist delta updates * hls muxer: change playlist content type * hls muxer: improve video dts precision * hls muxer: fix video sample flags * hls muxer: improve iphone audio support * hls muxer: improve mp4 timestamp precision * hls muxer: add offset between pts and dts * hls muxer: close muxer in case of error * hls muxer: stop logging requests with the info level * hls muxer: rename entry into sample * hls muxer: compensate video dts error over time * hls muxer: change default segment count * hls muxer: add starting gap * hls muxer: set default part duration to 200ms * hls muxer: fix audio-only streams on ios * hls muxer: add playsinline attribute to video tag of default web page * hls muxer: keep mpegts as the default hls variant * hls muxer: implement encryption * hls muxer: rewrite dts estimation * hls muxer: improve DTS precision * hls muxer: use right SPS/PPS for each sample * hls muxer: adjust part duration dynamically * add comments * update readme * hls muxer: fix memory leak * hls muxer: decrease ram consumption
2022-05-31 17:17:26 +00:00
hlsVariant:
type: string
2021-08-07 16:28:27 +00:00
hlsSegmentCount:
type: integer
hlsSegmentDuration:
type: string
Implement Low-Latency HLS (#938) * add hlsVariant parameter * hls: split muxer into variants * hls: implement fmp4 segments * hls muxer: implement low latency mode * hls muxer: support audio with fmp4 mode * hls muxer: rewrite file router * hls muxer: implement preload hint * hls muxer: add various error codes * hls muxer: use explicit flags * hls muxer: fix error in aac pts * hls muxer: fix sudden freezes with video+audio * hls muxer: skip empty parts * hls muxer: fix video FPS * hls muxer: add parameter hlsPartDuration * hls muxer: refactor fmp4 muxer * hls muxer: fix CAN-SKIP-UNTIL * hls muxer: refactor code * hls muxer: show only parts of last 2 segments * hls muxer: implementa playlist delta updates * hls muxer: change playlist content type * hls muxer: improve video dts precision * hls muxer: fix video sample flags * hls muxer: improve iphone audio support * hls muxer: improve mp4 timestamp precision * hls muxer: add offset between pts and dts * hls muxer: close muxer in case of error * hls muxer: stop logging requests with the info level * hls muxer: rename entry into sample * hls muxer: compensate video dts error over time * hls muxer: change default segment count * hls muxer: add starting gap * hls muxer: set default part duration to 200ms * hls muxer: fix audio-only streams on ios * hls muxer: add playsinline attribute to video tag of default web page * hls muxer: keep mpegts as the default hls variant * hls muxer: implement encryption * hls muxer: rewrite dts estimation * hls muxer: improve DTS precision * hls muxer: use right SPS/PPS for each sample * hls muxer: adjust part duration dynamically * add comments * update readme * hls muxer: fix memory leak * hls muxer: decrease ram consumption
2022-05-31 17:17:26 +00:00
hlsPartDuration:
type: string
hlsSegmentMaxSize:
type: string
2021-08-07 16:28:27 +00:00
hlsAllowOrigin:
type: string
2022-12-19 22:30:45 +00:00
hlsTrustedProxies:
type: array
items:
type: string
hlsDirectory:
type: string
2022-12-19 22:30:45 +00:00
# WebRTC
webrtc:
Implement Low-Latency HLS (#938) * add hlsVariant parameter * hls: split muxer into variants * hls: implement fmp4 segments * hls muxer: implement low latency mode * hls muxer: support audio with fmp4 mode * hls muxer: rewrite file router * hls muxer: implement preload hint * hls muxer: add various error codes * hls muxer: use explicit flags * hls muxer: fix error in aac pts * hls muxer: fix sudden freezes with video+audio * hls muxer: skip empty parts * hls muxer: fix video FPS * hls muxer: add parameter hlsPartDuration * hls muxer: refactor fmp4 muxer * hls muxer: fix CAN-SKIP-UNTIL * hls muxer: refactor code * hls muxer: show only parts of last 2 segments * hls muxer: implementa playlist delta updates * hls muxer: change playlist content type * hls muxer: improve video dts precision * hls muxer: fix video sample flags * hls muxer: improve iphone audio support * hls muxer: improve mp4 timestamp precision * hls muxer: add offset between pts and dts * hls muxer: close muxer in case of error * hls muxer: stop logging requests with the info level * hls muxer: rename entry into sample * hls muxer: compensate video dts error over time * hls muxer: change default segment count * hls muxer: add starting gap * hls muxer: set default part duration to 200ms * hls muxer: fix audio-only streams on ios * hls muxer: add playsinline attribute to video tag of default web page * hls muxer: keep mpegts as the default hls variant * hls muxer: implement encryption * hls muxer: rewrite dts estimation * hls muxer: improve DTS precision * hls muxer: use right SPS/PPS for each sample * hls muxer: adjust part duration dynamically * add comments * update readme * hls muxer: fix memory leak * hls muxer: decrease ram consumption
2022-05-31 17:17:26 +00:00
type: boolean
2022-12-19 22:30:45 +00:00
webrtcAddress:
Implement Low-Latency HLS (#938) * add hlsVariant parameter * hls: split muxer into variants * hls: implement fmp4 segments * hls muxer: implement low latency mode * hls muxer: support audio with fmp4 mode * hls muxer: rewrite file router * hls muxer: implement preload hint * hls muxer: add various error codes * hls muxer: use explicit flags * hls muxer: fix error in aac pts * hls muxer: fix sudden freezes with video+audio * hls muxer: skip empty parts * hls muxer: fix video FPS * hls muxer: add parameter hlsPartDuration * hls muxer: refactor fmp4 muxer * hls muxer: fix CAN-SKIP-UNTIL * hls muxer: refactor code * hls muxer: show only parts of last 2 segments * hls muxer: implementa playlist delta updates * hls muxer: change playlist content type * hls muxer: improve video dts precision * hls muxer: fix video sample flags * hls muxer: improve iphone audio support * hls muxer: improve mp4 timestamp precision * hls muxer: add offset between pts and dts * hls muxer: close muxer in case of error * hls muxer: stop logging requests with the info level * hls muxer: rename entry into sample * hls muxer: compensate video dts error over time * hls muxer: change default segment count * hls muxer: add starting gap * hls muxer: set default part duration to 200ms * hls muxer: fix audio-only streams on ios * hls muxer: add playsinline attribute to video tag of default web page * hls muxer: keep mpegts as the default hls variant * hls muxer: implement encryption * hls muxer: rewrite dts estimation * hls muxer: improve DTS precision * hls muxer: use right SPS/PPS for each sample * hls muxer: adjust part duration dynamically * add comments * update readme * hls muxer: fix memory leak * hls muxer: decrease ram consumption
2022-05-31 17:17:26 +00:00
type: string
2022-12-19 22:30:45 +00:00
webrtcEncryption:
type: boolean
webrtcServerKey:
type: string
webrtcServerCert:
type: string
webrtcAllowOrigin:
Implement Low-Latency HLS (#938) * add hlsVariant parameter * hls: split muxer into variants * hls: implement fmp4 segments * hls muxer: implement low latency mode * hls muxer: support audio with fmp4 mode * hls muxer: rewrite file router * hls muxer: implement preload hint * hls muxer: add various error codes * hls muxer: use explicit flags * hls muxer: fix error in aac pts * hls muxer: fix sudden freezes with video+audio * hls muxer: skip empty parts * hls muxer: fix video FPS * hls muxer: add parameter hlsPartDuration * hls muxer: refactor fmp4 muxer * hls muxer: fix CAN-SKIP-UNTIL * hls muxer: refactor code * hls muxer: show only parts of last 2 segments * hls muxer: implementa playlist delta updates * hls muxer: change playlist content type * hls muxer: improve video dts precision * hls muxer: fix video sample flags * hls muxer: improve iphone audio support * hls muxer: improve mp4 timestamp precision * hls muxer: add offset between pts and dts * hls muxer: close muxer in case of error * hls muxer: stop logging requests with the info level * hls muxer: rename entry into sample * hls muxer: compensate video dts error over time * hls muxer: change default segment count * hls muxer: add starting gap * hls muxer: set default part duration to 200ms * hls muxer: fix audio-only streams on ios * hls muxer: add playsinline attribute to video tag of default web page * hls muxer: keep mpegts as the default hls variant * hls muxer: implement encryption * hls muxer: rewrite dts estimation * hls muxer: improve DTS precision * hls muxer: use right SPS/PPS for each sample * hls muxer: adjust part duration dynamically * add comments * update readme * hls muxer: fix memory leak * hls muxer: decrease ram consumption
2022-05-31 17:17:26 +00:00
type: string
2022-12-19 22:30:45 +00:00
webrtcTrustedProxies:
type: array
items:
type: string
webrtcICEServers2:
2022-12-19 22:30:45 +00:00
type: array
items:
type: object
properties:
url:
type: string
username:
type: string
password:
type: string
webrtcICEInterfaces:
type: array
items:
type: string
webrtcICEHostNAT1To1IPs:
type: array
items:
type: string
2022-12-30 16:23:41 +00:00
webrtcICEUDPMuxAddress:
type: string
webrtcICETCPMuxAddress:
type: string
2021-08-07 16:28:27 +00:00
# SRT
srt:
type: boolean
srtAddress:
type: string
# Record
record:
type: boolean
recordPath:
type: string
recordFormat:
type: string
recordPartDuration:
type: string
recordSegmentDuration:
type: string
recordDeleteAfter:
type: string
2021-08-07 16:28:27 +00:00
PathConf:
type: object
properties:
# General
2021-08-07 16:28:27 +00:00
source:
type: string
sourceFingerprint:
type: string
sourceOnDemand:
type: boolean
sourceOnDemandStartTimeout:
type: string
2021-08-07 16:28:27 +00:00
sourceOnDemandCloseAfter:
type: string
maxReaders:
type: integer
srtReadPassphrase:
type: string
record:
type: boolean
# Authentication
publishUser:
2021-08-07 16:28:27 +00:00
type: string
publishPass:
type: string
publishIPs:
type: array
items:
type: string
readUser:
type: string
readPass:
type: string
readIPs:
type: array
items:
type: string
# Publisher
overridePublisher:
2021-08-07 16:28:27 +00:00
type: boolean
fallback:
type: string
srtPublishPassphrase:
type: string
# RTSP
sourceProtocol:
type: string
sourceAnyPortEnable:
type: boolean
rtspRangeType:
type: string
rtspRangeStart:
type: string
# Redirect
sourceRedirect:
type: string
# Raspberry Pi Camera
2022-08-23 11:52:01 +00:00
rpiCameraCamID:
type: integer
2022-08-23 11:52:01 +00:00
rpiCameraWidth:
type: integer
2022-08-23 11:52:01 +00:00
rpiCameraHeight:
type: integer
2022-10-25 12:31:21 +00:00
rpiCameraHFlip:
type: boolean
rpiCameraVFlip:
type: boolean
rpiCameraBrightness:
type: number
rpiCameraContrast:
type: number
rpiCameraSaturation:
type: number
rpiCameraSharpness:
type: number
rpiCameraExposure:
type: string
rpiCameraAWB:
type: string
rpiCameraDenoise:
type: string
rpiCameraShutter:
type: integer
2022-10-25 12:31:21 +00:00
rpiCameraMetering:
type: string
rpiCameraGain:
type: number
rpiCameraEV:
type: number
rpiCameraROI:
type: string
rpiCameraHDR:
type: boolean
2022-10-25 12:31:21 +00:00
rpiCameraTuningFile:
type: string
rpiCameraMode:
type: string
2022-08-23 11:52:01 +00:00
rpiCameraFPS:
type: number
2022-08-23 11:52:01 +00:00
rpiCameraIDRPeriod:
type: integer
2022-08-23 11:52:01 +00:00
rpiCameraBitrate:
type: integer
2022-08-23 11:52:01 +00:00
rpiCameraProfile:
type: string
rpiCameraLevel:
type: string
2023-02-10 11:23:45 +00:00
rpiCameraAfMode:
type: string
rpiCameraAfRange:
type: string
rpiCameraAfSpeed:
type: string
rpiCameraLensPosition:
type: number
rpiCameraAfWindow:
type: string
rpiCameraTextOverlayEnable:
type: boolean
rpiCameraTextOverlay:
type: string
2021-08-07 16:28:27 +00:00
# Hooks
2021-08-07 16:28:27 +00:00
runOnInit:
type: string
runOnInitRestart:
type: boolean
runOnDemand:
type: string
runOnDemandRestart:
type: boolean
runOnDemandStartTimeout:
type: string
2021-08-07 16:28:27 +00:00
runOnDemandCloseAfter:
type: string
runOnReady:
2021-08-07 16:28:27 +00:00
type: string
runOnReadyRestart:
2021-08-07 16:28:27 +00:00
type: boolean
runOnNotReady:
type: string
2021-08-07 16:28:27 +00:00
runOnRead:
type: string
runOnReadRestart:
type: boolean
runOnUnread:
type: string
runOnRecordSegmentCreate:
type: string
runOnRecordSegmentComplete:
type: string
2021-08-07 16:28:27 +00:00
PathConfList:
type: object
properties:
pageCount:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/PathConf'
2021-08-07 16:28:27 +00:00
Path:
type: object
properties:
name:
type: string
2021-08-07 16:28:27 +00:00
confName:
type: string
source:
$ref: '#/components/schemas/PathSource'
nullable: true
ready:
type: boolean
readyTime:
type: string
nullable: true
tracks:
type: array
items:
type: string
bytesReceived:
type: integer
format: int64
2021-08-07 16:28:27 +00:00
readers:
type: array
items:
$ref: '#/components/schemas/PathReader'
2021-08-07 17:03:07 +00:00
PathList:
type: object
properties:
pageCount:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/Path'
PathSource:
2021-08-07 17:03:07 +00:00
type: object
properties:
type:
type: string
enum:
- hlsSource
- redirect
- rpiCameraSource
- rtmpConn
- rtmpSource
- rtspSession
- rtspSource
- rtspsSession
- srtConn
- srtSource
- udpSource
- webRTCSession
- webRTCSource
2022-12-21 11:50:02 +00:00
id:
type: string
2022-12-21 11:45:29 +00:00
PathReader:
type: object
properties:
type:
type: string
enum:
- hlsMuxer
- rtmpConn
- rtspSession
- rtspsSession
- srtConn
- webRTCSession
id:
type: string
HLSMuxer:
2021-08-07 16:28:27 +00:00
type: object
properties:
path:
type: string
created:
type: string
lastRequest:
2021-08-07 16:28:27 +00:00
type: string
bytesSent:
type: integer
format: int64
2021-08-07 16:28:27 +00:00
HLSMuxerList:
type: object
properties:
pageCount:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/HLSMuxer'
2021-08-07 16:28:27 +00:00
RTMPConn:
type: object
properties:
id:
type: string
created:
type: string
2021-08-07 16:28:27 +00:00
remoteAddr:
type: string
state:
type: string
enum: [idle, read, publish]
path:
type: string
bytesReceived:
type: integer
format: int64
bytesSent:
type: integer
format: int64
RTMPConnList:
2021-11-05 16:14:31 +00:00
type: object
properties:
pageCount:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/RTMPConn'
RTSPConn:
type: object
properties:
id:
type: string
created:
type: string
remoteAddr:
2021-11-05 16:14:31 +00:00
type: string
bytesReceived:
type: integer
format: int64
bytesSent:
type: integer
format: int64
2021-11-05 16:14:31 +00:00
RTSPConnList:
2022-12-15 23:50:47 +00:00
type: object
properties:
pageCount:
type: integer
2022-12-15 23:50:47 +00:00
items:
type: array
items:
$ref: '#/components/schemas/RTSPConn'
2022-12-15 23:50:47 +00:00
RTSPSession:
type: object
properties:
id:
type: string
created:
type: string
remoteAddr:
type: string
state:
type: string
enum: [idle, read, publish]
path:
type: string
transport:
type: string
nullable: true
bytesReceived:
type: integer
format: int64
bytesSent:
type: integer
format: int64
RTSPSessionList:
2022-12-15 23:50:47 +00:00
type: object
properties:
pageCount:
type: integer
2022-12-15 23:50:47 +00:00
items:
type: array
items:
$ref: '#/components/schemas/RTSPSession'
2022-12-15 23:50:47 +00:00
SRTConn:
type: object
properties:
id:
type: string
created:
type: string
remoteAddr:
type: string
state:
type: string
enum: [idle, read, publish]
path:
type: string
bytesReceived:
type: integer
format: int64
bytesSent:
type: integer
format: int64
SRTConnList:
type: object
properties:
pageCount:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/SRTConn'
WebRTCSession:
type: object
properties:
id:
type: string
2022-12-15 23:50:47 +00:00
created:
type: string
remoteAddr:
type: string
peerConnectionEstablished:
2023-01-07 12:50:29 +00:00
type: boolean
localCandidate:
type: string
remoteCandidate:
type: string
state:
type: string
enum: [read, publish]
path:
type: string
2022-12-15 23:50:47 +00:00
bytesReceived:
type: integer
format: int64
2022-12-15 23:50:47 +00:00
bytesSent:
type: integer
format: int64
WebRTCSessionList:
2021-11-05 16:14:31 +00:00
type: object
properties:
pageCount:
type: integer
2021-11-05 16:14:31 +00:00
items:
type: array
items:
$ref: '#/components/schemas/WebRTCSession'
2021-11-05 16:14:31 +00:00
2021-08-07 16:28:27 +00:00
paths:
/v3/config/global/get:
2021-08-07 16:28:27 +00:00
get:
operationId: configGlobalGet
summary: returns the global configuration.
2021-08-07 16:28:27 +00:00
description: ''
responses:
'200':
description: the request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/GlobalConf'
2022-02-16 21:47:37 +00:00
'400':
description: invalid request.
2021-08-07 16:28:27 +00:00
'500':
description: internal server error.
/v3/config/global/patch:
patch:
operationId: configGlobalSet
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.
'400':
description: invalid request.
'500':
description: internal server error.
/v3/config/pathdefaults/get:
get:
operationId: configPathDefaultsGet
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.
'500':
description: internal server error.
/v3/config/pathdefaults/patch:
patch:
operationId: configPathDefaultsPatch
summary: patches the default path configuration.
description: all fields are optional.
2021-08-07 17:03:07 +00:00
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PathConf'
2021-08-07 16:28:27 +00:00
responses:
'200':
description: the request was successful.
'400':
description: invalid request.
'500':
description: internal server error.
/v3/config/paths/list:
get:
operationId: configPathsList
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.
'500':
description: internal server error.
/v3/config/paths/get/{name}:
get:
operationId: configPathsGet
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.
'500':
description: internal server error.
/v3/config/paths/add/{name}:
2021-08-07 16:28:27 +00:00
post:
operationId: configPathsAdd
summary: adds a path configuration.
2021-08-07 17:03:07 +00:00
description: all fields are optional.
2021-08-07 16:28:27 +00:00
parameters:
- name: name
in: path
required: true
description: the name of the path.
schema:
type: string
2021-08-07 17:03:07 +00:00
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PathConf'
2021-08-07 16:28:27 +00:00
responses:
'200':
description: the request was successful.
'400':
description: invalid request.
'500':
description: internal server error.
/v3/config/paths/patch/{name}:
patch:
operationId: configPathsPatch
summary: patches a path configuration.
2021-08-07 17:03:07 +00:00
description: all fields are optional.
2021-08-07 16:28:27 +00:00
parameters:
- name: name
in: path
required: true
description: the name of the path.
schema:
type: string
2021-08-07 17:03:07 +00:00
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PathConf'
2021-08-07 16:28:27 +00:00
responses:
'200':
description: the request was successful.
'400':
description: invalid request.
'404':
description: configuration not found.
2021-08-07 16:28:27 +00:00
'500':
description: internal server error.
/v3/config/paths/replace/{name}:
2021-08-07 16:28:27 +00:00
post:
operationId: configPathsReplace
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.
'400':
description: invalid request.
'404':
description: configuration not found.
'500':
description: internal server error.
/v3/config/paths/delete/{name}:
delete:
operationId: configPathsDelete
summary: removes a path configuration.
2021-08-07 16:28:27 +00:00
description: ''
parameters:
- name: name
in: path
required: true
description: the name of the path.
schema:
type: string
responses:
'200':
description: the request was successful.
'400':
description: invalid request.
'404':
description: configuration not found.
2021-08-07 16:28:27 +00:00
'500':
description: internal server error.
/v3/hlsmuxers/list:
2021-08-07 16:28:27 +00:00
get:
2022-12-15 23:50:47 +00:00
operationId: hlsMuxersList
summary: returns all HLS muxers.
2021-08-07 16:28:27 +00:00
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
2021-08-07 16:28:27 +00:00
responses:
'200':
description: the request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/HLSMuxerList'
2021-08-07 16:28:27 +00:00
'400':
description: invalid request.
'500':
description: internal server error.
/v3/hlsmuxers/get/{name}:
get:
operationId: hlsMuxersGet
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.
'404':
description: muxer not found.
'500':
description: internal server error.
/v3/paths/list:
get:
2022-12-15 23:50:47 +00:00
operationId: pathsList
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.
'500':
description: internal server error.
/v3/paths/get/{name}:
get:
operationId: pathsGet
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.
'404':
description: path not found.
'500':
description: internal server error.
/v3/rtspconns/list:
2021-08-07 16:28:27 +00:00
get:
2022-12-15 23:50:47 +00:00
operationId: rtspConnsList
summary: returns all RTSP connections.
2021-08-07 16:28:27 +00:00
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
2021-08-07 16:28:27 +00:00
responses:
'200':
description: the request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/RTSPConnList'
2021-08-07 16:28:27 +00:00
'400':
description: invalid request.
'500':
description: internal server error.
/v3/rtspconns/get/{id}:
get:
operationId: rtspConnsGet
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.
'404':
description: connection not found.
'500':
description: internal server error.
/v3/rtspsessions/list:
get:
2022-12-15 23:50:47 +00:00
operationId: rtspSessionsList
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.
'500':
description: internal server error.
/v3/rtspsessions/get/{id}:
get:
operationId: rtspSessionsGet
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.
'404':
description: session not found.
'500':
description: internal server error.
/v3/rtspsessions/kick/{id}:
2021-08-07 16:28:27 +00:00
post:
operationId: rtspSessionsKick
summary: kicks out a RTSP session from the server.
description: ''
parameters:
- name: id
in: path
required: true
description: ID of the session.
2021-08-07 16:28:27 +00:00
schema:
type: string
responses:
'200':
description: the request was successful.
'400':
description: invalid request.
'404':
description: session not found.
2021-08-07 16:28:27 +00:00
'500':
description: internal server error.
/v3/rtspsconns/list:
2022-12-15 23:50:47 +00:00
get:
operationId: rtspsConnsList
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
2022-12-15 23:50:47 +00:00
responses:
'200':
description: the request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/RTSPConnList'
2022-12-15 23:50:47 +00:00
'400':
description: invalid request.
'500':
description: internal server error.
/v3/rtspsconns/get/{id}:
get:
operationId: rtspsConnsGet
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.
'404':
description: connection not found.
'500':
description: internal server error.
/v3/rtspssessions/list:
get:
operationId: rtspsSessionsList
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.
'404':
description: session not found.
'500':
description: internal server error.
/v3/rtspssessions/get/{id}:
get:
operationId: rtspsSessionsGet
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.
'404':
description: session not found.
'500':
description: internal server error.
/v3/rtspssessions/kick/{id}:
post:
operationId: rtspsSessionsKick
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.
'400':
description: invalid request.
'404':
description: session not found.
'500':
description: internal server error.
/v3/rtmpconns/list:
2021-08-07 16:28:27 +00:00
get:
operationId: rtmpConnsList
summary: returns all RTMP connections.
2021-08-07 16:28:27 +00:00
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
2021-08-07 16:28:27 +00:00
responses:
'200':
description: the request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/RTMPConnList'
2021-08-07 16:28:27 +00:00
'400':
description: invalid request.
'500':
description: internal server error.
/v3/rtmpconns/get/{id}:
get:
operationId: rtmpConnectionsGet
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.
'404':
description: connection not found.
'500':
description: internal server error.
/v3/rtmpconns/kick/{id}:
2021-08-07 16:28:27 +00:00
post:
operationId: rtmpConnsKick
summary: kicks out a RTMP connection from the server.
description: ''
parameters:
- name: id
in: path
required: true
description: ID of the connection.
2021-08-07 16:28:27 +00:00
schema:
type: string
responses:
'200':
description: the request was successful.
'400':
description: invalid request.
'404':
description: session not found.
2021-08-07 16:28:27 +00:00
'500':
description: internal server error.
2021-11-05 16:14:31 +00:00
/v3/rtmpsconns/list:
get:
operationId: rtmpsConnsList
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.
'500':
description: internal server error.
/v3/rtmpsconns/get/{id}:
get:
operationId: rtmpsConnectionsGet
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.
'404':
description: connection not found.
'500':
description: internal server error.
/v3/rtmpsconns/kick/{id}:
post:
operationId: rtmpsConnsKick
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.
'400':
description: invalid request.
'404':
description: session not found.
'500':
description: internal server error.
/v3/srtconns/list:
get:
operationId: srtConnsList
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.
'500':
description: internal server error.
/v3/srtconns/get/{id}:
get:
operationId: srtConnsGet
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.
'404':
description: connection not found.
'500':
description: internal server error.
/v3/srtconns/kick/{id}:
post:
operationId: srtConnsKick
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.
'400':
description: invalid request.
'404':
description: connection not found.
'500':
description: internal server error.
/v3/webrtcsessions/list:
2021-11-05 16:14:31 +00:00
get:
operationId: webrtcSessionsList
2023-06-02 09:54:10 +00:00
summary: returns all WebRTC sessions.
2021-11-05 16:14:31 +00:00
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
2021-11-05 16:14:31 +00:00
responses:
'200':
description: the request was successful.
content:
application/json:
schema:
$ref: '#/components/schemas/WebRTCSessionList'
'400':
description: invalid request.
'500':
description: internal server error.
/v3/webrtcsessions/get/{id}:
get:
operationId: webrtcSessionsGet
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'
2022-12-15 23:50:47 +00:00
'400':
description: invalid request.
'404':
description: session not found.
2022-12-15 23:50:47 +00:00
'500':
description: internal server error.
/v3/webrtcsessions/kick/{id}:
2022-12-15 23:50:47 +00:00
post:
operationId: webrtcSessionsKick
summary: kicks out a WebRTC session from the server.
2022-12-15 23:50:47 +00:00
description: ''
parameters:
- name: id
in: path
required: true
description: ID of the session.
2022-12-15 23:50:47 +00:00
schema:
type: string
responses:
'200':
description: the request was successful.
2021-11-05 16:14:31 +00:00
'400':
description: invalid request.
'404':
description: session not found.
2021-11-05 16:14:31 +00:00
'500':
description: internal server error.