LiveSwitch REST API (1.0)

Download OpenAPI specification:Download

The LiveSwitch REST API is hosted by the LiveSwitch Gateway. You can access the REST API provided you have IP-level access to the Admin endpoint (/admin by default). For example:curl -X GET https://v1.liveswitch.fm:9443/admin/api/v1.0/applications.

Applications

Gets high level snapshot of application information.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

Responses

Response samples

Content type
{
  • "id": "string",
  • "channelCount": 0,
  • "userCount": 0,
  • "deviceCount": 0,
  • "clientCount": 0,
  • "connectionCount": 0
}

Gets a list of application ids currently in use.

Authorizations:
(ApiKeyoauth2)

Responses

Response samples

Content type
[
  • {
    }
]

Sends a message to an application.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

/api/v1/applications/{applicationId}/environment

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Responses

Response samples

Content type
{
  • "externalAdminUrl": "string",
  • "externalSyncUrl": "string",
  • "externalSipAuthority": "string",
  • "gateways": [
    ],
  • "mediaServers": [
    ],
  • "connectors": [
    ],
  • "recordingMonitors": [
    ],
  • "recordingMuxers": [
    ],
  • "recordingMovers": [
    ]
}

ChannelRecordings

Gets a list of all channel recordings in an application.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all recordings for a given channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a count of recordings for an application.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

Responses

Response samples

Content type
0
0

Gets a count of recordings for a given channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

Responses

Response samples

Content type
0
0

Gets a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

Responses

Response samples

Content type
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "createdOn": "2019-08-24T14:15:22Z",
  • "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",
  • "modifiedOn": "2019-08-24T14:15:22Z",
  • "modifiedBy": "07ff0787-1af5-4fc4-9832-7aaeaa962a5e",
  • "metadata": "string",
  • "deleted": true,
  • "deletedOn": "2019-08-24T14:15:22Z",
  • "deletedBy": "27f98a93-27e2-453c-b1c3-4780c8067d7c",
  • "externalId": "string",
  • "tag": "string",
  • "applicationId": "string",
  • "channelId": "string",
  • "startTimestamp": "2019-08-24T14:15:22Z",
  • "stopTimestamp": "2019-08-24T14:15:22Z",
  • "expiryTimestamp": "2019-08-24T14:15:22Z",
  • "hasAudio": true,
  • "hasVideo": true,
  • "fileName": "string",
  • "audioFileName": "string",
  • "videoFileName": "string",
  • "fileSize": 0,
  • "audioFileSize": 0,
  • "videoFileSize": 0,
  • "ready": true,
  • "audioReady": true,
  • "videoReady": true,
  • "url": "string",
  • "audioUrl": "string",
  • "videoUrl": "string",
  • "filePath": "string",
  • "audioFilePath": "string",
  • "videoFilePath": "string",
  • "objectKey": "string",
  • "audioObjectKey": "string",
  • "videoObjectKey": "string",
  • "ingested": true,
  • "muxPending": true,
  • "movePending": true,
  • "audioMovePending": true,
  • "videoMovePending": true,
  • "muxEnabled": true,
  • "moveEnabled": true,
  • "deleteFiles": true,
  • "recordingPath": "string",
  • "muxArgs": [
    ],
  • "muxSeconds": 0,
  • "moveSeconds": 0,
  • "audioMoveSeconds": 0,
  • "videoMoveSeconds": 0,
  • "connectionRecordings": [
    ]
}

Deletes a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

Responses

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Updates a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

Request Body schema:

The channel recording patch.

expiryTimestamp
string or null <date-time>

Gets or sets the expiry timestamp.

Responses

Request samples

