Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

With License Statistics API lets , you generatecan easily generate information about Denials, i.e. about users that were denied access to applications due to checkout requests exceeding the number of available licenses.  

This  data from the Denials report. This report shows how many license checkout requests were denied and how often the denials took place.

...

If you want to retrieve information about denials for the username and hostname for each denial, we recommend that you use the following URL request template.

...

- $ indicates a variable value that you can replace with an appropriate a proper value, as neededaccording to your needs

- the possible parameters are as follows:

ParameterRequiredTypeDescription
${featureId}Yesinteger

Specifies id ID of the feature which will be the subject of the reportfor which you want to view denied requests.

${returnType}YesstringSpecifies the format in which license usage the data should be returned. The format can be one of the following: json, csv, xls or pdf.
sdYesstringSpecifies starting date from which you want to generate the report. The date and time format is as follows: YYYY-MM-DD, ; for example, 20152017-01-20.
ed

Yes

stringSpecifies end date from which you want to generate the report. Date format as above. Date The date and time format is YYYY-MM-DD; for example, 2017-01-20. The date is inclusive, meaning that all data from the a particular day will be included in the report.
fieldsVisibility Nojson/string

Specifies field visibility settings, for example:

Code Block
languagejs
firstline1
linenumberstrue
{"un": "1", "hn": "1", "ldt": "1", "ldtc":"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.

rnNostringSpecifies the name of the report that will be displayed once the report has been exported to PDF been exported to PDF or XLS. 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 XLS types. If provided, it cannot be left empty.
filterNojson/string

Applies filtering license usage data on all fields.

To filter by string column, use the following format:

Code Block
languagejs
firstline1
linenumberstrue
[
	{ 
		"type": "string",
		"field": "${un | hn | ldt}",
		"value": "${value}"
	}
]
To filter by numeric column, use the following format: 
Code Block
languagejs
firstline1
[
	{ 
		"type": "numeric", 
		"comparison": "${gt | lt | eq}", 
		"field": "ldtc",
		"value": "${value}" 
	}
]
limitNointegerDetermines the maximum number of data records that can be returned. The value must be greater than zero.
offsetNointegerSpecifies the offset of the first row to return.
orderByNostring

Specifies the field by which you want to order your data records. The field name can be one of the following: un, hn, ldt, ldtc.

orderDirectionNostringDetermines whether the sorting results will be displayed in an ascending (ASC) or a descending (DESC) order.

If your request is successful, you should see a response similar to the following: 

Code Block
languagejs
firstline1
linenumberstrue
  {
      success: ${success},
      msg: ${message},
      data: [{
        "un": ${userName},
        "hn": ${hostName},
        "ldt": ${licenseDenialTime},
        "ldtc": ${licenseDenialTotalCount}
      }],
	  "code": ${errorCode},
	  "totalCount": ${totalCount}
  }

...

FieldTypeDescription

un

string

Username.

hn

string

Hostname.

ldt

string

License Denial Time in YYYY-MM-DD format

ldtc

string

Total number of denied license checkout requests.

License Denial Total Count.

msg

string

Error message returned on failure.

success

boolean

Indicates if whether the API request was successfully processed. 

codeinteger

Error code if success == false

Error code for unsuccessful request.?

totalCountinteger

Total number of all matching results.

Count of all matching results.


Example 1

For example, say Say you would like to view denials for feature 3 over some period of time. To generate such data, enter a command that is command similar to the following:

Code Block
languagejs
firstline1
linenumberstrue
curl --data "sd=2015-01-01" --data "ed=2015-01-02" -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/json"

Example 2

Let's assume you want to see all denials for feature 3 ordered by username over a specific period of time. To do this, enter a command similar to the followingthis one:

Code Block
languagejs
firstline1
linenumberstrue
curl --data "orderBy=un" --data "orderDirection=ASC" --data "sd=2015-01-01" --data "ed=2015-01-02" -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/json"

Example 3

Let's assume say you're interested in viewing the first 100 denials for feature 3 over a specific period of time. To do this, enter a command that is similar to the following:

Code Block
languagejs
firstline1
linenumberstrue
curl --data "limit=100" --data "offset=0" --data "sd=2015-01-01" --data "ed=2015-01-02" -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/json"


Keep in mind that you can also put parameters directly in the URL, f.e for an equivalent of the above:

Keep in mind that you can also put parameters directly into the URL, e.g. to generate data for the above example, the command would look like this:

Code Block
language
Code Block
languagejs
firstline1
linenumberstrue
curl -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/json?limit=100&offset=0&sd=2014-12-01&ed=2015-01-02"

Obtaining information about grouped checkout denials 

If you want to retrieve information about denials for username and hostname, we recommend that you use the following URL request template. 

...

- $ indicates a variable value that you can replace with an appropriate a proper value, as neededaccording to your needs

- the possible parameters are as follows: 

ParameterRequiredTypeDescription
${featureId}Yesinteger

Specifies id ID of the feature which will be the subject of the reportfor which you want to view grouped checkout denials.

${returnType}YesstringSpecifies the format in which license usage the data should be returned. The format can be one of the following: json, csv, xls or pdf.
sdYesstring

 Specifies starting date from which you want to generate the report. The date and time format is

as follows:

YYYY-MM-DD

,

; for example,

2015

2017-01-20.

ed

Yes

stringSpecifies end date from which you want to generate the report. Date format as above. Date The date and time format is YYYY-MM-DD; for example, 2017-01-20. The date is inclusive, meaning that all data from the a particular day will be included in the report.
granularityYesinteger  Specifies Specifies granularity of the returned data, which and can be one of the following:
 
  • Quarter - 2
  • Month - 3
  • Week - 4
  • Day - 5
  • Hour - 6

By default, this parameter is set to show monthly statistics.???

fieldsVisibility Nojson/string

Specifies field visibility settings, for example:

Code Block
languagejs
firstline1
linenumberstrue
{"ldt": "1", "ldtc":"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.

rnNostringSpecifies the name of the report that will be displayed once the report has been exported to PDF to PDF or XLS. 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 XLS types. If provided, it cannot be left empty.
filterNojson/string

Applies filtering license usage data on all fields.

To filter by string column, use the following format: 

Code Block
languagejs
firstline1
linenumberstrue
[
	{ 
		"type": "string",
		"field": "ldt",
		"value": "${value}"
	}
]

To filter by numeric column, use the following format: 
Code Block
languagejs
firstline1
[
	{ 
		"type": "numeric", 
		"comparison": "${gt | lt | eq}", 
		"field": "ldtc",
		"value": "${value}" 
	}
]
limitNointegerDetermines the maximum number of data records that can be returned. The value must be greater than zero.
offsetNointegerSpecifies the offset of the first row to return.
orderByNostring

Specifies the field by which you want to order your data records. The field name can be one of the following: un, hn, ldt, ldtc.

orderDirectionNostringDetermines whether the sorting results will be displayed in ascending (ASC) or descending (DESC) order.


If your request is successful, you should see a response similar to the following:    

Code Block
languagejs
firstline1
linenumberstrue
  {
      success: ${success},
      msg: ${message},
      data: [{
        "ldt": ${licenseDenialTime},
        "ldtc": ${licenseDenialTotalCount}
      }]
  }

where the response fields can be explained as follows:

FieldTypeDescription

ldt

string

Indicates period of time for which usage information is generated, i.e. date and time for hourly usage and dates for the remaining granularity options.

ldtc

string

License Denial Total Count

Total number of denied license checkout requests.

msg

string

Error message returned on failure.

success

boolean

Indicates if the API request was successfully processed.

msg

string

Error message returned on failure.

codeinteger

Error code if success == false

Error code for unsuccessful request.?

totalCountinteger

Count

of all matching results

of all matching results.

Total number of denied license checkout requests.


Example 1

For example, say Say you would like to view denials for feature 3 grouped by month. To generate such data, enter a command that is command similar to the followingthis one:

Code Block
languagejs
firstline1
linenumberstrue
curl --data "sd=2015-01-01" --data "ed=2015-01-02" --data "grat=3" -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/grouped/json"

Example 2

Let's assume you want to see all denials for feature 3, grouped by quarter, ordered by total denial count from highest to lowest. To do this, enter a command similar to the following:

Code Block
languagejs
firstline1
linenumberstrue
curl --data "orderBy=ldtc" --data "orderDirection=DESC" --data "sd=2014-01-01" --data "ed=2015-01-01" --data "grat=2" -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/grouped/json"

Example 3

Let's assume say you're interested in viewing the first 100 denials for feature 3 over a specific period of time, grouped by hour. To do this, enter a command that is similar to the following:

Code Block
languagejs
firstline1
linenumberstrue
curl --data "limit=100" --data "offset=0" --data "sd=2013-01-01" --data "ed=2015-01-02" --data "grat=6" -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/grouped/json"


Similarly, as in the case of checkout denials, you can also put parameters directly in into the URL, f.e for an equivalent of the above:

Keep in mind that you can also put parameters directly into the URL, e.g. to generate data for the above example, the command would look like this:

Code Block
languagejs
firstline1
linenumberstrue
curl -H "X-Auth-token: token" "http://yourdomain/api/v1/report/feature/3/denials/grouped/json?limit=5&offset=2&sd=2013-01-01&ed=2015-01-02&grat=6"