NAV Navigation
Shell HTTP JavaScript Ruby Python PHP Java Go

License Management API v2.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Authentication

License Management

Endpoints supporting the update and review of active licenses.

Returns a description of the currently installed license

Code samples

# You can also use wget
curl -X GET /api/v2/license \
-H 'Accept: application/json'
GET /api/v2/license HTTP/1.1

Accept: application/json

const headers = {
'Accept':'application/json'
};

fetch('/api/v2/license',
{
method: 'GET',

headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'

headers = {
'Accept' => 'application/json'
}

result = RestClient.get '/api/v2/license',
params: {
}, headers: headers

p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}

r = requests.get('/api/v2/license', headers = headers)

print(r.json())
<?php

require 'vendor/autoload.php';

$headers = array(
'Accept' => 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','/api/v2/license', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

// ...
URL obj = new URL("/api/v2/license");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
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());
package main

import (
"bytes"
"net/http"
)

func main() {

headers := map[string][]string{
"Accept": []string{"application/json"},
}

data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/api/v2/license", data)
req.Header = headers

client := &http.Client{}
resp, err := client.Do(req)
// ...
}

GET /api/v2/license

Returns details of the active license along with usage information against each of the licensed Entitlement Limits.

Example responses

200 Response

{
"licenseId": "be894337-ec7c-4bdc-ac72-f939e31237ae",
"licenseName": "halo:license",
"productId": "dcd53ddb-8104-4e48-8cc0-5df1088c6113",
"policyName": "halo:bronze_level:contract",
"licenseHolder": "glasswall",
"daysLeft": 0,
"startDate": "2019-08-24",
"expirationDate": "2019-08-24",
"status": "active",
"entitlements": [
"Glasswall Embedded Engine: Main",
"Glasswall Embedded Engine: Protect",
"Glasswall Embedded Engine: Analysis",
"Glasswall Embedded Engine: Export / Import",
"Glasswall Halo: File Analysis Protect"
],
"entitlementLimits": {
"haloProcessingFileLimit": {
"limit": "12k",
"tally": 123
},
"haloProcessingDataLimit": {
"limit": "unlimited",
"tally": 4567
}
},
"anomalies": [
{
"source": "string",
"message": "string",
"time": "2019-08-24T14:15:22Z"
}
]
}

401 Response

[
"Unauthorised request"
]

404 Response

[
"License not found"
]

5XX Response

[
"System error processing request"
]

Responses

Status Meaning Description Schema
200 OK License description LicenseDetails
401 Unauthorized Unauthorised Request Error
404 Not Found License not found Error
5XX Unknown Processing Error Error

Response Headers

Status Header Type Format Description
200 Cache-Control string Prevent sensitive information from being cached.
200 ContentTypeHeader string Indicates the response content type
200 ContentTypeOptionsHeader string To prevent browsers from performing MIME sniffing, and inappropriately interpreting responses as HTML.
200 FrameOptionsHeader string To protect against drag-and-drop style clickjacking attacks.
200 ContentSecurityPolicyHeader string To protect against drag-and-drop style clickjacking attacks.
200 StrictTransportSecurityHeader string Uses a week long max-age to prevent any communications from being sent to this domain over HTTP

Schemas

LicenseId

"497f6eca-6276-4993-bfeb-53cbbbba6f08"

Unique identity of a license.

Properties

Name Type Required Restrictions Description
anonymous string(uuid) false none Unique identity of a license.

LicenseName

"halo:license"

Name assigned to the license when issued.

Properties

Name Type Required Restrictions Description
anonymous string false none Name assigned to the license when issued.

ProductId

"497f6eca-6276-4993-bfeb-53cbbbba6f08"

Unique identity of the product for which the license has been issued.

Properties

Name Type Required Restrictions Description
anonymous string(uuid) false none Unique identity of the product for which the license has been issued.

PolicyName-2

"halo:bronze_level:contract"

Identifies the policy. The naming convention for creating new products is all lower case, with underscore separation of words.

Properties

Name Type Required Restrictions Description
anonymous string false none Identifies the policy. The naming convention for creating new products is all lower case, with underscore separation of words.

LicenseHolder

"glasswall"

Identifies the license holder. Read from the name of the ‘Group’ component within the License.

Properties

Name Type Required Restrictions Description
anonymous string false none Identifies the license holder. Read from the name of the ‘Group’ component within the License.

LicenseDayCount

0

Records how many days remain on the license before expiry.

Properties

Name Type Required Restrictions Description
anonymous integer false none Records how many days remain on the license before expiry.

LicenseDate

"2019-08-24"

Definition of date format string used in licenses.

Properties

Name Type Required Restrictions Description
anonymous string(date) false none Definition of date format string used in licenses.

LicenseStatus

"active"

Identifies the operational status of a validated license.

Properties

Name Type Required Restrictions Description
anonymous string false none Identifies the operational status of a validated license.

Enumerated Values

Property Value
anonymous active
anonymous expired

LicenseEntitlementName

"Embedded Engine: Main"

Name of the entitlement taken from the name property in the license.

Properties

Name Type Required Restrictions Description
anonymous string false none Name of the entitlement taken from the name property in the license.

LicenseEntitlementList

[
"Glasswall Embedded Engine: Main",
"Glasswall Embedded Engine: Protect",
"Glasswall Embedded Engine: Analysis",
"Glasswall Embedded Engine: Export / Import",
"Glasswall Halo: File Analysis Protect"
]

List of license entitlements.

Properties

Name Type Required Restrictions Description
anonymous [LicenseEntitlementName] false none List of license entitlements.

DecimalSIStringValue

"12M"

Define a string value that uses Decimal SI to size an integer value.

Properties

Name Type Required Restrictions Description
anonymous string false none Define a string value that uses Decimal SI to size an integer value.

LicenseEntitlementLimit

"Unlimited"

Properties

oneOf

Name Type Required Restrictions Description
anonymous string false none none

xor

Name Type Required Restrictions Description
anonymous DecimalSIStringValue false none Define a string value that uses Decimal SI to size an integer value.

Enumerated Values

Property Value
anonymous Unlimited

LicenseEntitlementTally

0

Reported value of a Entitlement Limit Tally

Properties

Name Type Required Restrictions Description
anonymous integer(int64) false none Reported value of a Entitlement Limit Tally

LicenseEntitlementLimitUsageItem

{
"limit": "Unlimited",
"tally": 0
}

Reports that tally value against the associated entitlement limit.

Properties

Name Type Required Restrictions Description
limit LicenseEntitlementLimit false none none
tally LicenseEntitlementTally false none Reported value of a Entitlement Limit Tally

LicenseEntitlementLimitUsageList

{
"haloProcessingFileLimit": {
"limit": "12k",
"tally": 123
},
"haloProcessingDataLimit": {
"limit": "unlimited",
"tally": 4567
}
}

List reporting the tally and limit values for each license entitlement limit.

Properties

Name Type Required Restrictions Description
additionalProperties LicenseEntitlementLimitUsageItem false none Reports that tally value against the associated entitlement limit.

AnomalySource

"string"

Provided by the source property of the reporting event.

Properties

Name Type Required Restrictions Description
anonymous string false none Provided by the source property of the reporting event.

AnomalyMessage

"string"

Description of the detected anomaly.

Properties

Name Type Required Restrictions Description
anonymous string false none Description of the detected anomaly.

Timestamp

"2019-08-24T14:15:22Z"

Properties

Name Type Required Restrictions Description
anonymous string(date-time) false none none

AnomalyItem

{
"source": "string",
"message": "string",
"time": "2019-08-24T14:15:22Z"
}

Properties

Name Type Required Restrictions Description
source AnomalySource true none Provided by the source property of the reporting event.
message AnomalyMessage true none Description of the detected anomaly.
time Timestamp true none none

LicenseAnomalyList

[
{
"source": "string",
"message": "string",
"time": "2019-08-24T14:15:22Z"
}
]

Properties

Name Type Required Restrictions Description
anonymous [AnomalyItem] false none none

LicenseDetails

{
"licenseId": "be894337-ec7c-4bdc-ac72-f939e31237ae",
"licenseName": "halo:license",
"productId": "dcd53ddb-8104-4e48-8cc0-5df1088c6113",
"policyName": "halo:bronze_level:contract",
"licenseHolder": "glasswall",
"daysLeft": 0,
"startDate": "2019-08-24",
"expirationDate": "2019-08-24",
"status": "active",
"entitlements": [
"Glasswall Embedded Engine: Main",
"Glasswall Embedded Engine: Protect",
"Glasswall Embedded Engine: Analysis",
"Glasswall Embedded Engine: Export / Import",
"Glasswall Halo: File Analysis Protect"
],
"entitlementLimits": {
"haloProcessingFileLimit": {
"limit": "12k",
"tally": 123
},
"haloProcessingDataLimit": {
"limit": "unlimited",
"tally": 4567
}
},
"anomalies": [
{
"source": "string",
"message": "string",
"time": "2019-08-24T14:15:22Z"
}
]
}

Provides detailed information of the license contents

Properties

Name Type Required Restrictions Description
licenseId LicenseId true none Unique identity of a license.
licenseName LicenseName true none Name assigned to the license when issued.
productId ProductId true none Unique identity of the product for which the license has been issued.
policyName PolicyName-2 false none Identifies the policy. The naming convention for creating new products is all lower case, with underscore separation of words.
licenseHolder LicenseHolder true none Identifies the license holder. Read from the name of the ‘Group’ component within the License.
daysLeft LicenseDayCount true none Records how many days remain on the license before expiry.
startDate LicenseDate true none Definition of date format string used in licenses.
expirationDate LicenseDate true none Definition of date format string used in licenses.
status LicenseStatus true none Identifies the operational status of a validated license.
entitlements LicenseEntitlementList true none List of license entitlements.
entitlementLimits LicenseEntitlementLimitUsageList true none List reporting the tally and limit values for each license entitlement limit.
anomalies LicenseAnomalyList false none none

Error

[
"string"
]

Properties

None