Content type
{
  • "expiryTimestamp": "2019-08-24T14:15:22Z"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Gets a channel recording JSON for lsmux.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

Responses

Response samples

Content type
"string"

Gets a channel recording URL.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

Responses

Response samples

Content type
"string"

Gets a channel recording audio URL.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

Responses

Response samples

Content type
"string"

Gets a channel recording video URL.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

Responses

Response samples

Content type
"string"

Channels

Gets of list of active channels.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

Responses

Response samples

Content type
[
  • {
    }
]

Kick everyone out of a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

Responses

Updates a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

Request Body schema:

The new configuration.

recording
boolean or null

Gets or sets whether to enable recording.

recordingTag
string or null

Gets or sets the tag for the recording, if recording is being enabled.

audioMuted
boolean or null

Gets or sets whether to mute or unmute audio.

videoMuted
boolean or null

Gets or sets whether to mute or unmute video.

audioUnmuteDisabled
boolean or null

Gets or sets whether to disable or enable audio unmuting.

videoUnmuteDisabled
boolean or null

Gets or sets whether to disable or enable video unmuting.

excludedUserIds
Array of strings or null

Gets or sets the user identifiers to exclude.

excludedDeviceIds
Array of strings or null

Gets or sets the device identifiers to exclude.

excludedClientIds
Array of strings or null

Gets or sets the client identifiers to exclude.

excludedConnectionIds
Array of strings or null

Gets or sets the connection identifiers to exclude.

Responses

Request samples

Content type
{
  • "recording": true,
  • "recordingTag": "string",
  • "audioMuted": true,
  • "videoMuted": true,
  • "audioUnmuteDisabled": true,
  • "videoUnmuteDisabled": true,
  • "excludedUserIds": [
    ],
  • "excludedDeviceIds": [
    ],
  • "excludedClientIds": [
    ],
  • "excludedConnectionIds": [
    ]
}

Gets a high level snapshot of channel information.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel Id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "userCount": 0,
  • "deviceCount": 0,
  • "clientCount": 0,
  • "connectionCount": 0
}

Gets a list of all channels that a specific client has joined.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

Responses

Response samples

Content type
[
  • {
    }
]

Sends a message to the channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Clients

Gets a list of all clients in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

Responses

Response samples

Content type
[
  • {
    }
]

Updates a client.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

Request Body schema:

The new configuration.

userAlias
string or null

Gets or sets the User Alias.

deviceAlias
string or null

Gets or sets the Device Alias.

tag
string or null

Gets or sets the Tag.

roles
Array of strings or null

Gets or sets the Roles.

Responses

Request samples

Content type
{
  • "userAlias": "string",
  • "deviceAlias": "string",
  • "tag": "string",
  • "roles": [
    ]
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Gets information about a specific client owned by a specific user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "tag": "string",
  • "userId": "string",
  • "userAlias": "string",
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "roles": [
    ],
  • "channelCount": 0
}

Updates a client in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

Request Body schema:

The new configuration.

object (ChannelClaim)

A channel claim.

recording
boolean or null

Gets or sets whether to enable recording.

recordingTag
string or null

Gets or sets the tag for the recording, if recording is being enabled.

audioMuted
boolean or null

Gets or sets whether to mute or unmute audio.

videoMuted
boolean or null

Gets or sets whether to mute or unmute video.

audioUnmuteDisabled
boolean or null

Gets or sets whether to disable audio unmuting.

videoUnmuteDisabled
boolean or null

Gets or sets whether to disable video unmuting.

excludedConnectionIds
Array of strings or null

Gets or sets the connection identifiers to exclude.

Responses

Request samples

Content type
{
  • "claim": {
    },
  • "recording": true,
  • "recordingTag": "string",
  • "audioMuted": true,
  • "videoMuted": true,
  • "audioUnmuteDisabled": true,
  • "videoUnmuteDisabled": true,
  • "excludedConnectionIds": [
    ]
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Kick a client out of a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

Responses

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Gets a high level snapshot of a client in a channel owned by a specific device.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "userId": "string",
  • "deviceId": "string",
  • "roles": [
    ],
  • "connectionCount": 0
}

Gets a list of clients in a channel owned by a specific device.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all clients owned by a device.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

deviceId
required
string

The device id.

Responses

Response samples

Content type
[
  • {
    }
]

Sends a message to a client.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Sends a message to a client in the channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

ConnectionRecordings

Gets a list of all connection recordings in an application.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

userId
required
string

The user identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given device.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given client.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given user in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given device in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given client in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all recordings for a given connection in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

connectionId
required
string

The connection identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a connection recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

connectionId
required
string

The connection identifier.

connectionRecordingId
required
string <uuid>

The connection recording identifier.

Responses

Response samples

