Application
Get Application List
List all application names in the virtual host.
Request
GET /v1/vhosts/{vhost}/apps
Header
Authorization: Basic {credentials}
# Authorization
Credentials for HTTP Basic Authentication created with <AccessToken>
Responses
200 Ok
401 Unauthorized
404 Not Found
The given vhost name could not be found.
Body
{
"message": "[HTTP] Could not find the virtual host: [default1] (404)",
"statusCode": 404
}
Create Application
Create application in the virtual host
Request
POST /v1/vhosts/{vhost}/apps
Header
Authorization: Basic {credentials}
# Authorization
Credentials for HTTP Basic Authentication created with <AccessToken>
Body
Configure applications to be created in Json array format.
[
{
"name": "app",
"type": "live",
"outputProfiles": {
"outputProfile": [
{
"name": "default",
"outputStreamName": "${OriginStreamName}",
"encodes": {
"audios": [
{
"name": "opus",
"codec": "opus",
"samplerate": 48000,
"bitrate": 128000,
"channel": 2,
"bypassIfMatch": {
"codec": "eq"
}
},
{
"name": "aac",
"codec": "aac",
"samplerate": 48000,
"bitrate": 128000,
"channel": 2,
"bypassIfMatch": {
"codec": "eq"
}
}
],
"videos": [
{
"name": "bypass_video",
"bypass": true
}
]
}
}
]
},
"providers": {
"ovt": {},
"rtmp": {},
"rtspPull": {},
"srt": {},
"webrtc": {}
},
"publishers": {
"llhls": {},
"ovt": {},
"webrtc": {}
}
}
]
# name (required)
Application name to create
# type (required)
live - currently only support live
# outputProfiles (optional)
Set OutputProfile for Transcoding. See the ABR and Transcoding chapter for more details. If no outputProfiles are present in the request, a default outputProfile as above is configured.
# providers (optional)
Configure providers. See the Live Source chapter for details. If providers are not present in the request, they are configured with default providers as above.
# publishers (optional)
Configure publishers. See the Streaming chapter for details. If publishers are not present in the request, they are configured with default publishers as above.
Responses
200 Ok
The request has succeeded
Header
Content-Type: application/json
Body
It responds with Json array for each request.
[
{
"statusCode": 200,
"message": "OK",
"response": {
"name": "app",
"outputProfiles": {
...
"providers": {
"ovt": {},
"rtmp": {},
...
},
{
"statusCode": 200,
"message": "OK",
"response": {
...
}
}
}
# statusCode
Same as HTTP Status Code
# message
A human-readable description of the response code
# response
Created application information
207 Multi-Status
There might be a mixture of responses.
Header
Content-Type: application/json
Body
It responds with Json array for each request.
[
{
"statusCode": 200,
"message": "OK",
"response": {
"name": "app",
"outputProfiles": {
...
"providers": {
"ovt": {},
"rtmp": {},
...
},
{
"statusCode": 409,
"message": "Conflict",
"response": {
...
}
}
}
# statusCode
Same as HTTP Status Code
# message
A human-readable description of the response code
# response
Application information created when statusCode is 200
400 Bad Request
Invalid request. Body is not a Json array or does not have a required value
401 Unauthorized
404 Not Found
The given vhost name could not be found.
Body
{
"message": "[HTTP] Could not find the virtual host: [default1] (404)",
"statusCode": 404
}
409 Conflict
An application name already exists
Get Application Information
Request
GET /v1/vhosts/{vhost}/apps/{app}
Header
Authorization: Basic {credentials}
# Authorization
Credentials for HTTP Basic Authentication created with <AccessToken>
Responses
200 Ok
The request has succeeded
Header
Content-Type: application/json
Body
{
"statusCode": 200,
"message": "OK",
"response": {
"dynamic": false,
"name": "app",
"type": "live",
"outputProfiles": {
"outputProfile": [
{
"encodes": {
"audios": [
{
"bitrate": 128000,
"bypassIfMatch": {
"codec": "eq"
},
"channel": 2,
"codec": "opus",
"name": "opus",
"samplerate": 48000
},
{
"bitrate": 128000,
"bypassIfMatch": {
"codec": "eq"
},
"channel": 2,
"codec": "aac",
"name": "aac",
"samplerate": 48000
}
],
"videos": [
{
"bypass": true,
"name": "bypass_video"
}
]
},
"name": "bypass",
"outputStreamName": "${OriginStreamName}"
}
]
},
"providers": {
"ovt": {},
"rtmp": {},
"rtspPull": {},
"srt": {},
"webrtc": {}
},
"publishers": {
"llhls": {},
"ovt": {},
"webrtc": {}
}
}
}
# statusCode
Same as HTTP Status Code
# message
A human-readable description of the response code
# response
Application information
401 Unauthorized
404 Not Found
The given vhost name or application name could not be found.
Body
{
"message": "[HTTP] Could not find the application: [default/app2] (404)",
"statusCode": 404
}
Patch Application Information
Modify application settings. If this request succeeds, the Application will be restarted.
Request
PATCH /v1/vhosts/{vhost}/apps/{app}
Responses
200 Ok
The request has succeeded
Header
Content-Type: application/json
Body
{
"statusCode": 200,
"message": "OK",
"response": {
"dynamic": false,
"name": "app",
"type": "live",
"outputProfiles": {
"outputProfile": [
{
"encodes": {
"audios": [
{
"bitrate": 128000,
"bypassIfMatch": {
"codec": "eq"
},
"channel": 2,
"codec": "opus",
"name": "opus",
"samplerate": 48000
},
{
"bitrate": 128000,
"bypassIfMatch": {
"codec": "eq"
},
"channel": 2,
"codec": "aac",
"name": "aac",
"samplerate": 48000
}
],
"videos": [
{
"bypass": true,
"name": "bypass_video"
}
]
},
"name": "bypass",
"outputStreamName": "${OriginStreamName}"
}
]
},
"providers": {
"ovt": {},
"rtmp": {},
"rtspPull": {},
"srt": {},
"webrtc": {
"timeout": 60000
}
},
"publishers": {
"llhls": {},
"ovt": {},
"webrtc": {}
}
}
}
# statusCode
Same as HTTP Status Code
# message
A human-readable description of the response code
# response
Mofified application information
400 Bad Request
Invalid request.
{
"message": "[HTTP] Cannot change [name] using this API (400)",
"statusCode": 400
}
401 Unauthorized
404 Not Found
The given vhost name or application name could not be found.
Body
{
"message": "[HTTP] Could not find the application: [default/app2] (404)",
"statusCode": 404
}
Delete Application
Request
DELETE /v1/vhosts/{vhost}/apps/{app}
Header
Authorization: Basic {credentials}
# Authorization
Credentials for HTTP Basic Authentication created with <AccessToken>
Responses
200 Ok
401 Unauthorized
404 Not Found
The given vhost name or application name could not be found.
Body
{
"message": "[HTTP] Could not find the application: [default/app2] (404)",
"statusCode": 404
}
500 Internal Server Error
The request failed due to an error on the server. Check the server log for the reason of the error.
Body
{
"message": "[HTTP] Internal Server Error (500)",
"statusCode": 500
}