Skip to main content

Registration v1.0

Operations supporting user endpoint (aka user session) registration. A registration/user endpoint is necessary to use several other apis. It represents a user "session" e.g. a user from a browser tab is a different session from the same user in his mobile device, or event another browser tab. It also defines an mqtt topic users/endpoints/{userEndpointId} where the user receives any events that he should be informed of.

info

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

Registrations

User Endpoint Controller

Create a new user endpoint aka register a user

POST https://auvious.video:443/rtc-api/users/endpoints HTTP/1.1
Host: auvious.video:443
Content-Type: application/json
Accept: application/json

Request body

{
"keepAliveSeconds": 0,
"serverKeepAliveReminderOn": false,
"userEndpointId": "string"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyRegisterUserEndpointWebCommandfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKOKstring
201CreatedCreatedNone
401UnauthorizedUnauthorizedNone
403ForbiddenForbiddenNone
404Not FoundNot FoundNone
Examples

200 Response

"string"
caution

To perform this operation, you must be authenticated by means of one of the following methods: Client Credentials Flow ( Scopes: global ), Jwt ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global )

Code samples

curl -X POST https://auvious.video:443/rtc-api/users/endpoints \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Send keepalive for a user endpoint

POST https://auvious.video:443/rtc-api/users/endpoints/keepalive HTTP/1.1
Host: auvious.video:443
Content-Type: application/json
Accept: application/json

Request body

{
"userEndpointId": "string"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyKeepUserEndpointAliveWebCommandfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKOKNone
201CreatedCreatedNone
204No ContentNo ContentNone
401UnauthorizedUnauthorizedNone
403ForbiddenForbiddenNone
404Not FoundNot FoundNone
Response Schema
Examples
caution

To perform this operation, you must be authenticated by means of one of the following methods: Client Credentials Flow ( Scopes: global ), Jwt ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global )

Code samples

curl -X POST https://auvious.video:443/rtc-api/users/endpoints/keepalive \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Create a new user endpoint aka register a user - ios specific call

POST https://auvious.video:443/rtc-api/users/endpoints/register HTTP/1.1
Host: auvious.video:443
Content-Type: application/json
Accept: application/json

Request body

{
"keepAliveSeconds": 0,
"serverKeepAliveReminderOn": false,
"userEndpointId": "string"
}

Parameters

ParameterInTypeRequiredDescription
authenticatedquerybooleanfalsenone
authorities[0].authorityquerystringfalsenone
credentialsqueryobjectfalsenone
detailsqueryobjectfalsenone
principalqueryobjectfalsenone
bodybodyRegisterUserEndpointWebCommandfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKOKRegisterResult
201CreatedCreatedNone
401UnauthorizedUnauthorizedNone
403ForbiddenForbiddenNone
404Not FoundNot FoundNone
Examples

200 Response

{
"id": "string"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: Client Credentials Flow ( Scopes: global ), Jwt ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global )

Code samples

curl -X POST https://auvious.video:443/rtc-api/users/endpoints/register \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Sends event to all registered user endpoints

POST https://auvious.video:443/rtc-api/users/endpoints/sendEvent HTTP/1.1
Host: auvious.video:443
Content-Type: application/json
Accept: application/json

Returns number of messages sent. Users with 'SERVICE' role need to supply organization id.

Request body

{
"event": {},
"masks": [
"string"
],
"organizationId": "string",
"qos": 0,
"userEndpointId": "string",
"userId": "string"
}

Parameters

ParameterInTypeRequiredDescription
bodybodySendEventToUserWebCommandfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKOKinteger
201CreatedCreatedNone
401UnauthorizedUnauthorizedNone
403ForbiddenForbiddenNone
404Not FoundNot FoundNone
Examples

200 Response

0
caution

To perform this operation, you must be authenticated by means of one of the following methods: Client Credentials Flow ( Scopes: global ), Jwt ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global )

Code samples

curl -X POST https://auvious.video:443/rtc-api/users/endpoints/sendEvent \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Destroy an existing user endpoint aka unregister a user

