Auvious RTC API v1.9.5-beta.unchecked.27
Auvious RTC API is the core set of services providing the realtime communication capabilities of the Auvious Platform.
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
HTTP Authentication, scheme: bearer
OAuth 2.0 Authorization.
Flow: clientCredentials
OAuth 2.0 Token URL = https://auvious.video/security/oauth/token
OAuth 2.0 Scope
Scope Scope Description
Registrations
Create a new user endpoint aka register a user
POST https://auvious.video/rtc-api/users/endpoints HTTP/1.1
Host: auvious.video
Content-Type: application/json
Accept: application/json
Request body
{
"userEndpointId": "string",
"keepAliveSeconds": 5,
"serverKeepAliveReminderOn": true
}
Parameters
Parameter | In | Type | Required | Description |
---|---|---|---|---|
body | body | RegisterUserEndpointWebCommand | true | none |
Responses
Overview
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» additionalProperties | string | false | none | none |
Examples
200 Response
"string"
400 Response
To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST https://auvious.video/rtc-api/users/endpoints \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"Authorization": []string{"Bearer {access-token}"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "https://auvious.video/rtc-api/users/endpoints", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"userEndpointId": "string",
"keepAliveSeconds": 5,
"serverKeepAliveReminderOn": true
}';
const headers = {
'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': 'Bearer {access-token}'
}
fetch('https://auvious.video/rtc-api/users/endpoints', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("https://auvious.video/rtc-api/users/endpoints");
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': 'application/json',
'Authorization': 'Bearer {access-token}'
}
r = requests.post(
'https://auvious.video/rtc-api/users/endpoints',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://auvious.video/rtc-api/users/endpoints',
params: {}, headers: headers
p JSON.parse(result)
Destroy an existing user endpoint aka unregister a user
POST https://auvious.video/rtc-api/users/endpoints/unregister HTTP/1.1
Host: auvious.video
Content-Type: application/json
Accept: */*
Request body
{
"userEndpointId": "string",
"reason": "string"
}
Parameters
Parameter | In | Type | Required | Description |
---|---|---|---|---|
body | body | UnregisterUserEndpointWebCommand | true | none |
Responses
Overview
Status | Meaning | Description | Schema |
---|---|---|---|
204 | No Content | No Content | None |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» additionalProperties | string | false | none | none |
Examples
400 Response
To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST https://auvious.video/rtc-api/users/endpoints/unregister \
-H 'Content-Type: application/json' \ -H 'Accept: */*' \ -H 'Authorization: Bearer {access-token}'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"*/*"},
"Authorization": []string{"Bearer {access-token}"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "https://auvious.video/rtc-api/users/endpoints/unregister", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"userEndpointId": "string",
"reason": "string"
}';
const headers = {
'Content-Type': 'application/json', 'Accept': '*/*', 'Authorization': 'Bearer {access-token}'
}
fetch('https://auvious.video/rtc-api/users/endpoints/unregister', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("https://auvious.video/rtc-api/users/endpoints/unregister");
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': 'Bearer {access-token}'
}
r = requests.post(
'https://auvious.video/rtc-api/users/endpoints/unregister',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://auvious.video/rtc-api/users/endpoints/unregister',
params: {}, headers: headers
p JSON.parse(result)
Sends event to all registered user endpoints
POST https://auvious.video/rtc-api/users/endpoints/sendEvent HTTP/1.1
Host: auvious.video
Content-Type: application/json
Accept: */*
Returns number of messages sent. Users with 'SERVICE' role need to supply organization id.
Request body
{
"userId": "string",
"organizationId": "string",
"userEndpointId": "string",
"event": {
"property1": {},
"property2": {}
},
"masks": [
"string"
],
"qos": 0
}
Parameters
Parameter | In | Type | Required | Description |
---|---|---|---|---|
body | body | SendEventToUserWebCommand | true | none |
Responses
Overview
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | integer |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» additionalProperties | string | false | none | none |
Examples
200 Response
To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST https://auvious.video/rtc-api/users/endpoints/sendEvent \
-H 'Content-Type: application/json' \ -H 'Accept: */*' \ -H 'Authorization: Bearer {access-token}'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"*/*"},
"Authorization": []string{"Bearer {access-token}"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "https://auvious.video/rtc-api/users/endpoints/sendEvent", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"userId": "string",
"organizationId": "string",
"userEndpointId": "string",
"event": {
"property1": {},
"property2": {}
},
"masks": [
"string"
],
"qos": 0
}';
const headers = {
'Content-Type': 'application/json', 'Accept': '*/*', 'Authorization': 'Bearer {access-token}'
}
fetch('https://auvious.video/rtc-api/users/endpoints/sendEvent', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("https://auvious.video/rtc-api/users/endpoints/sendEvent");
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': 'Bearer {access-token}'
}
r = requests.post(
'https://auvious.video/rtc-api/users/endpoints/sendEvent',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://auvious.video/rtc-api/users/endpoints/sendEvent',
params: {}, headers: headers
p JSON.parse(result)
Create a new user endpoint aka register a user - ios specific call
POST https://auvious.video/rtc-api/users/endpoints/register HTTP/1.1
Host: auvious.video
Content-Type: application/json
Accept: application/json
Request body
{
"userEndpointId": "string",
"keepAliveSeconds": 5,
"serverKeepAliveReminderOn": true
}
Parameters
Parameter | In | Type | Required | Description |
---|---|---|---|---|
body | body | RegisterUserEndpointWebCommand | true | none |
Responses
Overview
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | RegisterResult |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» additionalProperties | string | false | none | none |
Examples
200 Response
{
"id": "string"
}
400 Response
To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST https://auvious.video/rtc-api/users/endpoints/register \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"Authorization": []string{"Bearer {access-token}"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "https://auvious.video/rtc-api/users/endpoints/register", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"userEndpointId": "string",
"keepAliveSeconds": 5,
"serverKeepAliveReminderOn": true
}';
const headers = {
'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': 'Bearer {access-token}'
}
fetch('https://auvious.video/rtc-api/users/endpoints/register', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("https://auvious.video/rtc-api/users/endpoints/register");
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': 'application/json',
'Authorization': 'Bearer {access-token}'
}
r = requests.post(
'https://auvious.video/rtc-api/users/endpoints/register',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://auvious.video/rtc-api/users/endpoints/register',
params: {}, headers: headers
p JSON.parse(result)
Send keepalive for a user endpoint
POST https://auvious.video/rtc-api/users/endpoints/keepalive HTTP/1.1
Host: auvious.video
Content-Type: application/json
Accept: */*
Request body
{
"userEndpointId": "string"
}
Parameters
Parameter | In | Type | Required | Description |
---|---|---|---|---|
body | body | KeepUserEndpointAliveWebCommand | true | none |
Responses
Overview
Status | Meaning | Description | Schema |
---|---|---|---|
204 | No Content | No Content | None |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» additionalProperties | string | false | none | none |
Examples
400 Response
To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials
Code samples
- Shell
- Go
- Node
- Java
- Python
- Ruby
curl -X POST https://auvious.video/rtc-api/users/endpoints/keepalive \
-H 'Content-Type: application/json' \ -H 'Accept: */*' \ -H 'Authorization: Bearer {access-token}'
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"*/*"},
"Authorization": []string{"Bearer {access-token}"},
}
var body []byte
// body = ...
req, err := http.NewRequest("POST", "https://auvious.video/rtc-api/users/endpoints/keepalive", bytes.NewBuffer(body))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
const fetch = require('node-fetch');
const input = '{
"userEndpointId": "string"
}';
const headers = {
'Content-Type': 'application/json', 'Accept': '*/*', 'Authorization': 'Bearer {access-token}'
}
fetch('https://auvious.video/rtc-api/users/endpoints/keepalive', {
method: 'POST',
body: input,
headers
})
.then(r => r.json())
.then((body) => {
console.log(body)
})
// This sample needs improvement.
URL obj = new URL("https://auvious.video/rtc-api/users/endpoints/keepalive");
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': 'Bearer {access-token}'
}
r = requests.post(
'https://auvious.video/rtc-api/users/endpoints/keepalive',
params={},
headers = headers)
print r.json()
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://auvious.video/rtc-api/users/endpoints/keepalive',
params: {}, headers: headers
p JSON.parse(result)
Schemas
RegisterUserEndpointWebCommand
{
"userEndpointId": "string",
"keepAliveSeconds": 5,
"serverKeepAliveReminderOn": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
userEndpointId | string | false | none | Supply the userEndpointId. Take care so this value is unique, otherwise better leave this empty and let the server produce one. Optional. |
keepAliveSeconds | integer(int32) | true | none | how long before this endpoint expires if no keepalive request is sent. Mandatory. |
serverKeepAliveReminderOn | boolean | false | none | if true, then an Event will be sent to the userEndpoint topic, to remind the client to makea keepalive request. Default is false. |
UnregisterUserEndpointWebCommand
{
"userEndpointId": "string",
"reason": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
userEndpointId | string | true | none | none |
reason | string | false | none | none |
SendEventToUserWebCommand
{
"userId": "string",
"organizationId": "string",
"userEndpointId": "string",
"event": {
"property1": {},
"property2": {}
},
"masks": [
"string"
],
"qos": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
userId | string | true | none | userId of user that will receive the message |
organizationId | string | true | none | Organization id of user that sends and must match the user's org who will receive the message. Only applicable to internal services, for normal users their jwt organization_id claim will be used, since theycan only send events to users of their own organization |
userEndpointId | string | false | none | userEndpointId of user that will receive the message, if not supplied it will be sent to all user endpoints of user with the specified userId. |
event | object | true | none | event attributes, at least type and timestamp must be supplied with correct format. Format for type should begin with capital, end with Event, and use came case of at least a noun and a verb denoting what happened on what. Format for timestamp is ISO-8601 instant format e.g. '2011-12-03T10:15:30Z |
» additionalProperties | object | false | none | event attributes, at least type and timestamp must be supplied with correct format. Format for type should begin with capital, end with Event, and use came case of at least a noun and a verb denoting what happened on what. Format for timestamp is ISO-8601 instant format e.g. '2011-12-03T10:15:30Z |
masks | [string] | false | none | masks to apply, each item denotes a json path (https://github.com/json-path/JsonPath) syntax which will be applied on the event when stored or logged. By default no masks are applied. The masked fields must be of type string, and it will be replaced by a string of same length but with strings. |
qos | integer(int32) | false | none | qos level 0 = best effort, 1 = at least once, other values best effort. Defaults to 0 (best effort) |
RegisterResult
{
"id": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | false | none | user endpoint id |
KeepUserEndpointAliveWebCommand
{
"userEndpointId": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
userEndpointId | string | true | none | none |