Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Type
Description
Examples
Short
16bits integer
12345
Int
32bits integer
1234941932
Long
64bits integer
391859818923919232311
Float
64bits real number
3.5483
String
A string
"Hello"
Bool
true/false
true
Timestamp (String)
A timestamp in ISO8601 format
"2021-01-01T11:00:00.000+09:00"
TimeInterval (Long)
A time interval (unit: milliseconds)
349820
IP (String)
IP address
"127.0.0.1"
RangedPort (String)
Port numbers with range (it can contain multiple ports and protocols)
start_port[-end_port][,start_port[-end_port][,start_port[-end_port]...]][/protocol]
"40000-40005/tcp"
"40000-40005"
"40000-40005,10000,20000/tcp"
Port (String)
A port number
start_port[/protocol]
"1935/tcp"
"1935"
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}/streams
Lists all stream names in the Application
Request Example:
GET http://1.2.3.4:8081/v1/vhosts/default/apps/app/streams
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}/streams/{stream_name}
Gets the configuration of the Stream
Request Example:
GET http://1.2.3.4:8081/v1/vhosts/default/apps/app/streams/stream
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
vhost_name
string
A name of VirtualHost
app_name
string
A name of Application
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
vhost_name
string
A name of VirtualHost
app_name
string
A name of Application
stream_name
string
A name of Stream
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
The REST APIs provided by OME allow you to query or change settings such as VirtualHost and Application/Stream.
The APIs are currently beta version, so there are some limitations/considerations.
Settings of VirtualHost can only be viewed and cannot be changed or deleted.
If you add/change/delete the settings of the App/Output Profile by invoking the API, the app will be restarted. This means that all sessions associated with the app will be disconnected.
The API version is fixed with v1 until the experimental stage is complete, and the detailed specification can be changed at any time.
By default, OvenMediaEngine's APIs are disabled, so the following settings are required to use the API:
Set the <Port>
to use by the API server. If you omit <Port>
, you will use the API server's default port, port 8081
.
<Host>
sets the Host name and TLS certificate information to be used by the API server, and <AccessToken>
sets the token to be used for authentication when calling the APIs. You must use this token to invoke the API of OvenMediaEngine.
If you face a CORS problem by calling the OME API on your browser, you can set <CrossDomains>
as follows:
If protocol is omitted like *.airensoft.com
, both HTTP and HTTPS are supported.
In this manual, the following format is used when describing the API.
GET
http://<OME_HOST>:<API_PORT>/<VERSION>/<API_PATH>[/...]
Here is the description of the API
Request Example:
- Method: GET
- URL: http://1.2.3.4:8081/v1/vhost
- Header:
authorization: Basic b21ldGVzdA==
This means the IP or domain of the server on which your OME is running.
This means the port number of the API you set up in Server.xml
. The default value is 8081.
Indicates the version of the API. Currently, all APIs are v1.
Indicates the API path to be called. The API path is usually in the following form:
resource
means an item, such as VirtualHost
or Application
, and action
is used to command an action to a specific resource, such as push
or record
.
All response results are provided in the HTTP status code and response body, and if there are multiple response results in the response, the HTTP status code will be 207 MultiStatus
. The API response data is in the form of an array of Response
or Response
as follows:
VirtualHost
settings created by Server.xml
cannot be modified through API. This rule also applies to Application
/OutputStream
, etc. within that VirtualHost. So, if you call a POST/PUT/DELETE API for VirtualHost
/Application
/OutputProfile
declared in Server.xml
, it will not work with a 403 Forbidden
error.
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
string
authorization
string
Basic base64encode(AccessToken)
if you set <AccessToken>
to "ome-access-token" in Server.xml
, you must set Basic b21lLWFjY2Vzcy10b2tlbg==
in the Authorization
header.
ApplicationType
>Application type
Examples
"live"
"vod"
Codec
>Codecs
Examples
"h264"
"h265"
"vp8"
"opus"
"aac"
StreamSourceType
>A type of input stream
Examples
"Ovt"
"Rtmp"
"Rtspc"
"RtspPull"
"MpegTs"
MediaType
>type
Examples
"video"
"audio"
SessionState
>A state of the session
Examples
"Ready"
"Started"
"Stopping"
"Stopped"
"Error"
AudioLayout
>Audio layout
Examples
"stereo"
"mono"
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts
Creates VirtualHost
s
Request Example:
POST http://1.2.3.4:8081/v1/vhosts
[ { "name": "default" } ]
Return type: Response<VirtualHost>
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts
Lists all virtual host names
Request Example:
GET http://1.2.3.4:8081/v1/vhosts
Return type: Response<List>
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}
Gets the configuration of the VirtualHost
Request Example:
GET http://1.2.3.4:8081/v1/vhosts/default
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}/outputProfiles
Creates OutputProfile
s in the Application
Request Example:
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app/outputProfiles
[
{
"name": "bypass_profile",
"outputStreamName": "${OriginStreamName}",
"encodes": {
"videos": [
{
"bypass": true
}
],
"audios": [
{
"bypass": true
}
]
}
}
]
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}/outputProfiles
Lists all output profile names in the Application
Request Example:
GET http://1.2.3.4:8081/v1/vhosts/default/apps/app/outputProfiles
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}/outputProfiles/{profile_name}
Gets the configuration of the OutputProfile
Request Example:
GET http://1.2.3.4:8081/v1/vhosts/default/apps/app/outputProfiles/bypass_profile
PUT
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}/outputProfiles/{profile_name}
Changes the configuration of the OutputProfile
Request Example:
PUT http://1.2.3.4:8081/v1/vhosts/default/apps/app/outputProfiles/bypass_profile
{
"outputStreamName": "${OriginStreamName}",
"encodes": {
"videos": [
{
"codec": "h264",
"bitrate": "3M",
"width": 1280,
"height": 720,
"framerate": 30
}
],
"audios": [
{
"bypass": true
}
]
}
}
DELETE
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}/outputProfiles/{profile_name}
Deletes the OutputProfile
Request Example:
DELETE http://1.2.3.4:8081/v1/vhosts/default/apps/app/outputProfiles/bypass_profile
[TYPE]
>GET
http://<OME_HOST>:<API_PORT>/v1/stats/current/vhosts/{vhost_name}
Usage statistics of the VirtualHost
Request Example:
GET http://1.2.3.4:8081/v1/stats/current/vhosts/default
GET
http://<OME_HOST>:<API_PORT>/v1/stats/current/vhosts/{vhost_name}/apps/{app_name}
Usage statistics of the Application
Request Example:
GET http://1.2.3.4:8081/v1/stats/current/vhosts/default/apps/app
GET
http://<OME_HOST>:<API_PORT>/v1/stats/current/vhosts/{vhost_name}/apps/{app_name}/streams/{stream}
Usage statistics of the Stream
Request Example:
GET http://1.2.3.4:8081/v1/stats/current/vhosts/default/apps/app/streams/{stream}
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}:startRecord
This API performs a recording start request operation. for recording, the output stream name must be specified. file path, information path, recording interval and schedule parameters can be specified as options.
Request Example:
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app:startRecord
{
"id": "custom_id",
"stream": {
"name": "stream_o",
"tracks": [ 100, 200 ]
},
"filePath" : "/path/to/save/recorded/file_${Sequence}.ts",
"infoPath" : "/path/to/save/information/file.xml",
"interval" : 60000, # Split it every 60 seconds
"schedule" : "0 0 */1" # Split it at second 0, minute 0, every hours.
"segmentationRule" : "continuity"
}
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}:stopRecord
This API performs a recording stop request.
Request Example:
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app:stopRecord
{
"id": "custom_id"
}
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}:records
This API performs a query of the job being recorded. Provides job inquiry function for all or custom Id.
Request Example:
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app:records
{
"id" : "custom_id"
}
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps
Creates Application
s in the VirtualHost
Request Example:
POST http://1.2.3.4:8081/v1/vhosts/default/apps
[ { "name": "app", "type": "live", "outputProfiles": { "outputProfile": [ { "name": "bypass_profile", "outputStreamName": "${OriginStreamName}", "encodes": { "videos": [ { "bypass": true } ], "audios": [ { "bypass": true } ] } } ] } ]
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps
Lists all application names in the VirtualHost
Request Example:
GET http://1.2.3.4:8081/v1/vhosts/default/apps
GET
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}
Gets the configuration of the Application
Request Example:
GET http://1.2.3.4:8081/v1/vhosts/default/apps/app
PUT
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}
Changes the configuration of the Application
Request Example:
PUT http://1.2.3.4:8081/v1/vhosts/default/apps/app
{
"type": "live"
}
DELETE
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}
Deletes the Application
Request Example:
DELETE http://1.2.3.4:8081/v1/vhosts/default/apps/app
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}:startPush
This is an action to request a push of a selected stream. Please refer to the "Push" document for detail setting.
\
\
Request Example:
\
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app:startPush
\
{
\
"id": "{UserDefinedUniqueId}",
\
"stream": {
\
"name": "output_stream_name",
\
"tracks": [ 101, 102 ]
\
},
\
"protocol": "rtmp",
\
"url":"rtmp://{host}[:port]/{appName}",
\
"streamKey":"{streamName}"
\
}
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app:startPush
\
{
\
"id": "{UserDefinedUniqueId}",
\
"stream": {
\
"name": "output_stream_name",
\
"tracks": [ 101, 102 ]
\
},
\
"protocol": "mpegts",
\
"url":"udp://{host}[:port]",
\
"streamKey":""
\
}
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}:stopPush
Request to stop pushing
\
\
Request Example:
\
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app:stopRecord
\
``
\
{
\
"id": "{userDefinedUniqueId}"
\
}
POST
http://<OME_HOST>:<API_PORT>/v1/vhosts/{vhost_name}/apps/{app_name}:pushes
Get all push lists for a specific application
\
\
Request Example:
\
POST http://1.2.3.4:8081/v1/vhosts/default/apps/app:pushes
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
Name | Type | Description |
---|
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
(json body)*
array
A list of VirtualHost
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
vhost_name
string
A name of VirtualHost
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
vhost_name
string
A name of VirtualHost
app_name
string
A name of Application
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
(json body)
array
List<OutputProfile
>
vhost_name
string
A name of VirtualHost
app_name
string
A name of Application
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
vhost_name
string
A name of VirtualHost
app_name
string
A name of Application
profile_name
string
A name of OutputProfile
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
vhost_name
string
A name of VirtualHost
app_name
string
A name of Application
profile_name
string
A name of OutputProfile
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
(json body)
object
OutputProfile
vhost_name
string
A name of VirtualHost
app_name
string
A name of Application
profile_name
string
A name of OutputProfile
authorization
string
A string for authentication in Basic Base64(AccessToken)
format.
For example, Basic b21lLWFjY2Vzcy10b2tlbg==
if access token is ome-access-token
.
Type
Name
Optional
Description
Examples
Int
statusCode
N
Status code
200
String
message
N
A message describing the value returned
"OK"
[TYPE]
response
Y
A response data
{}
Type
Name
Optional
Description
Examples
String
name
N
A name of Virtual Host
"default"
Host
td
Y
Host
Host
SignedPolicy
signedPolicy
Y
SignedPolicy
SignedPolicy
SignedToken
signedToken
Y
SignedToken
SignedToken
List<OriginMap
>
td
Y
A list of Origin map
[OriginMap, OriginMap, ...]
Type
Name
Optional
Description
Examples
List<String>
td
N
A list of hosts
["airensoft.com", "*.test.com", ...]
Tls
td
Y
TLS
TLS
Type
Name
Optional
Description
Examples
String
certPath
N
A path of cert file
"a.crt"
String
keyPath
N
A path of private key file
"a.key"
String
chainCertPath
Y
A path of chain cert file
"c.crt"
Type
Name
Optional
Description
Examples
String
policyQueryKey
N
String
signatureQueryKey
N
String
secretKey
N
Type
Name
Optional
Description
Examples
String
cryptoKey
N
String
queryStringKey
N
Type
Name
Optional
Description
Examples
String
location
N
A pattern to map origin
"/"
Pass
pass
N
What to request with Origin if the pattern matches
Pass
Type
Name
Optional
Description
Examples
String
scheme
N
Scheme to distinguish the provider
"ovt"
List<String>
urls
N
An address list to pull from provider
["origin:9000", "origin2:9000", ...]
Type
Name
Optional
Description
Examples
String
name
N
App name (You cannot change this value after you create it)
"app"
Bool
dynamic
N
Whether the app was created using PullStream()
true
Enum<ApplicationType
>
type
N
App type
"live"
Providers
providers
Y
A list of Provider
s
Providers
Publishers
publishers
Y
A list of Publisher
s
Publishers
List<OutputProfile
>
outputProfiles
Y
A list of OutputProfile
s
[OutputProfile, OutputProfile, ...]
Type
Name
Optional
Description
Examples
RtmpProvider
rtmp
Y
RtmpProvider
RtspPullProvider
rtspPull
Y
RtspPullProvider
RtspProvider
rtsp
Y
RtspProvider
OvtProvider
ovt
Y
OvtProvider
MpegtsProvider
mpegts
Y
MpegtsProvider
Type
Name
Optional
Description
Examples
(Reserved for future use)
-
-
-
Type
Name
Optional
Description
Examples
(Reserved for future use)
-
-
-
Type
Name
Optional
Description
Examples
(Reserved for future use)
-
-
-
Type
Name
Optional
Description
Examples
(Reserved for future use)
-
-
-
Type
Name
Optional
Description
Examples
List<MpegtsStream
>
streams
Y
MPEG-TS Stream map
[MpegtsStream, MpegtsStream, ...]
Type
Name
Optional
Description
Examples
String
name
N
A name to generate when MPEG-TS stream is received
"stream"
RangedPort
port
Y
MPEG-TS Port
"40000-40001/udp"
Type
Name
Optional
Description
Examples
Int
threadCount
N
Number of threads
4
RtmpPushPublisher
rtmpPush
Y
RtmpPushPublisher
HlsPublisher
hls
Y
HlsPublisher
DashPublisher
dash
Y
DashPublisher
LlDashPublisher
llDash
Y
LlDashPublisher
WebrtcPublisher
webrtc
Y
WebrtcPublisher
OvtPublisher
ovt
Y
OvtPublisher
FilePublisher
file
Y
FilePublisher
ThumbnailPublisher
thumbnail
Y
ThumbnailPublisher
Type
Name
Optional
Description
Examples
(Reserved for future use)
-
-
-
Type
Name
Optional
Description
Examples
Int
segmentCount
N
Segment count in the playlist.m3u8
3
Int
segmentDuration
N
Segment duration (unit: seconds)
4
List<String>
crossDomains
Y
Cross domain URLs
["*"]
Type
Name
Optional
Description
Examples
Int
segmentCount
N
Segment count in the manifest.mpd
3
Int
segmentDuration
N
Segment duration (unit: seconds)
4
List<String>
crossDomains
Y
Cross domain URLs
["*"]
Type
Name
Optional
Description
Examples
Int
segmentDuration
N
Segment duration (unit: seconds)
3
List<String>
crossDomains
Y
Cross domain URLs
["*"]
Type
Name
Optional
Description
Examples
TimeInterval
timeout
Y
ICE timeout (unit: seconds)
30
Type
Name
Optional
Description
Examples
(Reserved for future use)
-
-
-
Type
Name
Optional
Description
Examples
String
filePath
Y
A path to store recorded file
You can use the following macros:
${TransactionId}: An identifier of transaction
${Id}: An identifier to distinguish files
${StartTime:YYYYMMDDhhmmss}: Start time of recording
${EndTime:YYYYMMDDhhmmss}: End time of of recording
${VirtualHost}: A name of virtual host
${Application}: A name of application
${SourceStream}: A name of input stream
${Stream}: A name of output stream
${Sequence}: A sequence number
"/tmp/${StartTime:YYYYMMDDhhmmss}_${Stream}.mp4"
String
fileInfoPath
Y
A path of recorded files
"/tmp/${StartTime:YYYYMMDDhhmmss}_${Stream}.xml"
Type
Name
Optional
Description
Examples
List<String>
crossDomains
Y
Cross domain URLs
["*"]
Type
Name
Optional
Description
Examples
String
name
N
A name of OutputProfile
"bypass_stream"
String
outputStreamName
N
A name of output stream
"${OriginStreamName}"
Encodes
encodes
Y
[Encodes, Encodes, ...]
Type
Name
Optional
Description
Examples
List<Video
>
videos
Y
[Video, Video, ...]
List<Audio
>
audios
Y
[Audio, Audio, ...]
List<Image
>
images
Y
[Image, Image, ...]
Type
Name
Optional
Description
Examples
Bool
bypass
Y
true
Enum<Codec
>
codec
Conditional
Video codec
"h264"
Int
width
Conditional
1280
Int
height
Conditional
720
String
bitrate
Conditional
bitrate (You can use "K" or "M" suffix like 100K
, 3M
)
"3000000"
"2.5M"
Float
framerate
Conditional
29.997
Type
Name
Optional
Description
Examples
Bool
bypass
Y
true
Enum<Codec
>
codec
Conditional
Audio codec
"opus"
Int
samplerate
Conditional
48000
Int
channel
Conditional
2
String
bitrate
Conditional
bitrate (You can use "K" or "M" suffix like 128K
, 0.1M
)
"128000"
"128K"
Type
Name
Optional
Description
Examples
Enum<Codec
>
codec
N
"jpeg" | "png"
Int
width
Conditional
854
Int
height
Conditional
480
Float
framerate
N
An interval of image creation
1
Type
Name
Optional
Description
Examples
String
name
N
A name of stream
"stream"
InputStream
input
N
An information of input stream
InputStream
List<OutputStream
>
outputs
N
An information of output streams
[OutputStream, OutputStream, ...]
Type
Name
Optional
Description
Examples
String
name
N
A name of stream to create
"stream"
PullStream
pull
Y
pull
PullStream
MpegtsStream
mpegts
Y
Creates a prestream
MpegtsStream
Type
Name
Optional
Description
Examples
String
url
N
URL to pull
"rtsp://host.com/resource"
Type
Name
Optional
Description
Examples
String
agent
Y
A name of broadcast tool
"OBS 12.0.4"
String
from
N
URI stream created
"tcp://192.168.0.200:33399"
String
to
Y
URI represents connection with the input
"rtmp://dev.airensoft.com:1935"
List<Track
>
tracks
N
A list of tracks in input stream
[Track, Track, ...]
Timestamp
createdTime
N
Creation time
"2020-10-30T11:00:00+09:00"
Type
Name
Optional
Description
Examples
String
name
N
An name of OutputStream
"stream_o"
List<Track
>
tracks
N
A list of tracks in OutputStream
[Track, Track, ...]
Type
Name
Optional
Description
Examples
Enum<MediaType
>
type
Y
Media type
"video"
Video
video
Conditional
A configuration of video encoding
Video
Audio
audio
Conditional
A configuration of audio encoding
Audio
Type
Name
Optional
Description
Examples
(Extends Video
)
-
-
Timebase
timebase
Y
Timebase
Timebase
Type
Name
Optional
Description
Examples
Int
num
N
Numerator
1
Int
den
N
Denominator
90000
Type
Name
Optional
Description
Examples
(Extends Audio
)
-
-
true
Timebase
timebase
Y
Timebase
Timebase
Type
Name
Optional
Description
Examples
String
id
Y
Unique identifier
OutputStream
streams
N
A combination of output stream's track name and track id
Enum<SessionState
>
state
N
Record state
String
filePath
N
A path of recorded files
String
fileInfoPath
N
A path of recorded file informations
String
recordedBytes
N
Recorded bytes
Int
recordedTime
N
Recorded time
Timestamp
startTime
N
Started time
Timestamp
finishTime
N
Finished time
Int
bitrate
N
Average bitrate
Type
Name
Optional
Description
Examples
String
id
N
Unique identifier
OutputStream
stream
Y
A combination of output stream's track name and track id
Enum<StreamSourceType
>
protocol
Y
Protocol of input stream
String
url
Y
Destination URL
String
streamKey
Conditional
Stream key of destination
Enum<SessionState
>
state
N
Push state
Int
sentBytes
N
Sent bytes
Int
sentPackets
N
Sent packets count
Int
sentErrorBytes
N
Error bytes
Int
sentErrorPackets
N
Error packets count
Int
reconnect
N
Reconnect count
Timestamp
startTime
N
Started time
Timestamp
finishTime
N
Finished time
Int
bitrate
N
Average bitrate
Type
Name
Optional
Description
Examples
Timestamp
createdTime
N
Creation time
"2020-10-30T11:00:00+09:00"
Timestamp
lastUpdatedTime
N
Modified time
"2020-10-30T11:00:00+09:00"
Long
totalBytesIn
N
Received bytes
3109481213
Long
totalBytesOut
N
Sent bytes
1230874123
Int
totalConnections
N
Current connections
10
Int
maxTotalConnections
N
Max connections since the stream is created
293
Timestamp
maxTotalConnectionTime
N
When the maximum number of concurrent connections has been updated.
"2020-10-30T11:00:00+09:00"
Timestamp
lastRecvTime
N
Last time data was received
"2020-10-30T11:00:00+09:00"
Timestamp
lastSentTime
N
Last time data was sent
"2020-10-30T11:00:00+09:00"
Type
Name
Optional
Description
Examples
(Extends CommonMetrics
)
-
-
Includes all fields of CommonMetrics
TimeInterval
requestTimeToOrigin
Y
A elapsed time to connect to Origin
1000
TimeInterval
responseTimeFromOrigin
Y
A elapsed time from Origin to respond
10000
vhost_name | string | A name of |
access_token | string | A token for authentication |
vhost_name | string | A name of |
app_name | string | A name of |
access_token | string | A token for authentication |
vhost_name | string | A name of |
app_name | string | A name of |
stream_name | string | A name of |
access_token | string | A token for authentication |
vhost_name | string | A name of |
app_name | string | A name of |
authorization | string | A string for authentication in |
segmentationRule | string | Define the policy for continuously or discontinuously generating timestamp in divided recorded files. - continuity - discontinuity (default) |
id | string | An unique identifier for recording job. |
stream | string | Output stream. |
name | string | Output stream name. |
tracks | array | Default is all tracks. It is possible to record only a specific track using the track Id. - default is all tracks |
schedule | string | Schedule based split recording. set only <second minute hour> using crontab method. It cannot be used simultaneously with interval. |
interval | number | Interval based split recording. It cannot be used simultaneously with schedule. |
filePath | string | Set the path of the file to be recorded. same as setting macro pattern in Config file. |
infoPath | string | Set the path to the information file to be recorded. same as setting macro pattern in Config file. |
vhost_name | string | A name of |
app_name | string | A name of |
authorization | string | A string for authentication in |
id | string | An unique identifier for recording job. |
vhost_name | string | A name of |
app_name | string | A name of |
authorization | string | A string for authentication in |
id | string | An unique identifier for recording job. If no value is specified, the entire recording job is requested. |
vhost_name | string | A name of |
authorization | string | A string for authentication in |
(json body) | array | A list of |
vhost_name | string | A name of VirtualHost |
authorization | string | A string for authentication in |
vhost_name | string | A name of |
app_name | string | A name of |
authorization | string | A string for authentication in |
vhost_name | string | A name of |
app_name | string | A name of |
authorization | string | A string for authentication in |
(json body) | object |
|
vhost_name | string | A name of |
app_name | string | A name of |
authorization | string | A string for authentication in |
vhost_name* | string | A name of
|
app_name* | string | A name of
|
authorization* | string | A string for authentication in For example, |
id* | string | Unique identifier for push management. if there is no value, automatically created and returned |
stream* | string | Output stream for push |
name* | string | Output stream name |
tracks | string | Track id for want to push, if there is no value, all tracks are push |
protocol* | string | Transport protocol [rtmp | mpegts] |
url* | string | Destination URL |
streamKey* | object | Destination stream key |
vhost_name* | string | A name of
|
app_name* | string | A name of
|
authorization* | string | A string for authentication in For example, |
id* | string | Unique identifier for push management |
vhost_name* | string | A name of
|
app_name* | string | A name of
|
authorization* | string | A string for authentication in
format. \ For example,
if access token is
. |