Content type
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "createdOn": "2019-08-24T14:15:22Z",
  • "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",
  • "modifiedOn": "2019-08-24T14:15:22Z",
  • "modifiedBy": "07ff0787-1af5-4fc4-9832-7aaeaa962a5e",
  • "metadata": "string",
  • "deleted": true,
  • "deletedOn": "2019-08-24T14:15:22Z",
  • "deletedBy": "27f98a93-27e2-453c-b1c3-4780c8067d7c",
  • "externalId": "string",
  • "tag": "string",
  • "audioId": "2cd93d65-b100-4910-a381-19111c50e257",
  • "videoId": "3524e86f-1bba-489a-bf6b-386ea1abbac0",
  • "applicationId": "string",
  • "channelId": "string",
  • "userId": "string",
  • "deviceId": "string",
  • "clientId": "string",
  • "clientProtocol": "string",
  • "connectionId": "string",
  • "connectionType": "string",
  • "startTimestamp": "2019-08-24T14:15:22Z",
  • "stopTimestamp": "2019-08-24T14:15:22Z",
  • "hasAudio": true,
  • "hasVideo": true,
  • "audioFileName": "string",
  • "videoFileName": "string",
  • "audioFileSize": 0,
  • "videoFileSize": 0,
  • "audioReady": true,
  • "videoReady": true,
  • "audioUrl": "string",
  • "videoUrl": "string",
  • "audioFilePath": "string",
  • "videoFilePath": "string",
  • "audioObjectKey": "string",
  • "videoObjectKey": "string",
  • "connectionTag": "string",
  • "audioMuted": true,
  • "videoMuted": true,
  • "audioDisabled": true,
  • "videoDisabled": true,
  • "audioContent": "string",
  • "videoContent": "string",
  • "audioFirstFrameTimestamp": "2019-08-24T14:15:22Z",
  • "videoFirstFrameTimestamp": "2019-08-24T14:15:22Z",
  • "audioLastFrameTimestamp": "2019-08-24T14:15:22Z",
  • "videoLastFrameTimestamp": "2019-08-24T14:15:22Z",
  • "videoDelay": 0,
  • "ingested": true,
  • "audioMovePending": true,
  • "videoMovePending": true,
  • "audioMoveSeconds": 0,
  • "videoMoveSeconds": 0,
  • "channelRecordingId": "0d854ea2-c92a-4cab-8584-1a3e291c437f",
  • "updates": [
    ]
}

Gets a connection recording JSON for lsmux.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

connectionId
required
string

The connection identifier.

connectionRecordingId
required
string <uuid>

The connection recording identifier.

Responses

Response samples

Content type
"string"

Gets a list of all connection recordings in a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given user in a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

userId
required
string

The user identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given device in a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all connection recordings for a given client in a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a list of all recordings for a given connection in a channel recording.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

channelRecordingId
required
string <uuid>

The channel recording identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

connectionId
required
string

The connection identifier.

query Parameters
timestampMin
integer <int64>

The (Unix) timestamp minimum.

timestampMax
integer <int64>

The (Unix) timestamp maximum.

skip
integer <int32>

The number of records to skip.

take
integer <int32>

The number of records to take.

Responses

Response samples

Content type
[
  • {
    }
]

Gets a connection recording audio URL.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

connectionId
required
string

The connection identifier.

connectionRecordingId
required
string <uuid>

The connection recording identifier.

Responses

Response samples

Content type
"string"

Gets a connection recording video URL.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

connectionId
required
string

The connection identifier.

connectionRecordingId
required
string <uuid>

The connection recording identifier.

Responses

Response samples

Content type
"string"

Connections

Gets a list of all connections in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

Responses

Response samples

Content type
[
  • {
    }
]

Kick a connection out of a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

connectionId
required
string

The connection id.

Responses

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Updates a connection.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

The application identifier.

channelId
required
string

The channel identifier.

userId
required
string

The user identifier.

deviceId
required
string

The device identifier.

clientId
required
string

The client identifier.

connectionId
required
string

The connection identifier.

Request Body schema:

The new configuration.

recording
boolean or null

Gets or sets whether to enable recording.

recordingTag
string or null

Gets or sets the tag for the recording, if recording is being enabled.

audioMuted
boolean or null

Gets or sets whether to mute or unmute audio.

videoMuted
boolean or null

Gets or sets whether to mute or unmute video.

audioUnmuteDisabled
boolean or null

