Authorization
Authorization in JSON-RPC API
API access requires authorization.
Create an API user in the Cove Data Protection Management Console, then use the generated token to authorize API requests. See the user management section in the main User Guide for detailed information on managing users.
Add API Users
Create API users for your company or your customers.
API users can access Cove's API, but are restricted from logging into the Cove Management Console.
- Log in to the Management Console using a SuperUser or Administrator account.
- In the vertical menu, navigate to Management > Users > API Users.
- Select Add API user.
- Complete the fields for the new API user:
- Choose the **Customer **to create the user for.
- Enter an API user Login name.
- Select the appropriate user role from the **Role **dropdown.
See User Role Permissions in the main user guide for details on each user role and its permissions.
- If the user requires additional permissions, select the checkbox for Security Officer.
- Select Save and continue.
- Save the token:
- Select Copy token to clipboard to copy the token.
- Select Download token to save the token as a file.
- Select Copy and close to add the API user.
This token is only displayed once, so save it securely.
If lost, delete and recreate the API user to generate a new token.
Visa (session token)
In a response to your authorization request (Login), you will get a visa. This is a required parameter for all further requests. The visa stays valid for 15 minutes.
Each response contains a new visa. You can use visas from previous calls to keep the visa chain uninterrupted. If the interval between service calls exceeds 15 minutes, you will need to repeat the Login request and start a new visa chain.
Required parameters
| Parameter | Description | Type/Supported values |
|---|---|---|
| partner | The name of the customer you want to log in under | std::string String |
| username | Your email address for access to the service | std::string String |
| password | Your password for access to the service | std::string String |
Sample request
{
"jsonrpc":"2.0",
"method":"Login",
"params":{
"partner":"Smart Telecom Inc.",
"username":"[email protected]",
"password":"sec1234!6"
},
"id":"1"
}Sample response
{
"id": "1",
"jsonrpc": "2.0",
"result": {
"result": {
"EmailAddress": "[email protected]",
"FirstLoginTime": 1464945879,
"FirstName": "Christine",
"Flags": [
"AllowApiAuthentication"
],
"FullName": "Smith",
"Id": 50193,
"LastLoginTime": 1512383091,
"Name": "[email protected]",
"PartnerId": 33491,
"Password": null,
"PhoneNumber": "",
"RoleId": 1,
"Title": "Reseller",
"TwoFactorAuthenticationStatus": "Enabled"
}
},
"visa": "{{visa}}"
}