POST https://auvious.video:443/rtc-api/users/endpoints/unregister HTTP/1.1
Host: auvious.video:443
Content-Type: application/json
Accept: application/json

Request body

{
"reason": "string",
"userEndpointId": "string"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyUnregisterUserEndpointWebCommandfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKOKNone
201CreatedCreatedNone
204No ContentNo ContentNone
401UnauthorizedUnauthorizedNone
403ForbiddenForbiddenNone
404Not FoundNot FoundNone
Response Schema
Examples
caution

To perform this operation, you must be authenticated by means of one of the following methods: Client Credentials Flow ( Scopes: global ), Jwt ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global ), None ( Scopes: global )

Code samples

curl -X POST https://auvious.video:443/rtc-api/users/endpoints/unregister \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Schemas

Iterable«UserEndpointView»

{}

Iterable«UserEndpointView»

Properties

None

KeepUserEndpointAliveWebCommand

{
"userEndpointId": "string"
}

KeepUserEndpointAliveWebCommand

Properties

NameTypeRequiredRestrictionsDescription
userEndpointIdstringtruenonenone

RegisterResult

{
"id": "string"
}

RegisterResult

Properties

NameTypeRequiredRestrictionsDescription
idstringfalsenoneuser endpoint id

RegisterUserEndpointWebCommand

{
"keepAliveSeconds": 0,
"serverKeepAliveReminderOn": false,
"userEndpointId": "string"
}

RegisterUserEndpointWebCommand

Properties

NameTypeRequiredRestrictionsDescription
keepAliveSecondsinteger(int32)falsenonehow long before this endpoint expires if no keepalive request is sent. Mandatory.
serverKeepAliveReminderOnbooleanfalsenoneif true, then an Event will be sent to the userEndpoint topic, to remind the client to makea keepalive request. Default is false.
userEndpointIdstringfalsenoneSupply the userEndpointId. Take care so this value is unique, otherwise better leave this empty and let the server produce one. Optional.

SendEventToUserWebCommand

{
"event": {},
"masks": [
"string"
],
"organizationId": "string",
"qos": 0,
"userEndpointId": "string",
"userId": "string"
}

SendEventToUserWebCommand

Properties

NameTypeRequiredRestrictionsDescription
eventobjecttruenoneevent 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]falsenonemasks 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.
organizationIdstringtruenoneOrganization 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
qosinteger(int32)falsenoneqos level 0 = best effort, 1 = at least once, other values best effort. Defaults to 0 (best effort)
userEndpointIdstringfalsenoneuserEndpointId of user that will receive the message, if not supplied it will be sent to all user endpoints of user with the specified userId.
userIdstringtruenoneuserId of user that will receive the message

UnregisterUserEndpointWebCommand

{
"reason": "string",
"userEndpointId": "string"
}

UnregisterUserEndpointWebCommand

Properties

NameTypeRequiredRestrictionsDescription
reasonstringfalsenonenone
userEndpointIdstringtruenonenone

UserEndpoint

{
"id": "string",
"keepAliveSeconds": 0,
"organizationId": "string",
"serverKeepAliveReminderOn": true,
"state": "HEALTHY",
"userId": "string",
"version": 0
}

UserEndpoint

Properties

NameTypeRequiredRestrictionsDescription
idstringfalsenonenone
keepAliveSecondsinteger(int32)falsenonenone
organizationIdstringfalsenonenone
serverKeepAliveReminderOnbooleanfalsenonenone
statestringfalsenonenone
userIdstringfalsenonenone
versioninteger(int64)falsenonenone
Enumerated Values
PropertyValue
stateHEALTHY
stateSICK
stateUNKNOWN

UserEndpointView

{
"id": "string",
"keepAliveSeconds": 0,
"organizationId": "string",
"state": "string",
"userId": "string",
"version": 0
}

UserEndpointView

Properties

NameTypeRequiredRestrictionsDescription
idstringfalsenonenone
keepAliveSecondsinteger(int32)falsenonenone
organizationIdstringfalsenonenone
statestringfalsenonenone
userIdstringfalsenonenone
versioninteger(int64)falsenonenone