Gets or sets whether to disable audio unmuting.

videoUnmuteDisabled
boolean or null

Gets or sets whether to disable video unmuting.

Responses

Request samples

Content type
{
  • "recording": true,
  • "recordingTag": "string",
  • "audioMuted": true,
  • "videoMuted": true,
  • "audioUnmuteDisabled": true,
  • "videoUnmuteDisabled": true
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Queries the reports to get the connection info for a connection in a channel owned by a specific client.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

connectionId
required
string

The connection id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "isSip": true,
  • "applicationId": "string",
  • "channelId": "string",
  • "userId": "string",
  • "userAlias": "string",
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "clientId": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "clientProtocol": "string",
  • "externalId": "string",
  • "state": "string",
  • "tag": "string",
  • "type": "string",
  • "recording": true,
  • "recordingTag": "string",
  • "error": {
    },
  • "mediaId": "string",
  • "remoteConnectionId": "string",
  • "remoteMediaId": "string",
  • "audioStream": {
    },
  • "audioStreams": [
    ],
  • "videoStream": {
    },
  • "videoStreams": [
    ],
  • "dataStream": {
    },
  • "transports": [
    ],
  • "hasAudio": true,
  • "hasVideo": true,
  • "hasData": true,
  • "localAudioMuted": true,
  • "localVideoMuted": true,
  • "localAudioUnmuteDisabled": true,
  • "localVideoUnmuteDisabled": true,
  • "localAudioDisabled": true,
  • "localVideoDisabled": true,
  • "remoteAudioDisabled": true,
  • "remoteVideoDisabled": true,
  • "audioDirection": "string",
  • "videoDirection": "string",
  • "dataDirection": "string",
  • "audioFormats": [
    ],
  • "videoFormats": [
    ]
}

Gets a list of connections in a channel owned by a specific client.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

clientId
required
string

The client id.

Responses

Response samples

Content type
[
  • {
    }
]

Connector

Get a list of all registered connectors.

Authorizations:
(ApiKeyoauth2)

Responses

Response samples

Content type
[
  • {
    }
]

Get a list of all registered connectors.

Authorizations:
(ApiKeyoauth2)

Responses

Response samples

Content type
[
  • {
    }
]

Devices

Gets a list of all devices in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

Responses

Response samples

Content type
[
  • {
    }
]

Kick a device out of a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

Responses

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Updates a device in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

Request Body schema:

The new device config config.

recording
boolean or null

Gets or sets whether to enable recording.

recordingTag
string or null

Gets or sets the tag for the recording, if recording is being enabled.

audioMuted
boolean or null

Gets or sets whether to mute or unmute audio.

videoMuted
boolean or null

Gets or sets whether to mute or unmute video.

audioUnmuteDisabled
boolean or null

Gets or sets whether to disable audio unmuting.

videoUnmuteDisabled
boolean or null

Gets or sets whether to disable video unmuting.

excludedClientIds
Array of strings or null

Gets or sets the client identifiers to exclude.

excludedConnectionIds
Array of strings or null

Gets or sets the connection identifiers to exclude.

Responses

Request samples

Content type
{
  • "recording": true,
  • "recordingTag": "string",
  • "audioMuted": true,
  • "videoMuted": true,
  • "audioUnmuteDisabled": true,
  • "videoUnmuteDisabled": true,
  • "excludedClientIds": [
    ],
  • "excludedConnectionIds": [
    ]
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Gets a high level snapshot of a device in a channel owned by a specific user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "userId": "string",
  • "alias": "string",
  • "clientCount": 0,
  • "connectionCount": 0
}

Gets a list of devices in a channel owned by a specific user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

Responses

Response samples

Content type
[
  • {
    }
]

Gets information about a specific device owned by a specific user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

deviceId
required
string

The device id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "userId": "string",
  • "alias": "string",
  • "clientCount": 0,
  • "channelCount": 0
}

Gets a list of all devices owned by a user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

Responses

Response samples

Content type
[
  • {
    }
]

Sends a message to a device.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

deviceId
required
string

The device id.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Sends a message to a device in the channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

deviceId
required
string

The device id.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Diagnostics

Gets a dump of the raw datastore data.

Authorizations:
(ApiKeyoauth2)

Responses

MediaServers

