Skip to main content

Auvious Auth Server API v2.1.11

Auvious Auth Server provides the core security related services.

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​

  • HTTP Authentication, scheme: bearer
  • OAuth 2.0 Authorization.
    • Flow: clientCredentials

    • OAuth 2.0 Token URL = /oauth/token

    • OAuth 2.0 Scope

      ScopeScope Description

Applications​

Get Application.​

GET https://auvious.video/api/applications/{id} HTTP/1.1
Host: auvious.video
Accept: application/json

Use this operation to get configuration. For type GENESYS apps, if you are an integration admin user you will have 'integrations:integration:view' permission which is what this method will check in order to return all configuration entries. Otherwise, if the user is a microservice it will get back only serviceParameters, if the user is a customer he will only get back customerParameters while if the user is a non-admin agent he will get only agentParameters back

Parameters​

ParameterInTypeRequiredDescription
idpathstringtruenone

Responses​

Overview​
StatusMeaningDescriptionSchema
200OKOKApplication
Examples​

200 Response

{
"version": 0,
"id": "string",
"organizationId": "string",
"type": "GENESYS",
"config": {
"property1": null,
"property2": null
},
"createdAt": "2019-08-24T14:15:22Z",
"modifiedAt": "2019-08-24T14:15:22Z",
"visible": true,
"disabled": true,
"expiresAt": "2019-08-24T14:15:22Z",
"anonymousRegistrationEnabled": true
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials

Code samples​

curl -X GET https://auvious.video/api/applications/{id} \
-H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Update an application​

PUT https://auvious.video/api/applications/{id} HTTP/1.1
Host: auvious.video
Content-Type: application/json

Use this operation to update an existing application. For GENESYS type applications you should include your organizationId and pcEnvironment values. This operation will be denied if the user doesn't have the 'integrations:integration:edit' permission.

Request body​

{
"organizationId": "string",
"type": "GENESYS",
"version": 0,
"config": {
"property1": null,
"property2": null
},
"disabled": true
}

Parameters​

ParameterInTypeRequiredDescription
idpathstringtruenone
bodybodyUpdateApplicationWebCommandtruenone

Responses​

Overview​
StatusMeaningDescriptionSchema
204No ContentUpdatedNone
404Not FoundNot FoundNone
caution

To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials

Code samples​

curl -X PUT https://auvious.video/api/applications/{id} \
-H 'Content-Type: application/json' \ -H 'Authorization: Bearer {access-token}'

Delete application.​

DELETE https://auvious.video/api/applications/{id} HTTP/1.1
Host: auvious.video

Use this if you want to delete an application. If the app is GENESYS type, the user must have the permission integrations:integration:delete permission, otherwise this call will fail.

Parameters​

ParameterInTypeRequiredDescription
idpathstringtruenone

Responses​

Overview​
StatusMeaningDescriptionSchema
204No ContentNo ContentNone
caution

To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials

Code samples​

curl -X DELETE https://auvious.video/api/applications/{id} \
-H 'Authorization: Bearer {access-token}'

Get applications​

GET https://auvious.video/api/applications?pageable=page,0,size,1,sort,string HTTP/1.1
Host: auvious.video
Accept: application/json

Returns applications sorted by createdAt descending. GLOBAL_ADMIN gets all applications. ADMIN gets organization applications based on organization_id claim. Other callers get visible applications.

Parameters​

ParameterInTypeRequiredDescription
pageablequeryPageabletruenone

Responses​

Overview​
StatusMeaningDescriptionSchema
200OKOKPageApplication
Examples​

200 Response

{
"totalPages": 0,
"totalElements": 0,
"size": 0,
"content": [
{
"version": 0,
"id": "string",
"organizationId": "string",
"type": "GENESYS",
"config": {
"property1": null,
"property2": null
},
"createdAt": "2019-08-24T14:15:22Z",
"modifiedAt": "2019-08-24T14:15:22Z",
"visible": true,
"disabled": true,
"expiresAt": "2019-08-24T14:15:22Z",
"anonymousRegistrationEnabled": true
}
],
"number": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"pageable": {
"offset": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"unpaged": true,
"pageNumber": 0,
"pageSize": 0,
"paged": true
},
"numberOfElements": 0,
"first": true,
"last": true,
"empty": true
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials

Code samples​

curl -X GET https://auvious.video/api/applications?pageable=page,0,size,1,sort,string \
-H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Create an application​

POST https://auvious.video/api/applications HTTP/1.1
Host: auvious.video
Content-Type: application/json
Accept: application/json

Use this operation to create a new application. For GENESYS type applications you should include at least your 'organizationId' and 'pcEnvironment' entries in the 'config' otherwise creation will be denied. It is also recommended to include 'integrationId' entry. Again for GENESYS type applications, this operation will check that the user has integrations:integration:add permission. Once more, for GENESYS type apps, you should include your parameters in three main entries: serviceParameters, agentParameters and customerParameters. You can include other parameters, but they will be visible to all members of the same organization as well as internal auvious services. Internal Services can create any application.

Request body​

{
"id": "string",
"organizationId": "string",
"type": "GENESYS",
"config": {
"property1": null,
"property2": null
},
"disabled": true
}

Parameters​

ParameterInTypeRequiredDescription
bodybodyCreateApplicationWebCommandtruenone

Responses​

Overview​
StatusMeaningDescriptionSchema
200OKOKCreateApplicationResponseValue
Examples​

200 Response

{
"id": "string"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials

Code samples​

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

Check application id availability​

GET https://auvious.video/api/applications/{id}/availability HTTP/1.1
Host: auvious.video
Accept: application/json

Returns true when application id does not exist. SERVICE and GLOBAL_ADMIN check globally. CLIENT_SERVICE checks only in its organization_id claim scope.

Parameters​

ParameterInTypeRequiredDescription
idpathstringtruenone

Responses​

Overview​
StatusMeaningDescriptionSchema
200OKAvailability calculatedAvailabilityResponseValue
Examples​

200 Response

{
"available": true
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials

Code samples​

curl -X GET https://auvious.video/api/applications/{id}/availability \
-H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Get applications by organization id​

GET https://auvious.video/api/applications/organizations/{organizationId}?pageable=page,0,size,1,sort,string HTTP/1.1
Host: auvious.video
Accept: application/json

Use this operation to retrieve applications belonging to the supplied organization id. Allowed for SERVICE and GLOBAL_ADMIN.

Parameters​

ParameterInTypeRequiredDescription
organizationIdpathstringtruenone
pageablequeryPageabletruenone

Responses​

Overview​
StatusMeaningDescriptionSchema
200OKApplications listedPageApplication
Examples​

200 Response

{
"totalPages": 0,
"totalElements": 0,
"size": 0,
"content": [
{
"version": 0,
"id": "string",
"organizationId": "string",
"type": "GENESYS",
"config": {
"property1": null,
"property2": null
},
"createdAt": "2019-08-24T14:15:22Z",
"modifiedAt": "2019-08-24T14:15:22Z",
"visible": true,
"disabled": true,
"expiresAt": "2019-08-24T14:15:22Z",
"anonymousRegistrationEnabled": true
}
],
"number": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"pageable": {
"offset": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"unpaged": true,
"pageNumber": 0,
"pageSize": 0,
"paged": true
},
"numberOfElements": 0,
"first": true,
"last": true,
"empty": true
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: BearerToken, OAuth2ClientCredentials

Code samples​

curl -X GET https://auvious.video/api/applications/organizations/{organizationId}?pageable=page,0,size,1,sort,string \
-H 'Accept: application/json' \ -H 'Authorization: Bearer {access-token}'

Schemas​

UpdateApplicationWebCommand​

{
"organizationId": "string",
"type": "GENESYS",
"version": 0,
"config": {
"property1": null,
"property2": null
},
"disabled": true
}

Properties​

NameTypeRequiredRestrictionsDescription
organizationIdstringfalsenoneonly for access from internal service
typestringtruenonenone
versioninteger(int64)falsenoneOptional optimistic locking version. When provided it must match current application version.
configobjecttruenoneThe application configuration object. For GENESYS apps, serviceParameters will be shown only to service accounts and admins, agentParameters will only be shown to agents and customerParameters will be shown only to customers
» additionalPropertiesanyfalsenonenone
disabledbooleanfalsenoneWhether the application is disabled for authentication and refresh-token usage.
Enumerated Values​
PropertyValue
typeGENESYS
typeSTANDALONE_OPENID
typeTALKDESK_OPENID
typeNICE_CXONE_OPENID
typeTEST
typeSETUP_TEST

CreateApplicationWebCommand​

{
"id": "string",
"organizationId": "string",
"type": "GENESYS",
"config": {
"property1": null,
"property2": null
},
"disabled": true
}

Properties​

NameTypeRequiredRestrictionsDescription
idstringfalsenoneonly for access from internal service
organizationIdstringfalsenoneonly for access from internal service
typestringtruenonenone
configobjecttruenoneThe application configuration object. For GENESYS apps, serviceParameters will be shown only to service accounts and admins, agentParameters will only be shown to agents and customerParameters will be shown only to customers
» additionalPropertiesanyfalsenonenone
disabledbooleanfalsenoneWhether the application is disabled for authentication and refresh-token usage.
Enumerated Values​
PropertyValue
typeGENESYS
typeSTANDALONE_OPENID
typeTALKDESK_OPENID
typeNICE_CXONE_OPENID
typeTEST
typeSETUP_TEST

CreateApplicationResponseValue​

{
"id": "string"
}

Properties​

NameTypeRequiredRestrictionsDescription
idstringfalsenonenone

AvailabilityResponseValue​

{
"available": true
}

Availability check response.

Properties​

NameTypeRequiredRestrictionsDescription
availablebooleanfalsenoneTrue when requested identifier is available.

Application​

{
"version": 0,
"id": "string",
"organizationId": "string",
"type": "GENESYS",
"config": {
"property1": null,
"property2": null
},
"createdAt": "2019-08-24T14:15:22Z",
"modifiedAt": "2019-08-24T14:15:22Z",
"visible": true,
"disabled": true,
"expiresAt": "2019-08-24T14:15:22Z",
"anonymousRegistrationEnabled": true
}

Properties​

NameTypeRequiredRestrictionsDescription
versioninteger(int64)falsenonenone
idstringfalsenonenone
organizationIdstringfalsenonenone
typestringfalsenonenone
configobjectfalsenonenone
» additionalPropertiesanyfalsenonenone
createdAtstring(date-time)falsenonenone
modifiedAtstring(date-time)falsenonenone
visiblebooleanfalsenonenone
disabledbooleanfalsenonenone
expiresAtstring(date-time)falsenonenone
anonymousRegistrationEnabledbooleanfalsenonenone
Enumerated Values​
PropertyValue
typeGENESYS
typeSTANDALONE_OPENID
typeTALKDESK_OPENID
typeNICE_CXONE_OPENID
typeTEST
typeSETUP_TEST

Pageable​

{
"page": 0,
"size": 1,
"sort": [
"string"
]
}

Properties​

NameTypeRequiredRestrictionsDescription
pageinteger(int32)falsenonenone
sizeinteger(int32)falsenonenone
sort[string]falsenonenone

PageApplication​

{
"totalPages": 0,
"totalElements": 0,
"size": 0,
"content": [
{
"version": 0,
"id": "string",
"organizationId": "string",
"type": "GENESYS",
"config": {
"property1": null,
"property2": null
},
"createdAt": "2019-08-24T14:15:22Z",
"modifiedAt": "2019-08-24T14:15:22Z",
"visible": true,
"disabled": true,
"expiresAt": "2019-08-24T14:15:22Z",
"anonymousRegistrationEnabled": true
}
],
"number": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"pageable": {
"offset": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"unpaged": true,
"pageNumber": 0,
"pageSize": 0,
"paged": true
},
"numberOfElements": 0,
"first": true,
"last": true,
"empty": true
}

Properties​

NameTypeRequiredRestrictionsDescription
totalPagesinteger(int32)falsenonenone
totalElementsinteger(int64)falsenonenone
sizeinteger(int32)falsenonenone
content[Application]falsenonenone
numberinteger(int32)falsenonenone
sortSortObjectfalsenonenone
pageablePageableObjectfalsenonenone
numberOfElementsinteger(int32)falsenonenone
firstbooleanfalsenonenone
lastbooleanfalsenonenone
emptybooleanfalsenonenone

PageableObject​

{
"offset": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"unpaged": true,
"pageNumber": 0,
"pageSize": 0,
"paged": true
}

Properties​

NameTypeRequiredRestrictionsDescription
offsetinteger(int64)falsenonenone
sortSortObjectfalsenonenone
unpagedbooleanfalsenonenone
pageNumberinteger(int32)falsenonenone
pageSizeinteger(int32)falsenonenone
pagedbooleanfalsenonenone

SortObject​

{
"empty": true,
"sorted": true,
"unsorted": true
}

Properties​

NameTypeRequiredRestrictionsDescription
emptybooleanfalsenonenone
sortedbooleanfalsenonenone
unsortedbooleanfalsenonenone