Set up the VidyoPortal Service
This section describes how to set up the VidyoPortal service.
- Obtain the JWT Authentication Secret
- Generate a Server Token
- Configure the VidyoPortal Token Level Event Service
Obtain the JWT Authentication Secret
You can obtain a JWT Authentication Secret by either one of these methods:
Caution If you have already configured the Vidyo Event Service with a JWT Authentication Secret, you must use the same Secret here. Do not generate a new one; instead, skip this procedure and enter the Secret in the Vidyo Service Console. For more information, refer to the Vidyo Event Service Deployment Guide. |
Generate a JWT Authentication Secret
The VidyoPortal can generate its own random Authentication Secret and return that back as part of a REST API response.
URL: /admin/api/v1/system/tenants/jwtAuthenticationSecret
Method: PUT
Authentication: Super credentials
Response Body
Field |
Data type |
Mandatory |
Description |
---|---|---|---|
version |
String |
Y |
Defines the version of the API. |
status |
String |
Y |
Defines the response status. For a successful response, its value will be “success”. |
data |
Object |
Y |
This is the element which encapsulates the API response. For this API, its value is null. |
Secret |
String |
Y |
This is the new authentication secret generated on the change of signing algorithm. |
{
"version": "1",
"status": "success",
"data": {
"authenticationSecret": [{
"secret": "asdfasdfasfLXZlcnktbG9uZy1zZWNyZXQta2V5LWZvci1zaWduaW5nLWp3dC10b2tlbnM="
}]
}
}
HTTP status codes, error codes, and messages
HTTP response code |
Error code |
Error message |
Scenario |
---|---|---|---|
400 |
101017 |
Invalid request |
If signing algorithm name is valid. Any other request body validation failure. |
404 |
101018 |
Singing algorithm not configured |
If signing algorithm is fetched while it is not configured at the tenant level. |
404 |
101019 |
Authentication secret not configured |
If authentication secret is fetched while it is not configured at the tenant level. |
403 |
|
|
Unauthorized user if anybody other than the Super Admin tries to access. Invalid tenant ID/FQDN. |
500 |
101020 |
Internal server error |
Internal server error. |
{
"version": "1",
"status": "failure",
"error": {
"code": 101017,
"message": "Invalid request",
"errors": []
}
}
Set a JWT Authentication Secret
Instead of letting the VidyoPortal generate its own random Authentication Secret and return that back as part of a REST API response, you can generate you own JWT Authentication Secret and use the same REST API to set it.
URL: /admin/api/v1/system/tenants/jwtAuthenticationSecret
Method: PUT
Authentication: Super credentials
Request Body
Field |
Data type |
Mandatory |
Description |
Validations |
---|---|---|---|---|
|
String |
N |
The authentication secret. For example: 2deC;p<V:3#p85?S3T#,4S] |
Validation of authentication secret. It must contain at least one:
Length of authentication secret is dependent on JWT signing algorithm. For HS384, the size minimum is 48 characters. Should be encoded in Base64. |
3gb5Zi3sDzs8oNAUiHlvd2SjBRZnnoAlQ3l1eIbEFlbsciNCglGuFw8sNNLyAEZb (BASE 64)
Response Body
Field |
Data type |
Mandatory |
Description |
---|---|---|---|
version |
String |
Y |
Defines the version of the API. |
status |
String |
Y |
Defines the response status. For a successful response, its value will be “success”. |
data |
Object |
Y |
This is the element which encapsulates the API response. For this API, its value is null. |
secret |
String |
Y |
This is the new authentication secret generated on the change of signing algorithm. |
HTTP status codes, error codes, and messages
HTTP response code |
Error code |
Error message |
Scenario |
---|---|---|---|
400 |
101017 |
Invalid request |
If signing algorithm is invalid. Any other request body validation failure. |
404 |
101018 |
Singing algorithm not configured |
If signing algorithm is fetched while it is not configured at the tenant level. |
404 |
101019 |
Authentication Secret not configured |
If Authentication Secret is fetched while it is not configured at the tenant level. |
403 |
|
|
Unauthorized user if anybody other than the Super Admin tries to access. Invalid tenant ID/FQDN. |
500 |
101020 |
Internal server error |
Internal server error. |
{
"version": "1",
"status": "failure",
"error": {
"code": 101017,
"message": "Invalid request",
"errors": []
}
}
Generate a server token
Use the following procedure to generate a server token.
- Log into the System Console.
- Go to Advanced > VidyoEpic > Security Management > Portal Token: <generate>.
- Select OK. The Confirm page displays.
- Select Yes. The Portal Token is generated and appears on the Message page.
- Take note of the generated Token (you will need it in the next procedure) and then click OK.
Configure the VidyoPortal Token Level Event Service
Setup prerequisites
To complete the setup, you need the following:
- ServerToken: This is the Portal Token generated in the Generate a server token section.
- Super Admin credentials.
Set the Portal Token on the VidyoPortal (REST API)
URL: https://{tenantFQDN}/admin/api/v1/serverTokens
Method: POST
Authentication: Super credentials
Request Body
Field |
Data type |
Mandatory |
Description |
Validations |
---|---|---|---|---|
serverToken |
String |
Y |
Token is in GUID format |
It is validated by GUID 8-3-3-3-12 characters (alphanumeric). |
{
"token": "c060aea2-5d5c-4792-b162-e7f6bfe5472d"
}
Response Body
Field |
Data type |
Mandatory |
Description |
---|---|---|---|
version |
String |
Y |
Defines the version of the API. |
status |
String |
Y |
Defines the response status. For a successful response, its value will be “success”. |
data |
Object |
Y |
This is the element which encapsulates the API response. For this API, its value is null. |
{
"version": "1",
"status": "success",
"data": null
}
HTTP status codes, error codes, and messages
HTTP response code |
Error code |
Error message |
Scenario |
---|---|---|---|
400 |
|
Bad request |
|
401 |
|
Unauthorized |
|
403 |
|
Forbidden |
|
500 |
|
Internal server error |
|
{
"version": "1",
"status": "failure",
"error": {
"code": 101033,
"message": "Bad request",
"errors": []
}
}