The Current Usage endpoint delivers current license usage metrics, as detailed below.
Obtaining information about usage on multiple hosts (Current Usage On Multiple Hosts report)
You can easily list users that are using licenses on multiple hosts by sending the following HTTP request.
GET /api/v1/report/current-usage/on-multiple-hosts/${returnType}?(parameters, as needed)
where $ indicates a variable value that you can replace with a value that best suits your needs. The possible parameters are described below.
Parameter | Required | Type | Description |
---|---|---|---|
${returnType} | Yes | string | Specifies the format in which the data should be returned. The format can be one of the following: json, csv, xlsx, or pdf. |
fieldsVisibility | No | json/string | Specifies field visibility settings, for example: {"un": "1", "hl": "1", "fns": "1", "fv":"1"} where number "1" indicates that a specific field is visible. Note that the order of the settings you make is important – when exported, the fields will be visible in exactly the same order you specify here. |
rn | No | string | Specifies the name of the report that will be displayed once the report has been exported to PDF or XLSX. For CSV and JSON formats this parameter will be ignored. If you don't pass this parameter, it will be generated automatically for PDF and XLSX types. If provided, it cannot be left empty. |
filter | No | json/string | Applies filtering license usage data on all fields. To filter by a string column, use the following format. [ { "type": "string", "field": "${ fns | fv | ftype | vn | lsn | un | hl }", "value": "${value}" } ] To filter by a numeric column, use the following format. [ { "type": "numeric", "comparison": "${gt | lt | eq}", "field": "${ fid, lsid, uid }", "value": "${value}" } ] |
limit | No | integer | Determines the maximum number of data records that can be returned. The value must be greater than zero. |
offset | No | integer | Specifies the offset of the first row to return. |
orderBy | No | string | Specifies the field by which you want to order your data records. The field name can be one of the following: fid, fns, fv, ftype, vn, lsid, lsn, uid, un, hl (See this section for more field-specific information.) |
orderDirection | No | string | Determines whether the sorting results will be displayed in an ascending (ASC) or a descending (DESC) order. |
Response
The following code block shows an example result of a successful request.
{ success: ${success}, msg: ${message}, data: [{ "fid": ${featureId}, "fns": ${featureName}, "fv": ${featureVersion}, "ftype": ${featureType}, "vn": ${vendorName}, "lsid": ${licenseServerId}, "lsn": ${licenseServerName}, "uid": ${userId}, "un": ${userName}, "hl": ${hostList}, "uil": ${hasUserLdapDetails} }], "code": ${errorCode}, "totalCount": ${totalCount} }
where the response fields can be explained as follows.
Field | Type | Description |
---|---|---|
fid | integer | Feature ID. |
fns | string | Feature name. |
fv | string | Feature version. |
ftype | string | Feature type. |
vn | string | License server vendor name. |
lsid | integer | License server ID. |
lsn | string | License server name. |
uid | integer | User ID. |
un | string | Username. |
hl | string | List of hostnames separated by a semicolon (;). |
uil | boolean | Indicates whether user details have been imported from an LDAP directory. Note that you cannot filter and order data by this field. |
msg | string | Error message returned on failure. |
success | boolean | Indicates wheher your API request was successfully processed. |
Example
The following example shows a command that obtains information about users using features on multiple hosts.
curl -H "X-Auth-token: token" "http://yourdomain/api/v1/report/current-usage/on-multiple-hosts/json"
Obtaining information about usage above/below N hours (report Current Usage By Time Range)
You can easily list data about features currently in use for more/less than N hours by sending the following HTTP request
GET /api/v1/report/current-usage/above-n-hours/${returnType}?ab=${hoursAbove}&bl=${hoursBelow}&(additional parameters, as needed)
where $ indicates a variable value that you can replace with a value that best suits your needs. The possible parameters are described below.
Parameter | Required | Type | Description |
---|---|---|---|
${returnType} | Yes | string | Specifies the format in which the data should be returned. The format can be one of the following: json, csv, xlsx, or pdf. |
ab | No | integer | Specifies the minimum number of hours a license has to be used to be listed. If not provided is defaults to value "-1" which is equivalent to no constraint. |
bl | No | integer | Specifies the maximum number of hours a license has to be used to be listed. If not provided is defaults to value "-1" which is equivalent to no constraint. Value must be greater than value of 'ab' parameter (does not apply for "-1" values). |
fieldsVisibility | No | json/string | Specifies field visibility settings, for example: {"fid": "1", "fns": "1", "fv": "1", "ftype":"1", "vn": "1", "lsid": "1", "lsn": "1", "uid": "1", "un": "1", "hn": "1", "lus": "1", "tu": "1" } where number "1" indicates that a specific field is visible. Note that the order of the settings you make is important – when exported, the fields will be visible in exactly the same order you specify here. |
rn | No | string | Specifies the name of the report that will be displayed once the report has been exported to PDF or XLSX. For CSV and JSON formats this parameter will be ignored. If you don't pass this parameter, it will be generated automatically for PDF and XLSX types. If provided, it cannot be left empty. |
filter | No | json/string | Applies filtering license usage data on all fields. To filter by a string column, use the following format:
[ { "type": "string", "field": "${fns | fv | ftype | vn | lsn | un | hn}", "value": "${value}" } ] To filter by a numeric column, use the following format: [ { "type": "numeric", "comparison": "${gt | lt | eq}", "field": "${fid | lsid | uid | lus}", "value": "${value}" } ] |
limit | No | integer | Determines the maximum number of data records that can be returned. The value must be greater than zero. |
offset | No | integer | Specifies the offset of the first row to return. |
orderBy | No | string | Specifies the field by which you want to order your data records. The field name can be one of the following: fid, fns, fv, ftype, vn, lsid, lsn, uid, un, hn, lus, tu (See this section for more field-specific information.) |
orderDirection | No | string | Determines whether the sorting results will be displayed in an ascending (ASC) or a descending (DESC) order. |
Response
The following code block shows an example result of a successful request.
{ success: ${success}, msg: ${message}, data: [{ "fid": ${featureId}, "fns": ${featureName}, "fv": ${featureVersion}, "ftype": ${featureType}, "vn": ${vendorName}, "lsid": ${licenseServerId}, "lsn": ${licenseServerName}, "uid": ${userId}, "un": ${userName}, "hn": ${hostName}, "lus": ${licensesUsed}, "tu": ${timeUsed}, "uil": ${ldapUser}, }], "code": ${errorCode}, "totalCount": ${totalCount} }
where the response fields can be explained as follows:
Field | Type | Description |
---|---|---|
fid | integer | Feature ID. |
fns | string | Feature Name. |
fv | string | Feature version. |
ftype | string | Feature type. |
vn | string | Vendor name. |
lsid | integer | License Server ID. |
lsn | string | License Server name. |
uid | integer | User ID. |
un | string | Username. |
hn | string | Hostname. |
lus | integer | Total number of licenses used by user on host. |
tu | string | Indicates how long license has been in use, f.e 1d 2h 10 min. Note that you cannot filter on this field |
uil | boolean | Indicates whether user details have been imported from an LDAP directory. Note that you cannot filter and order data by this field. |
msg | string | Error message returned on failure. |
success | boolean | Indicates whether your API request was successfully processed. |
code | integer | Error code for unsuccessful request. |
totalCount | integer | Total number of all matching results. |
Example
The following example shows a command that downloads data in CSV format about features currently in use for at least 24 hours.
curl -H "X-Auth-token: token" "http://yourdomain/api/v1/report/current-usage/above-n-hours/csv?ab=24"