Auvious Recorder API v1.0
Base path: /rtc-recorder Endpoint rows show /api/... and are resolved under this base path.
You are viewing REST API documentation. This documentation is auto-generated from a swagger specification which itself is generated from annotations in the source code of the project. It is possible that this documentation includes bugs and that code samples are incomplete or wrong.
Authentication
- API Key (apiKey)
- Parameter Name: Authorization, in: header.
Media Storage
Verify the validity of a given storage provider profile.
POST /rtc-recorder/api/storageproviders/{applicationId}/verify HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| applicationId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Verification outcomes for each storage capability. | StorageVerificationStatusMessage |
Examples
All checks passed and throughput metrics were produced.
{
"bucketTestResult": {
"passed": true,
"message": "OK"
},
"writeTestResult": {
"passed": true,
"message": "OK"
},
"readTestResult": {
"passed": true,
"message": "OK"
},
"modifyTestResult": {
"passed": true,
"message": "OK"
},
"deleteTestResult": {
"passed": true,
"message": "OK"
},
"throughputTestResult": {
"passed": true,
"message": "Upload 12.5 Mbps, Download 10.1 Mbps",
"bytesTransferred": 2097152,
"durationMillis": 1400,
"throughputMbps": 10.1
}
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST /rtc-recorder/api/storageproviders/{applicationId}/verify \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "/rtc-recorder/api/storageproviders/{applicationId}/verify", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/storageproviders/{applicationId}/verify', {
method: 'POST',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/storageproviders/{applicationId}/verify");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post(
'/rtc-recorder/api/storageproviders/{applicationId}/verify',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.post '/rtc-recorder/api/storageproviders/{applicationId}/verify',
params: {}, headers: headers
p JSON.parse(result)
Confirm that the active storage provider configuration is verified and applied.
POST /rtc-recorder/api/storageproviders/{applicationId}/verified HTTP/1.1
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| applicationId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 204 | No Content | Storage health marked as verified for the active configuration. | None |
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST /rtc-recorder/api/storageproviders/{applicationId}/verified \
-H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "/rtc-recorder/api/storageproviders/{applicationId}/verified", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/storageproviders/{applicationId}/verified', {
method: 'POST',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/storageproviders/{applicationId}/verified");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Authorization': 'API_KEY'
}
r = requests.post(
'/rtc-recorder/api/storageproviders/{applicationId}/verified',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Authorization' => 'API_KEY'
}
result = RestClient.post '/rtc-recorder/api/storageproviders/{applicationId}/verified',
params: {}, headers: headers
p JSON.parse(result)
Get a client-facing status for the active storage provider configuration.
GET /rtc-recorder/api/storageproviders/{applicationId}/status HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| applicationId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Storage provider health status for UI display. | StorageProviderStatusMessage |
Examples
200 Response
{
"provider": "GOOGLE_CLOUD",
"status": "OK",
"statusMessage": "string"
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/storageproviders/{applicationId}/status \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/storageproviders/{applicationId}/status", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/storageproviders/{applicationId}/status', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/storageproviders/{applicationId}/status");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/storageproviders/{applicationId}/status',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/storageproviders/{applicationId}/status',
params: {}, headers: headers
p JSON.parse(result)
Media Recording
Stop an existing recorder instance.
POST /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/stop HTTP/1.1
Accept: */*
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
| recorderId | path | string | true | none |
| instanceId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | Inline |
Response Schema
Examples
200 Response
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/stop \
-H 'Accept: */*' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"*/*"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/stop", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': '*/*', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/stop', {
method: 'POST',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/stop");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': '*/*',
'Authorization': 'API_KEY'
}
r = requests.post(
'/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/stop',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => '*/*',
'Authorization' => 'API_KEY'
}
result = RestClient.post '/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/stop',
params: {}, headers: headers
p JSON.parse(result)
Start a new recorder instance.
POST /rtc-recorder/api/recordings/start HTTP/1.1
Content-Type: application/json
Accept: */*
Request body
{
"applicationId": "string",
"conversationId": "string",
"conferenceId": "string",
"audio": true,
"video": true,
"screen": true
}
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | StartRecording | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | RecordingDataEvent |
Examples
200 Response
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST /rtc-recorder/api/recordings/start \
-H 'Content-Type: application/json' \ -H 'Accept: */*' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"*/*"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "/rtc-recorder/api/recordings/start", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"applicationId": "string",
"conversationId": "string",
"conferenceId": "string",
"audio": true,
"video": true,
"screen": true
}';
const headers = {
'Content-Type': 'application/json', 'Accept': '*/*', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/start', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/start");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Content-Type': 'application/json',
'Accept': '*/*',
'Authorization': 'API_KEY'
}
r = requests.post(
'/rtc-recorder/api/recordings/start',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'API_KEY'
}
result = RestClient.post '/rtc-recorder/api/recordings/start',
params: {}, headers: headers
p JSON.parse(result)
Send a cobrowse session event to an existing recorder instance.
POST /rtc-recorder/api/recordings/cobrowse/event HTTP/1.1
Content-Type: application/json
Accept: */*
Request body
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"event": {
"sessionId": "string",
"sequenceId": 0,
"timestamp": 0,
"payload": "string"
}
}
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | AddCobrowseEventCmd | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | Inline |
Response Schema
Examples
200 Response
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST /rtc-recorder/api/recordings/cobrowse/event \
-H 'Content-Type: application/json' \ -H 'Accept: */*' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"*/*"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "/rtc-recorder/api/recordings/cobrowse/event", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"event": {
"sessionId": "string",
"sequenceId": 0,
"timestamp": 0,
"payload": "string"
}
}';
const headers = {
'Content-Type': 'application/json', 'Accept': '*/*', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/cobrowse/event', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/cobrowse/event");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Content-Type': 'application/json',
'Accept': '*/*',
'Authorization': 'API_KEY'
}
r = requests.post(
'/rtc-recorder/api/recordings/cobrowse/event',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'API_KEY'
}
result = RestClient.post '/rtc-recorder/api/recordings/cobrowse/event',
params: {}, headers: headers
p JSON.parse(result)
Upload a conversation chat transcript to an existing recorder instance.
POST /rtc-recorder/api/recordings/chat/transcript/add HTTP/1.1
Content-Type: application/json
Accept: */*
Request body
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"chatTranscriptList": [
{
"id": "string",
"timestamp": "2019-08-24T14:15:22Z",
"userId": "string",
"userDisplayName": "string",
"transcript": "string"
}
]
}
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | AddChatTranscriptCmd | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | Inline |
Response Schema
Examples
200 Response
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST /rtc-recorder/api/recordings/chat/transcript/add \
-H 'Content-Type: application/json' \ -H 'Accept: */*' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"*/*"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "/rtc-recorder/api/recordings/chat/transcript/add", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"chatTranscriptList": [
{
"id": "string",
"timestamp": "2019-08-24T14:15:22Z",
"userId": "string",
"userDisplayName": "string",
"transcript": "string"
}
]
}';
const headers = {
'Content-Type': 'application/json', 'Accept': '*/*', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/chat/transcript/add', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/chat/transcript/add");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Content-Type': 'application/json',
'Accept': '*/*',
'Authorization': 'API_KEY'
}
r = requests.post(
'/rtc-recorder/api/recordings/chat/transcript/add',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'API_KEY'
}
result = RestClient.post '/rtc-recorder/api/recordings/chat/transcript/add',
params: {}, headers: headers
p JSON.parse(result)
Get a list of recordings for a given conversationId.
GET /rtc-recorder/api/recordings/{conversationId} HTTP/1.1
Accept: application/json
Accept-Version: string
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
| contract | query | string | false | none |
| Accept-Version | header | array[string] | false | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | Inline |
Response Schema
Examples
200 Response
{}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId} \
-H 'Accept: application/json' \ -H 'Accept-Version: string' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Accept-Version": []string{"string"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Accept-Version': [
"string"
], 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Accept-Version': [
"string"
],
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Accept-Version' => [
"string"
],
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}',
params: {}, headers: headers
p JSON.parse(result)
Get information of an existing recorder.
GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId} HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
| recorderId | path | string | true | none |
| instanceId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | RecordingDataMessage |
Examples
200 Response
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"conferenceId": "string",
"organizationId": "string",
"storageProfile": {
"applicationId": "string",
"provider": "GOOGLE_CLOUD",
"url": "string"
},
"audio": true,
"video": true,
"screenshare": true,
"state": "INITIALISED",
"started": "string",
"recovered": "string",
"stopped": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
},
"streams": [
{
"id": "string",
"userId": "string",
"type": "MIC",
"state": "RECORDING",
"started": "string",
"stopped": "string",
"tracks": [
{
"id": "string",
"url": "string",
"type": "AUDIO",
"started": "string",
"stopped": "string",
"storage": {
"localStorage": {
"location": "string",
"created": "string",
"deleted": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
},
"objectStorage": {
"size": "string",
"uploaded": "string",
"location": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
}
}
]
}
],
"chatTranscript": {
"id": "string",
"created": "2019-08-24T14:15:22Z",
"location": "string"
}
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId} \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}',
params: {}, headers: headers
p JSON.parse(result)
Get basic storage profile information of an existing recorder.
GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/storage/info HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
| recorderId | path | string | true | none |
| instanceId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | StorageProfileDataMessage |
Examples
200 Response
{
"applicationId": "string",
"provider": "GOOGLE_CLOUD",
"url": "string"
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/storage/info \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/storage/info", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/storage/info', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/storage/info");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/storage/info',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/storage/info',
params: {}, headers: headers
p JSON.parse(result)
Get status of an existing recorder.
GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/state HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
| recorderId | path | string | true | none |
| instanceId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | RecordingDataEvent |
Examples
200 Response
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"state": "INITIALISED",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/state \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/state", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/state', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/state");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/state',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/state',
params: {}, headers: headers
p JSON.parse(result)
Get a signed URL for a given cobrowse session file
GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/cobrowse/{sessionId}/url/attachment HTTP/1.1
Accept: */*
referer: string
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
| recorderId | path | string | true | none |
| instanceId | path | string | true | none |
| sessionId | path | string | true | none |
| referer | header | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | URLResourceMessage |
Examples
200 Response
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/cobrowse/{sessionId}/url/attachment \
-H 'Accept: */*' \ -H 'referer: string' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"*/*"},
"referer": []string{"string"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/cobrowse/{sessionId}/url/attachment", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': '*/*', 'referer': 'string', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/cobrowse/{sessionId}/url/attachment', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/cobrowse/{sessionId}/url/attachment");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': '*/*',
'referer': 'string',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/cobrowse/{sessionId}/url/attachment',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => '*/*',
'referer' => 'string',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}/{recorderId}/{instanceId}/cobrowse/{sessionId}/url/attachment',
params: {}, headers: headers
p JSON.parse(result)
Get all cobrowse sessions for a given conversationId.
GET /rtc-recorder/api/recordings/{conversationId}/cobrowse HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | InteractionIdentifier | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | ConversationCobrowseSessionDataMessage |
Examples
200 Response
{
"conversationId": "string",
"cobrowseSessions": [
{
"recorderId": "string",
"recorderInstanceId": "string",
"cobrowseSessionId": "string",
"uploaded": "string"
}
]
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId}/cobrowse \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}/cobrowse", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/cobrowse', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/cobrowse");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}/cobrowse',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}/cobrowse',
params: {}, headers: headers
p JSON.parse(result)
Get chatTranscript of a given conversationId.
GET /rtc-recorder/api/recordings/{conversationId}/chat/transcript HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | InteractionIdentifier | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | ConversationChatTranscriptDataMessage |
Examples
200 Response
{
"chatTranscriptList": [
{
"id": "string",
"timestamp": "2019-08-24T14:15:22Z",
"userId": "string",
"userDisplayName": "string",
"transcript": "string"
}
]
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId}/chat/transcript \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}/chat/transcript", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/chat/transcript', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/chat/transcript");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}/chat/transcript',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}/chat/transcript',
params: {}, headers: headers
p JSON.parse(result)
Get an active recording by conversationId
GET /rtc-recorder/api/recordings/{conversationId}/active HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | RecordingDataEvent |
Examples
200 Response
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"state": "INITIALISED",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/{conversationId}/active \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/{conversationId}/active", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/{conversationId}/active', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/{conversationId}/active");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/{conversationId}/active',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/{conversationId}/active',
params: {}, headers: headers
p JSON.parse(result)
getCobrowseSessionResourceAsAttachment
GET /rtc-recorder/api/recordings/attachment/cobrowse/{conversationId}/{recorderId}/{instanceId}/{sessionId}/{fileName}?Date=string&Expires=string&Signature=string HTTP/1.1
Accept: */*
Range: string
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
| recorderId | path | string | true | none |
| instanceId | path | string | true | none |
| sessionId | path | string | true | none |
| fileName | path | string | true | none |
| Date | query | string | true | none |
| Expires | query | string | true | none |
| Signature | query | string | true | none |
| Range | header | string | false | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | string |
Examples
200 Response
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/recordings/attachment/cobrowse/{conversationId}/{recorderId}/{instanceId}/{sessionId}/{fileName}?Date=string&Expires=string&Signature=string \
-H 'Accept: */*' \ -H 'Range: string' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"*/*"},
"Range": []string{"string"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/recordings/attachment/cobrowse/{conversationId}/{recorderId}/{instanceId}/{sessionId}/{fileName}", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': '*/*', 'Range': 'string', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/recordings/attachment/cobrowse/{conversationId}/{recorderId}/{instanceId}/{sessionId}/{fileName}?Date=string&Expires=string&Signature=string', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/recordings/attachment/cobrowse/{conversationId}/{recorderId}/{instanceId}/{sessionId}/{fileName}?Date=string&Expires=string&Signature=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': '*/*',
'Range': 'string',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/recordings/attachment/cobrowse/{conversationId}/{recorderId}/{instanceId}/{sessionId}/{fileName}',
params={
'Date': 'string',
'Expires': 'string',
'Signature': 'string'},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => '*/*',
'Range' => 'string',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/recordings/attachment/cobrowse/{conversationId}/{recorderId}/{instanceId}/{sessionId}/{fileName}',
params: {
'Date' => 'string',
'Expires' => 'string',
'Signature' => 'string'}, headers: headers
p JSON.parse(result)
Media Composition
Get recording information for a given conversationId.
GET /rtc-recorder/api/compositions/{conversationId} HTTP/1.1
Accept: application/json
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| conversationId | path | string | true | none |
Responses
Overview
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | RecordingDataMessage |
Examples
200 Response
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"conferenceId": "string",
"organizationId": "string",
"storageProfile": {
"applicationId": "string",
"provider": "GOOGLE_CLOUD",
"url": "string"
},
"audio": true,
"video": true,
"screenshare": true,
"state": "INITIALISED",
"started": "string",
"recovered": "string",
"stopped": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
},
"streams": [
{
"id": "string",
"userId": "string",
"type": "MIC",
"state": "RECORDING",
"started": "string",
"stopped": "string",
"tracks": [
{
"id": "string",
"url": "string",
"type": "AUDIO",
"started": "string",
"stopped": "string",
"storage": {
"localStorage": {
"location": "string",
"created": "string",
"deleted": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
},
"objectStorage": {
"size": "string",
"uploaded": "string",
"location": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
}
}
]
}
],
"chatTranscript": {
"id": "string",
"created": "2019-08-24T14:15:22Z",
"location": "string"
}
}
To perform this operation, you must be authenticated by means of one of the following methods: apiKey
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X GET /rtc-recorder/api/compositions/{conversationId} \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"Authorization": []string{"API_KEY"},
}
var body []byte
// body = ...
req, err := http.NewRequest("GET", "/rtc-recorder/api/compositions/{conversationId}", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const headers = {
'Accept': 'application/json', 'Authorization': 'API_KEY'
}
fetch('/rtc-recorder/api/compositions/{conversationId}', {
method: 'GET',
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("/rtc-recorder/api/compositions/{conversationId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream())
);
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get(
'/rtc-recorder/api/compositions/{conversationId}',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'Authorization' => 'API_KEY'
}
result = RestClient.get '/rtc-recorder/api/compositions/{conversationId}',
params: {}, headers: headers
p JSON.parse(result)
Schemas
StorageTestResult
{
"passed": true,
"message": "OK",
"errorType": "UNKNOWN"
}
Outcome of a single storage verification step (bucket/write/read/modify/delete).
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| passed | boolean | false | none | True when the verification step succeeded. |
| message | string | false | none | Human readable summary of the verification step outcome. |
| errorType | string | false | none | Categorised error reported only when the verification step fails. |
Enumerated Values
| Property | Value |
|---|---|
| errorType | UNKNOWN |
| errorType | PERMISSION_DENIED |
| errorType | AUTHENTICATION_FAILED |
| errorType | RATE_LIMIT |
| errorType | BUCKET_NOT_FOUND |
| errorType | REGION_MISMATCH |
StorageThroughputResult
{
"passed": true,
"message": "OK",
"errorType": "UNKNOWN",
"bytesTransferred": 2097152,
"durationMillis": 1450,
"throughputMbps": 12.5
}
Outcome of the throughput verification step, including transfer metrics when executed.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| passed | boolean | false | none | True when the verification step succeeded. |
| message | string | false | none | Human readable summary of the verification step outcome. |
| errorType | string | false | none | Categorised error reported only when the verification step fails. |
| bytesTransferred | integer(int64) | false | none | Total bytes transferred during the throughput probe (upload + download). |
| durationMillis | integer(int64) | false | none | Total time spent (ms) to transfer the throughput probe. |
| throughputMbps | number(double) | false | none | Effective throughput calculated from the probe (Mbps). |
Enumerated Values
| Property | Value |
|---|---|
| errorType | UNKNOWN |
| errorType | PERMISSION_DENIED |
| errorType | AUTHENTICATION_FAILED |
| errorType | RATE_LIMIT |
| errorType | BUCKET_NOT_FOUND |
| errorType | REGION_MISMATCH |
StorageVerificationStatusMessage
{
"bucketTestResult": {
"passed": true,
"message": "OK",
"errorType": "UNKNOWN"
},
"writeTestResult": {
"passed": true,
"message": "OK",
"errorType": "UNKNOWN"
},
"readTestResult": {
"passed": true,
"message": "OK",
"errorType": "UNKNOWN"
},
"modifyTestResult": {
"passed": true,
"message": "OK",
"errorType": "UNKNOWN"
},
"deleteTestResult": {
"passed": true,
"message": "OK",
"errorType": "UNKNOWN"
},
"throughputTestResult": {
"passed": true,
"message": "OK",
"errorType": "UNKNOWN",
"bytesTransferred": 2097152,
"durationMillis": 1450,
"throughputMbps": 12.5
}
}
Aggregated outcome for each storage verification step.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| bucketTestResult | StorageTestResult | false | none | Outcome of a single storage verification step (bucket/write/read/modify/delete). |
| writeTestResult | StorageTestResult | false | none | Outcome of a single storage verification step (bucket/write/read/modify/delete). |
| readTestResult | StorageTestResult | false | none | Outcome of a single storage verification step (bucket/write/read/modify/delete). |
| modifyTestResult | StorageTestResult | false | none | Outcome of a single storage verification step (bucket/write/read/modify/delete). |
| deleteTestResult | StorageTestResult | false | none | Outcome of a single storage verification step (bucket/write/read/modify/delete). |
| throughputTestResult | StorageThroughputResult | false | none | Outcome of the throughput verification step, including transfer metrics when executed. |
StartRecording
{
"applicationId": "string",
"conversationId": "string",
"conferenceId": "string",
"audio": true,
"video": true,
"screen": true
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| applicationId | string | true | none | none |
| conversationId | string | true | none | none |
| conferenceId | string | true | none | none |
| audio | boolean | false | none | none |
| video | boolean | false | none | none |
| screen | boolean | false | none | none |
Error
{
"code": "string",
"occurred": "string",
"message": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| code | string | false | none | none |
| occurred | string | false | none | none |
| message | string | false | none | none |
RecordingDataEvent
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"state": "INITIALISED",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| instanceId | string | false | none | none |
| recorderId | string | false | none | none |
| conversationId | string | false | none | none |
| state | string | false | none | none |
| error | Error | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| state | INITIALISED |
| state | ACTIVE |
| state | STOPPED |
| state | FAILED |
| state | ABORTED |
| state | PENDING_RECOVERY |
AddCobrowseEventCmd
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"event": {
"sessionId": "string",
"sequenceId": 0,
"timestamp": 0,
"payload": "string"
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| instanceId | string | true | none | none |
| recorderId | string | true | none | none |
| conversationId | string | true | none | none |
| event | CobrowseEvent | true | none | none |
CobrowseEvent
{
"sessionId": "string",
"sequenceId": 0,
"timestamp": 0,
"payload": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| sessionId | string | true | none | none |
| sequenceId | integer(int32) | true | none | none |
| timestamp | integer(int64) | true | none | none |
| payload | string | true | none | none |
AddChatTranscriptCmd
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"chatTranscriptList": [
{
"id": "string",
"timestamp": "2019-08-24T14:15:22Z",
"userId": "string",
"userDisplayName": "string",
"transcript": "string"
}
]
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| instanceId | string | true | none | none |
| recorderId | string | true | none | none |
| conversationId | string | true | none | none |
| chatTranscriptList | [ChatTranscriptEntry] | true | none | none |
ChatTranscriptEntry
{
"id": "string",
"timestamp": "2019-08-24T14:15:22Z",
"userId": "string",
"userDisplayName": "string",
"transcript": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| id | string | false | none | none |
| timestamp | string(date-time) | true | none | none |
| userId | string | true | none | none |
| userDisplayName | string | false | none | none |
| transcript | string | true | none | none |
StorageProviderStatusMessage
{
"provider": "GOOGLE_CLOUD",
"status": "OK",
"statusMessage": "string"
}
Client-facing storage provider health status.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| provider | string | false | none | Active storage provider for the application. |
| status | string | false | none | Client-facing storage status. |
| statusMessage | string | false | none | Generic status message for WARNING/BLOCKED states. |
Enumerated Values
| Property | Value |
|---|---|
| provider | GOOGLE_CLOUD |
| provider | AMAZON_S3 |
| provider | AZURE_BLOB |
| provider | SFTP_STORAGE |
| status | OK |
| status | WARNING |
| status | BLOCKED |
| status | UNKNOWN |
ChatTranscriptData
{
"id": "string",
"created": "2019-08-24T14:15:22Z",
"location": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| id | string | true | none | none |
| created | string(date-time) | true | none | none |
| location | string | true | none | none |
LocalFileDataMessage
{
"location": "string",
"created": "string",
"deleted": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| location | string | false | none | none |
| created | string | false | none | none |
| deleted | string | false | none | none |
| error | Error | false | none | none |
RecordingDataMessage
{
"instanceId": "string",
"recorderId": "string",
"conversationId": "string",
"conferenceId": "string",
"organizationId": "string",
"storageProfile": {
"applicationId": "string",
"provider": "GOOGLE_CLOUD",
"url": "string"
},
"audio": true,
"video": true,
"screenshare": true,
"state": "INITIALISED",
"started": "string",
"recovered": "string",
"stopped": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
},
"streams": [
{
"id": "string",
"userId": "string",
"type": "MIC",
"state": "RECORDING",
"started": "string",
"stopped": "string",
"tracks": [
{
"id": "string",
"url": "string",
"type": "AUDIO",
"started": "string",
"stopped": "string",
"storage": {
"localStorage": {
"location": "string",
"created": "string",
"deleted": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
},
"objectStorage": {
"size": "string",
"uploaded": "string",
"location": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
}
}
]
}
],
"chatTranscript": {
"id": "string",
"created": "2019-08-24T14:15:22Z",
"location": "string"
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| instanceId | string | false | none | none |
| recorderId | string | false | none | none |
| conversationId | string | false | none | none |
| conferenceId | string | false | none | none |
| organizationId | string | false | none | none |
| storageProfile | StorageProfileDataMessage | false | none | none |
| audio | boolean | false | none | none |
| video | boolean | false | none | none |
| screenshare | boolean | false | none | none |
| state | string | false | none | none |
| started | string | false | none | none |
| recovered | string | false | none | none |
| stopped | string | false | none | none |
| error | Error | false | none | none |
| streams | [StreamDataMessage] | false | none | none |
| chatTranscript | ChatTranscriptData | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| state | INITIALISED |
| state | ACTIVE |
| state | STOPPED |
| state | FAILED |
| state | ABORTED |
| state | PENDING_RECOVERY |
StorageProfileDataMessage
{
"applicationId": "string",
"provider": "GOOGLE_CLOUD",
"url": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| applicationId | string | false | none | none |
| provider | string | false | none | none |
| url | string | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| provider | GOOGLE_CLOUD |
| provider | AMAZON_S3 |
| provider | AZURE_BLOB |
| provider | SFTP_STORAGE |
StreamDataMessage
{
"id": "string",
"userId": "string",
"type": "MIC",
"state": "RECORDING",
"started": "string",
"stopped": "string",
"tracks": [
{
"id": "string",
"url": "string",
"type": "AUDIO",
"started": "string",
"stopped": "string",
"storage": {
"localStorage": {
"location": "string",
"created": "string",
"deleted": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
},
"objectStorage": {
"size": "string",
"uploaded": "string",
"location": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
}
}
]
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| id | string | false | none | none |
| userId | string | false | none | none |
| type | string | false | none | none |
| state | string | false | none | none |
| started | string | false | none | none |
| stopped | string | false | none | none |
| tracks | [TrackDataMessage] | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| type | MIC |
| type | CAM |
| type | SCREEN |
| type | VIDEO |
| type | HOLD |
| type | UNKNOWN |
| state | RECORDING |
| state | STOPPED |
| state | FAILED |
TrackDataMessage
{
"id": "string",
"url": "string",
"type": "AUDIO",
"started": "string",
"stopped": "string",
"storage": {
"localStorage": {
"location": "string",
"created": "string",
"deleted": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
},
"objectStorage": {
"size": "string",
"uploaded": "string",
"location": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| id | string | false | none | none |
| url | string | false | none | none |
| type | string | false | none | none |
| started | string | false | none | none |
| stopped | string | false | none | none |
| storage | TrackStorageDataMessage | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| type | AUDIO |
| type | VIDEO |
TrackStorageDataMessage
{
"localStorage": {
"location": "string",
"created": "string",
"deleted": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
},
"objectStorage": {
"size": "string",
"uploaded": "string",
"location": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| localStorage | LocalFileDataMessage | false | none | none |
| objectStorage | UploadDataMessage | false | none | none |
UploadDataMessage
{
"size": "string",
"uploaded": "string",
"location": "string",
"error": {
"code": "string",
"occurred": "string",
"message": "string"
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| size | string | false | none | none |
| uploaded | string | false | none | none |
| location | string | false | none | none |
| error | Error | false | none | none |
URLResourceMessage
{
"url": "https://storage.googleapis.com/bucket/6e6d5224-1919-48fa-a982-66cef9fa4c08/7edf1e1e-0109-4d92-9bad-ab43059a28e3/ca900103-16d3-4b34-884a-003fd8b8e9ca/7edf1e1e-0109-4d92-9bad-ab43059a28e3.mp4?GoogleAccessId=rtc-recorder-gcs@auvious.iam.gserviceaccount.com&Expires=1610649825&Signature=t2f4bXWN842Z7eHHVKaMZs1KHUzcqX8EXX4QoaWinjcKrMcq1AnADJ7iV2MjLgScnJFhlFYiFosHiLNUSqbjuar9IKEtH9JTyLdvkljEzBPPrkvZ5X0XIi5%2FsEQTekwdzKmTjjGRUZWCix%2FIMbizCl0qnX6Tpi%2BbKhTD7u9PjXk1PEum2P2siAnB0s8D9sow6IDuH8%2FrKYMjCe3jb2P%2Fi6asce9xOwmNjW7lxnyLMAeydxCWyZ66kcas0wXZ5BillG%2BA9NvqvnBXKQrGV5im6%2FnleElz9JhcFS%2B2U5suXt9tok3SScbgMvSWfLQ0PyttJuKtQ%2FxTzUnvGOc5WGkTNg%3D%3D",
"validUntil": "2021-01-14T18:43:45.569343Z"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| url | string(url) | false | none | A signed URL of a given resource. |
| validUntil | string | false | none | The date until the given URL will remain valid. |
InteractionIdentifier
{
"id": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| id | string | true | none | none |
CobrowseSessionDataMessage
{
"recorderId": "string",
"recorderInstanceId": "string",
"cobrowseSessionId": "string",
"uploaded": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| recorderId | string | false | none | none |
| recorderInstanceId | string | false | none | none |
| cobrowseSessionId | string | false | none | none |
| uploaded | string | false | none | none |
ConversationCobrowseSessionDataMessage
{
"conversationId": "string",
"cobrowseSessions": [
{
"recorderId": "string",
"recorderInstanceId": "string",
"cobrowseSessionId": "string",
"uploaded": "string"
}
]
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| conversationId | string | false | none | none |
| cobrowseSessions | [CobrowseSessionDataMessage] | false | none | none |
ConversationChatTranscriptDataMessage
{
"chatTranscriptList": [
{
"id": "string",
"timestamp": "2019-08-24T14:15:22Z",
"userId": "string",
"userDisplayName": "string",
"transcript": "string"
}
]
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| chatTranscriptList | [ChatTranscriptEntry] | true | none | none |