Get the connection information for a specific Media Server.

Authorizations:
(ApiKeyoauth2)
path Parameters
mediaServerId
required
string <uuid>

ID of media server to return

Responses

Response samples

Content type
{
  • "id": "string",
  • "active": true,
  • "applications": [
    ],
  • "computer": {
    }
}

Update a Media Server by it's ID

Authorizations:
(ApiKeyoauth2)
path Parameters
mediaServerId
required
string <uuid>

ID of media server to update

Request Body schema:
active
boolean or null

True to enable the media server; false to disable.

Responses

Request samples

Content type
{
  • "active": true
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Get a list of all active and inactive media servers.

Authorizations:
(ApiKeyoauth2)

Responses

Response samples

Content type
[
  • {
    }
]

Get the connection information for a specific Media Server.

Authorizations:
(ApiKeyoauth2)
path Parameters
mediaServerId
required
string <uuid>

ID of media server to return

Responses

Response samples

Content type
{
  • "mediaServerId": "99614c07-03f9-41ef-ab4a-20e0ec5fed0e",
  • "pendingConnections": 0,
  • "activeConnections": 0,
  • "totalClosedConnections": 0,
  • "totalFailedConnections": 0,
  • "durationFailedConnections": 0,
  • "durationSeconds": 0
}

Get the connection information for all Media Servers.

Authorizations:
(ApiKeyoauth2)

Responses

Response samples

Content type
[
  • {
    }
]

Users

Gets a list of users in the channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

Responses

Response samples

Content type
[
  • {
    }
]

Updates a user in a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

Request Body schema:

The new user recording config.

recording
boolean or null

Gets or sets whether to enable recording.

recordingTag
string or null

Gets or sets the tag for the recording, if recording is being enabled.

audioMuted
boolean or null

Gets or sets whether to mute or unmute audio.

videoMuted
boolean or null

Gets or sets whether to mute or unmute video.

audioUnmuteDisabled
boolean or null

Gets or sets whether to disable audio unmuting.

videoUnmuteDisabled
boolean or null

Gets or sets whether to disable video unmuting.

excludedDeviceIds
Array of strings or null

Gets or sets the device identifiers to exclude.

excludedClientIds
Array of strings or null

Gets or sets the client identifiers to exclude.

excludedConnectionIds
Array of strings or null

Gets or sets the connection identifiers to exclude.

Responses

Request samples

Content type
{
  • "recording": true,
  • "recordingTag": "string",
  • "audioMuted": true,
  • "videoMuted": true,
  • "audioUnmuteDisabled": true,
  • "videoUnmuteDisabled": true,
  • "excludedDeviceIds": [
    ],
  • "excludedClientIds": [
    ],
  • "excludedConnectionIds": [
    ]
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Kick a user out of a channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The userid.

Responses

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Gets a high level snapshot of a user in the channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "alias": "string",
  • "deviceCount": 0,
  • "clientCount": 0,
  • "connectionCount": 0
}

Gets a list of all users for this application.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

Responses

Response samples

Content type
[
  • {
    }
]

Gets information about a specific user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

Responses

Response samples

Content type
{
  • "id": "string",
  • "alias": "string",
  • "deviceCount": 0,
  • "clientCount": 0,
  • "channelCount": 0
}

Sends a message to a user.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

userId
required
string

The user id.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}

Sends a message to a user in the channel.

Authorizations:
(ApiKeyoauth2)
path Parameters
applicationId
required
string

Id of the application.

channelId
required
string

The channel id.

userId
required
string

The user id.

Request Body schema:

The message.

message
string or null
clientTag
string or null

The client tag to use for the sender.

clientRoles
Array of strings or null

The client roles to use for the sender.

deviceId
string or null

The device ID to use for the sender.

deviceAlias
string or null

The device alias to use for the sender.

userId
string or null

The user ID to use for the sender.

userAlias
string or null

The user alias to use for the sender.

Responses

Request samples

Content type
{
  • "message": "string",
  • "clientTag": "string",
  • "clientRoles": [
    ],
  • "deviceId": "string",
  • "deviceAlias": "string",
  • "userId": "string",
  • "userAlias": "string"
}

Response samples

Content type
{
  • "type": "string",
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string",
  • "property1": null,
  • "property2": null
}