Download PDF
Download page License API.
License API
This page describes the License APIs you can use to perform functions related to licensing and accounts including uploading license files, allocating licenses, getting license and account usage information as well as creating, updating, and deleting license rules.
The License APIs below are separated by licensing model. To learn about licenses within each model, see License Entitlements and Restrictions.
APIs for Infrastructure-based Licensing:
License Usage API
A RESTful API to programmatically retrieve overall license usage by application ID or name, or by host ID.
Retrieve Usage by Application ID
You can retrieve license usage details (such as vCPU count) for an application by application ID.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/grouped-usage/application/by-id
Format
GET /controller/licensing/v1/account/{accountId}/grouped-usage/application/by-id
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Array | A set of application IDs. | Yes |
includeAgents | Boolean | Flag indicates whether the list of agents is required in response. | No |
Response Format
response appObject
Parameter Name | Parameter Type | Value |
---|---|---|
vCpuTotal | Integer | Total number of vCPUs on hosts where all applications are running. |
fallbackLicenseUnits | Object | Total number of (fallback) license units used by the applications per package name. |
items | Object | Detail of usages by application. |
appItemObject
Parameter Name | Parameter Type | Value |
---|---|---|
appId | Integer | Application ID. |
appName | String | Application name. |
vCpu | Integer | Number of vCPU on the host. |
nodes | Object (nodeObject ) | Nodes where the application is running. |
containers | Object (containerObject ) | Containers where the application is running. |
agents | Object (agentObject ) | (Optional) License keys associated with all agents. |
hosts | Object (hostObject ) | Hosts where the application is running. Will be |
nodeObject
Parameter Name | Parameter Type | Value |
---|---|---|
nodeName | String | Node name. |
containerObject
Parameter Name | Parameter Type | Value |
---|---|---|
containerId | String | Container ID. |
agentObject
Parameter Name | Parameter Type | Value |
---|---|---|
type | String | Agent type. |
version | String | Agent version. |
licenseKey | String | License key used to obtain lease. |
hostObject
Parameter Name | Parameter Type | Value |
---|---|---|
vCpuTotal | Integer | Total number of vCPUs on hosts. |
items | Object | Detail of usages by host. |
hostItemObject
Parameter Name | Parameter Type | Value |
---|---|---|
host | String | Host name. |
fallbackLicenseUnits | Object | License unit used by the application/host per package name. |
vCpu | Integer | Number of vCPU on the host. |
nodes | Object (nodeObject ) | Number of nodes on the host. |
containers | Object (containerObject ) | Number of containers on the host. |
agents | Object (agentObject ) | (Optional) License keys associated with all agents. |
application | Object (appItemObject ) | Applications running on the host. Will be null when this object is self-referenced. |
Example
curl --user <user>@<AccountName>:<password> "http://<host>:<port>/controller/licensing/v1/account/{accountId}/grouped-usage/application/by-id?appId={appId1}&appId={appId2}"
{
"vCpuTotal": 4,
"items": {
"13": {
"appId": 13,
"appName": "ecommerce-demo",
"vCpu": 4,
"nodes": [
{
"nodeName": "ecommerce-demo-web-node-1"
},
{
"nodeName": "ecommerce-demo-web-node-2"
}
],
"containers": [
{
"containerId": "ecommerce-demo-web-1"
},
{
"containerId": "ecommerce-demo-web-2"
}
],
"agents": [
{
"type": "APP_AGENT",
"version": "21.4.0",
"licenseKey": "secret"
}
],
"hosts": {
"vCpuTotal": 4,
"items": {
"ip-10-20-30-40": {
"vCpu": 4,
"host": "ip-10-20-30-40",
"nodes": [
{
"nodeName": "ecommerce-demo-web-node-1"
},
{
"nodeName": "ecommerce-demo-web-node-2"
}
],
"containers": [
{
"containerId": "ecommerce-demo-web-1"
},
{
"containerId": "ecommerce-demo-web-2"
}
],
"agents": [
{
"type": "APP_AGENT",
"version": "21.4.0",
"licenseKey": "secret"
}
],
"fallbackLicenseUnits": {}
}
}
}
}
}
}
Retrieve by Application Name
You can retrieve license usage details (such as vCPU count) for an application by application name.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/grouped-usage/application/by-name
Format
GET /controller/licensing/v1/account/{accountId}/grouped-usage/application/by-name
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Array | A set of (URL escaped) application names. | Yes |
includeAgents | Boolean | Flag indicates whether the list of agents is required in response. | No |
Response Format
response appObject
Parameter Name | Parameter Type | Value |
---|---|---|
vCpuTotal | Integer | Total number of vCPUs on hosts where all applications are running. |
fallbackLicenseUnits | Object | Total number of (fallback) license units used by the applications per package name. |
items | Object | Detail of usages by application. |
appItemObject
Parameter Name | Parameter Type | Value |
---|---|---|
appId | Integer | Application ID. |
appName | String | Application name. |
vCpu | Integer | Number of vCPUs on the host. |
nodes | Object (nodeObject ) | Nodes where the application is running. |
containers | Object (containerObject ) | Containers where the application is running. |
agents | Object (agentObject ) | (Optional) License keys associated with all agents. |
hosts | Object (hostObject ) | Hosts where the application is running. Will be |
nodeObject
Parameter Name | Parameter Type | Value |
---|---|---|
nodeName | String | Node name. |
containerObject
Parameter Name | Parameter Type | Value |
---|---|---|
containerId | String | Container ID. |
agentObject
Parameter Name | Parameter Type | Value |
---|---|---|
type | String | Agent type. |
version | String | Agent version. |
licenseKey | String | License key used to obtain lease. |
hostObject
Parameter Name | Parameter Type | Value |
---|---|---|
vCpuTotal | Integer | Total number of vCPUs on hosts. |
items | Object | Detail of usages by host. |
hostItemObject
Parameter Name | Parameter Type | Value |
---|---|---|
host | String | Host name. |
fallbackLicenseUnits | Object | License unit used by the application/host per package name. |
vCpu | Integer | Number of vCPU nodes on the host. |
nodes | Object (nodeObject ) | Nodes where the application is running. |
containers | Object (containerObject ) | Containers where the application is running. |
agents | Object (agentObject ) | (Optional) License keys associated with all agents. |
application | Object (appItemObject ) | Applications running on the host. Will be null when this object is self-referenced. |
Example
curl --user <user>@<AccountName>:<password> "http://<host>:<port>/controller/licensing/v1/account/{accountId}/grouped-usage/application/by-name?appName={appName1}&appName={appName2}"
{
"vCpuTotal": 4,
"items": {
"13": {
"appId": 13,
"appName": "ecommerce-demo",
"vCpu": 4,
"nodes": [
{
"nodeName": "ecommerce-demo-web-node-1"
},
{
"nodeName": "ecommerce-demo-web-node-2"
}
],
"containers": [
{
"containerId": "ecommerce-demo-web-1"
},
{
"containerId": "ecommerce-demo-web-2"
}
],
"agents": [
{
"type": "APP_AGENT",
"version": "21.4.0",
"licenseKey": "secret"
}
],
"hosts": {
"vCpuTotal": 4,
"items": {
"ip-10-20-30-40": {
"vCpu": 4,
"host": "ip-10-20-30-40",
"nodes": [
{
"nodeName": "ecommerce-demo-web-node-1"
},
{
"nodeName": "ecommerce-demo-web-node-2"
}
],
"containers": [
{
"containerId": "ecommerce-demo-web-1"
},
{
"containerId": "ecommerce-demo-web-2"
}
],
"agents": [
{
"type": "APP_AGENT",
"version": "21.4.0",
"licenseKey": "secret"
}
],
"fallbackLicenseUnits": {}
}
}
}
}
}
}
Retrieve Usage by Host ID
You can retrieve license usage information (such as vCPU count) for an application by host ID.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/grouped-usage/host
Format
GET /controller/licensing/v1/account/{accountId}/grouped-usage/host
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Array | A set of (URL escaped) host IDs. | Yes |
includeAgents | Boolean | A flag indicates whether the list of agents is required in response. | No |
Response Format
response hostObject
Parameter Name | Parameter Type | Value |
---|---|---|
vCpuTotal | Integer | Total number of vCPUs on hosts. |
items | Object | Detail of usages by host. |
hostItemObject
Parameter Name | Parameter Type | Value |
---|---|---|
host | String | Host name. |
fallbackLicenseUnits | Object | License unit used by the application/host per package name. |
vCpu | Integer | Number of vCPU on the host. |
nodes | Object (nodeObject ) | Number of nodes on the host. |
containers | Object (containerObject ) | Number of containers on the host. |
agents | Object (agentObject ) | (Optional) License keys associated with all agents. |
application | Object (appItemObject ) | Applications running on the host. Will be null when this object is self-referenced. |
nodeObject
Parameter Name | Parameter Type | Value |
---|---|---|
nodeName | String | Node name. |
containerObject
Parameter Name | Parameter Type | Value |
---|---|---|
containerId | String | Container ID. |
agentObject
Parameter Name | Parameter Type | Value |
---|---|---|
type | String | Agent type. |
version | String | Agent version. |
licenseKey | String | License key used to obtain lease. |
appObject
Parameter Name | Parameter Type | Value |
---|---|---|
vCpuTotal | Integer | Total number of vCPUs on hosts where all applications are running. |
fallbackLicenseUnits | Object | Total number of (fallback) license units used by the applications per package name. |
items | Object | Detail of usages by application. |
appItemObject
Parameter Name | Parameter Type | Value |
---|---|---|
appId | Integer | Application ID. |
appName | String | Application name. |
vCpu | Integer | Number of vCPU on the host. |
nodes | Object (nodeObject ) | Nodes where the application is running. |
containers | Object (containerObject ) | Containers where the application is running. |
agents | Object (agentObject ) | (Optional) License keys associated with all agents. |
hosts | Object (hostObject ) | Hosts where the application is running. Will be |
Example
curl --user <user>@<AccountName>:<password> "http://<host>:<port>/controller/licensing/v1/account/{accountId}/grouped-usage/host?hostId={hostId1}&hostId={hostId2}"
{
"vCpuTotal": 4,
"hosts": {
"vCpuTotal": 4,
"items": {
"ip-10-20-30-40": {
"vCpu": 4,
"host": "ip-10-20-30-40",
"nodes": [
{
"nodeName": "ecommerce-demo-web-node-1"
},
{
"nodeName": "ecommerce-demo-web-node-2"
}
],
"containers": [
{
"containerId": "ecommerce-demo-web-1"
},
{
"containerId": "ecommerce-demo-web-2"
}
],
"agents": [
{
"type": "APP_AGENT",
"version": "21.4.0",
"licenseKey": "secret"
}
],
"fallbackLicenseUnits": {},
"applications": {
"vCpuTotal": 4,
"items": {
"13": {
"appId": 13,
"appName": "ecommerce-demo",
"vCpu": 4,
"nodes": [
{
"nodeName": "ecommerce-demo-web-node-1"
},
{
"nodeName": "ecommerce-demo-web-node-2"
}
],
"containers": [
{
"containerId": "ecommerce-demo-web-1"
},
{
"containerId": "ecommerce-demo-web-2"
}
],
"agents": [
{
"type": "APP_AGENT",
"version": "21.4.0",
"licenseKey": "secret"
}
]
}
}
}
}
}
}
}
Account Usage API
A RESTful API to programmatically retrieve account usage by license and account ID.
Retrieve Account Usage by License ID
Retrieve account usage referenced by given license ID.
URL
http://<host>:<port>/controller/licensing/v1/usage/license/{licenseId}
Format
GET /controller/licensing/v1/usage/license/{licenseId}
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| String | License Id for which an usage is requested to be retrieved. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| String | Start date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
| String | End date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
| Integer | Requested granularity of the license usage data. | Yes |
| Boolean | Determines whether to include licensed entity type usage or not. The default is | No |
| Boolean | Whether to include consumption-based usages. he default is | No |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| Integer | Account ID. |
| Object | Entity representing license usage either for an account or for an allocation. |
| Array of package Objects |
licenseRule Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation ID. |
| String | Allocation name. |
| String | License key for this particular allocation. |
packageObject
Parameter Name | Parameter Type | Value |
---|---|---|
packageName | String | An enumeration representing the name of the package (edition) instance:
|
type | String | An enumeration representing the type of the package instance:
|
kind | String | Package kind derived from the licensing model where the package originated from. Useful for quickly distinguishing packages based on the legacy Agent based license modules (APM, DOTNET, etc.) from the new Infrastructure based packages. Enum: "AGENT_BASED" "INFRASTRUCTURE_BASED" |
family | String | Package family. |
createdDate | String | Creation date of the package instance in the license. ISO 8601 date-time string. |
startDate | String | Start date of the package instance. For example, the date from which the package instance becomes active: ISO 8601 date-time string. |
expirationDate | String | Expiration date of the package instance, i.e. date from which the package instance is no longer active. ISO 8601 date-time string. |
licenseUnits | String | Number of licenses available for the package instance. |
properties | Object | Collection of package specific custom properties in the form of key-value pairs. In case of merging with global properties, conflicting package specific properties take precedence. |
Example
curl --user <user>@<AccountName>:<password> -X GET \ http://<host>:<port>/controller/licensing/v1/usage/license/{licenseId}?dateFrom=<ISO 8601 date-time string>&dateTo=<ISO 8601 date-time string>&granularityMinutes=<number of minutes as an integer>
{
"accountId":0,
"licenseRule":{
"id":"string",
"name":"string",
"licenseKey":"string"
},
"packages":[
{
"name":"string",
"unitUsages":[
{
"usageType":"string",
"granularityInMinutes":0,
"data":{
"timestamp":"string",
"provisioned":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"used":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"registrations":[
{
"type":"string",
"registered":{
"min":0,
"max":0,
"avg":0,
"count":0
}
}
]
}
}
]
}
]
}
Retrieve Account Usage by Account ID
Retrieve account usage referenced by given account ID.
URL
http://<host>:<port>/controller/licensing/v1/usage/account/{accountId}
Format
GET /controller/licensing/v1/usage/account/{accountId}
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
accountId | Integer | Account ID for which a usage is requested to be retrieved. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
dateFrom | String | Start date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
dateTo | String | End date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
granularityMinutes | Integer | Requested granularity of the license usage data. | Yes |
includeEntityTypes | Boolean | Determines whether to include licensed entity type usage or not. The default is false. | No |
includeConsumptionBased | Boolean | Whether to include consumption-based usages. he default is false. | No |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| Integer | Account ID. |
| Object | Entity representing license usage either for an account or for an allocation. |
| Array | Package objects |
licenseRule Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation ID. |
| String | Allocation name. |
| String | License key for this particular allocation. |
packageObject
Parameter Name | Parameter Type | Value |
---|---|---|
packageName | String | An enumeration representing the name of the package (edition) instance:
|
type | String | An enumeration representing the type of the package instance:
|
kind | String | Package kind derived from the licensing model where the package originated from. Useful for quickly distinguishing packages based on the legacy Agent based license modules (APM, DOTNET, etc.) from the new Infrastructure based packages. Enum: "AGENT_BASED" "INFRASTRUCTURE_BASED" |
family | String | Package family. |
createdDate | String | Creation date of the package instance in the license. ISO 8601 date-time string. |
startDate | String | Start date of the package instance. For example, the date from which the package instance becomes active: ISO 8601 date-time string. |
expirationDate | String | Expiration date of the package instance, i.e. date from which the package instance is no longer active. ISO 8601 date-time string. |
licenseUnits | String | Number of licenses available for the package instance. |
properties | Object | Collection of package specific custom properties in the form of key-value pairs. In case of merging with global properties, conflicting package specific properties take precedence. |
Example
curl --user <user>@<AccountName>:<password> -X GET \ http://<host>:<port>/controller/licensing/v1/usage/account/{accountId}?dateFrom=<ISO 8601 date-time string>&dateTo=<ISO 8601 date-time string>&granularityMinutes=<number of minutes as an integer>
{
"accountId":0,
"licenseRule":{
"id":"string",
"name":"string",
"licenseKey":"string"
},
"packages":[
{
"name":"string",
"unitUsages":[
{
"usageType":"string",
"granularityInMinutes":0,
"data":{
"timestamp":"string",
"provisioned":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"used":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"registrations":[
{
"type":"string",
"registered":{
"min":0,
"max":0,
"avg":0,
"count":0
}
}
]
}
}
]
}
]
}
License Allocation API
The methods below allow you retrieve, create, filter, and delete license allocations (license rules) for an account.
Retrieve All License Allocations
Retrieve all license allocations, and narrow the list of allocations by using optional query parameters.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation
Format
GET /controller/licensing/v1/account/{accountId}/allocation
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| String | Name of the allocation. Cannot be used in combination with | No |
| String | License key of the allocation. Cannot be used in combination with | No |
| String | Tag associated with allocations. Cannot be used in combination with | No |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation ID. Unique per account. |
| Integer | Account ID the allocation belongs to. |
| String | Name of the allocation. Unique per account. |
| String | License key used by the allocation. Unique per account. |
| Array of Objects | Array of filter objects |
| Array of Objects | Array of |
| Array of Strings | Tags associated with the allocation. |
| String | Creation date of the allocation: ISO 8601 date-time string. |
| String | Last update date of the allocation: ISO 8601 date-time string. |
filter Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Name of the allocation. Unique per account. |
| String | Type of entity on which the filter should be applied. Enum: "APPLICATION" "HOST" |
| String | Operator of the following enumerations used to check the
|
| String | Value to be used to filter against. |
limit Object
Parameter Name | Parameter Type | Value |
---|---|---|
id | String | Allocation package limit ID. |
package | String | Type of package for the limit. The following are the supported enumerations:
|
units | Integer | Number of license units per the allocation limit. |
tags | Array of Strings | Tags associated with the allocation. |
Example
curl --user <user>@<AccountName>:<password> -X GET \ http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation
[
{
"id":"string",
"accountId":0,
"name":"string",
"licenseKey":"string",
"filters":[
{
"id":"string",
"type":"APPLICATION",
"operator":"ID_EQUALS",
"value":"string"
}
],
"limits":[
{
"id":"string",
"package":"INFRA",
"units":0
}
],
"tags":[
"string"
],
"createdDate":"string",
"lastUpdatedDate":"string"
}
]
Retrieve Allocation Usage by Account ID
Retrieve allocation rule usage referenced by a given license key ID.
URL
http://<host>:<port>/controller/licensing/v1/usage/account/{accountId}/allocation/{licenseKey}
Format
GET /controller/licensing/v1/usage/account/{accountId}/allocation/{licenseKey}
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
accountId | Integer | Account ID for which a usage is requested to be retrieved. | Yes |
licenseKey | String | License key based on the allocation rule is selected. Returned usage will be related to that particular allocation rule. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| String | Start date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
| String | End date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
| Integer | Requested granularity of the license usage data. | Yes |
| Boolean | Determines whether to include licensed entity type usage or not. The default is false. | No |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| Integer | Account ID. |
| Object | Entity representing license usage either for an account or for an allocation. |
| Array | Package objects. |
licenseRule Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation ID. |
| String | Allocation name. |
| String | License key for this particular allocation. |
packageObject
Parameter Name | Parameter Type | Value |
---|---|---|
Parameter Name | Parameter Type | Value |
packageName | String | An enumeration representing the name of the package (edition) instance:
|
type | String | An enumeration representing the type of the package instance:
|
kind | String | Package kind derived from the licensing model where the package originated from. Useful for quickly distinguishing packages based on the legacy Agent based license modules (APM, DOTNET, etc.) from the new Infrastructure based packages. Enum: "AGENT_BASED" "INFRASTRUCTURE_BASED" |
family | String | Package family. |
createdDate | String | Creation date of the package instance in the license. ISO 8601 date-time string. |
startDate | String | Start date of the package instance. For example, the date from which the package instance becomes active: ISO 8601 date-time string. |
expirationDate | String | Expiration date of the package instance, i.e. date from which the package instance is no longer active. ISO 8601 date-time string. |
licenseUnits | String | Number of licenses available for the package instance. |
properties | Object | Collection of package specific custom properties in the form of key-value pairs. In case of merging with global properties, conflicting package specific properties take precedence. |
Example
curl --user <user>@<AccountName>:<password> -X GET \ http://<host>:<port>/controller/licensing/v1/usage/account/{accountId}/allocation/{licenseKey}?dateFrom=<ISO 8601 date-time string>&dateTo=<ISO 8601 date-time string>&granularityMinutes=<number of minutes as an integer>
{
"accountId":0,
"licenseRule":{
"id":"string",
"name":"string",
"licenseKey":"string"
},
"packages":[
{
"name":"string",
"unitUsages":[
{
"usageType":"string",
"granularityInMinutes":0,
"data":{
"timestamp":"string",
"provisioned":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"used":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"registrations":[
{
"type":"string",
"registered":{
"min":0,
"max":0,
"avg":0,
"count":0
}
}
]
}
}
]
}
]
}
Retrieve Allocation Usage by License Key
Retrieve allocation usage referenced by a given license key.
URL
http://<host>:<port>/controller/licensing/v1/usage/license/{licenseId}/allocation/{licenseKey}
Format
GET /controller/licensing/v1/usage/license/{licenseId}/allocation/{licenseKey}
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
licenseId | String | License ID for which a usage is requested to be retrieved. | Yes |
licenseKey | String | License key based on the allocation rule is selected. Returned usage will be related to that particular allocation rule. | Yes |
Query Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| String | Start date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
| String | End date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'. | Yes |
| Integer | Requested granularity of the license usage data. | Yes |
| Boolean | Determines whether to include licensed entity type usage or not. The default is false. | No |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| Integer | Account ID. |
| Object | Entity representing license usage either for an account or for an allocation. |
| Array of package objects | Package objects. |
licenseRule Object
Parameter Name | Parameter Type | Value |
---|---|---|
id | String | Allocation ID. |
name | String | Allocation name. |
licenseKey | String | License key for this particular allocation. |
packageObject
Parameter Name | Parameter Type | Value |
---|---|---|
Parameter Name | Parameter Type | Value |
packageName | String | An enumeration representing the name of the package (edition) instance:
|
type | String | An enumeration representing the type of the package instance:
|
kind | String | Package kind derived from the licensing model where the package originated from. Useful for quickly distinguishing packages based on the legacy Agent based license modules (APM, DOTNET, etc.) from the new Infrastructure based packages. Enum: "AGENT_BASED" "INFRASTRUCTURE_BASED" |
family | String | Package family. |
createdDate | String | Creation date of the package instance in the license. ISO 8601 date-time string. |
startDate | String | Start date of the package instance. For example, the date from which the package instance becomes active: ISO 8601 date-time string. |
expirationDate | String | Expiration date of the package instance, i.e. date from which the package instance is no longer active. ISO 8601 date-time string. |
licenseUnits | String | Number of licenses available for the package instance. |
properties | Object | Collection of package specific custom properties in the form of key-value pairs. In case of merging with global properties, conflicting package specific properties take precedence. |
Example
curl --user <user>@<AccountName>:<password> -X GET \ http://<host>:<port>/controller/licensing/v1/usage/license/{licenseId}/allocation/{licenseKey}?dateFrom=<ISO 8601 date-time string>&dateTo=<ISO 8601 date-time string>&granularityMinutes=<number of minutes as an integer>
{
"accountId":0,
"licenseRule":{
"id":"string",
"name":"string",
"licenseKey":"string"
},
"packages":[
{
"name":"string",
"unitUsages":[
{
"usageType":"string",
"granularityInMinutes":0,
"data":{
"timestamp":"string",
"provisioned":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"used":{
"min":0,
"max":0,
"avg":0,
"count":0
},
"registrations":[
{
"type":"string",
"registered":{
"min":0,
"max":0,
"avg":0,
"count":0
}
}
]
}
}
]
}
]
}
Create a License Allocation
Create a license allocation. For this method, make sure:
- IDs of sub-entities (filters, limits) are not filled
- Other unique parameters (e.g.,
name
,licenseKey
) don't conflict with existing allocations
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation
Format
POST /controller/licensing/v1/account/{accountId}/allocation
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
accountId | Integer | Account identification for which allocations are requested to be retrieved. | Yes |
Request Format
request Object
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Boolean | If set to | Yes |
| Array of Objects | Array of | No |
| Array of Objects | Array of | |
machineAgentPriority | Boolean | Indicates that license leases are prioritized for Machine Agent usage when using Infrastructure-based Licenses (IBL) over App Server Agents. | Yes |
| String | Name of the allocation. Unique per account. | Yes |
Filter Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Name of the allocation. Unique per account. |
| String | Type of entity on which the filter should be applied. Enum: "APPLICATION" "HOST" |
| String | Operator of the following enumerations used to check the
|
| String | Value to be used to filter against. |
limit Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation package limit ID. |
| String | Type of package for the limit. The following are the supported enumerations:
|
| Integer | Number of license units per the allocation limit. |
| Array of Strings | Tags associated with the allocation. |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation ID. Unique per account. |
| Integer | Account ID the allocation belongs to. |
| String | Name of the allocation. Unique per account. |
| String | License key used by the allocation. Unique per account. |
filters | Array of Objects | Array of filter objects |
| Array of Objects | Array of |
| Array of Strings | Tags associated with the allocation. |
| String | Creation date of the allocation: ISO 8601 date-time string. |
| String | Last update date of the allocation: ISO 8601 date-time string. |
filter Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Name of the allocation. Unique per account. |
| String | Type of entity on which the filter should be applied. Enum: "APPLICATION" "HOST" |
| String | Operator of the following enumerations used to check the
|
| String | Value to be used to filter against. |
limit Object
Parameter Name | Parameter Type | Value |
---|---|---|
id | String | Allocation package limit ID. |
package | String | Type of package for the limit. The following are the supported enumerations:
|
units | Integer | Number of license units per the allocation limit. |
tags | Array of Strings | Tags associated with the allocation. |
Example
curl --user <user>@<AccountName>:<password> -X POST \ http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation \ -H 'Content-Type: application/json' \ -d '{ "name": "string", "filters": [ { "id": "string", "type": "APPLICATION", "operator": "ID_EQUALS", "value": "string" } ], "limits": [ { "id": "string", "package": "INFRA", "units": 0 } ], "tags": ["string"] }'
[
{
"id": "string",
"accountId": integer,
"name": "string",
"licenseKey": "string",
"filters": [
{
"id": "string",
"type": "APPLICATION",
"operator": "ID_EQUALS",
"value": "string"
}
],
"limits": [
{
"id": "string",
"package": "INFRA",
"units": 0
}
],
"tags": ["string"],
"createdDate": "ISO 8601 date-time",
"lastUpdatedDate": "ISO 8601 date-time"
},
...
]
Retrieve a License Allocation
Retrieve a license allocation by allocation ID.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation/{allocationId}
Format
GET /controller/licensing/v1/account/{accountId}/allocation/{allocationId}
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
| String | Allocation ID referencing allocation to be retrieved. | Yes |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation ID. Unique per account. |
| Integer | Account ID the allocation belongs to. |
fallbackModeDelay | Boolean | When |
| String | Name of the allocation. Unique per account. |
| String | License key used by the allocation. Unique per account. |
| Array of Objects | Array of filter objects |
| Array of Objects | Array of |
machineAgentPriority | Boolean | Set to true to prioritize license leases for Machine Agent usage when using Infrastructure-based Licenses (IBL) in favor of App Server Agents. |
| Array of Strings | Tags associated with the allocation. |
| String | Creation date of the allocation: ISO 8601 date-time string. |
| String | Last update date of the allocation: ISO 8601 date-time string. |
filter Object
Parameter Name | Parameter Type | Value |
---|---|---|
id | String | Name of the allocation. Unique per account. |
type | String | Type of entity on which the filter should be applied. Enum: "APPLICATION" "HOST" |
operator | String | Operator of the following enumerations used to check the
|
value | String | Value to be used to filter against. |
limit Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation package limit ID. |
| String | Type of package for the limit. The following are the supported enumerations:
|
| Integer | Number of license units per the allocation limit. |
| Array of Strings | Tags associated with the allocation. |
Example
curl --user <user>@<AccountName>:<password> -X GET \ http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation/{allocationId}
[
{
"id": "string",
"accountId": integer,
"name": "string",
"licenseKey": "string",
"filters": [
{
"id": "string",
"type": "APPLICATION",
"operator": "ID_EQUALS",
"value": "string"
}
],
"limits": [
{
"id": "string",
"package": "INFRA",
"units": 0
}
],
"tags": ["string"],
"createdDate": "ISO 8601 date-time",
"lastUpdatedDate": "ISO 8601 date-time"
},
...
]
Update a License Allocation
Update a license allocation by allocation ID.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation/{allocationId}
Format
PUT /controller/licensing/v1/account/{accountId}/allocation/{allocationId}
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
| String | Allocation ID referencing allocation to be retrieved. | Yes |
Request Format
request Object
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
fallbackModeDelay | Boolean | If set to | Yes |
| String | Allocation ID referencing allocation to be retrieved. | No |
| Object | No | |
machineAgentPriority | Boolean | Set to | Yes |
| String | Name of the allocation. Unique per account. | Yes |
| Array of Strings | No |
filter Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Name of the allocation. Unique per account. |
| String | Type of entity on which the filter should be applied. Enum: "APPLICATION" "HOST" |
| String | Operator of the following enumerations used to check the
|
| String | Value to be used to filter against. |
limit Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | Allocation package limit ID. |
| String | Type of package for the limit. The following are the supported enumerations:
|
| Integer | Number of license units per the allocation limit. |
| Array of Strings | Tags associated with the allocation. |
Example
curl --user <user>@<AccountName>:<password> -X PUT \ http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation \ -H 'Content-Type: application/json' \ -d '{ "name": "string", "filters": [ { "id": "string", "type": "APPLICATION", "operator": "ID_EQUALS", "value": "string" } ], "limits": [ { "id": "string", "package": "INFRA", "units": 0 } ], "tags": [ "string" ] }'
{
"id":"string",
"accountId":0,
"name":"string",
"licenseKey":"string",
"filters":[
{
"id":"string",
"type":"APPLICATION",
"operator":"ID_EQUALS",
"value":"string"
}
],
"limits":[
{
"id":"string",
"package":"INFRA",
"units":0
}
],
"tags":[
"string"
],
"createdDate":"string",
"lastUpdatedDate":"string"
}
Delete a License Rule Allocation
Delete a license allocation by allocation ID.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation/{allocationId}
Format
DELETE /controller/licensing/v1/account/{accountId}/allocation/{allocationId}
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
| String | Allocation ID referencing allocation to be retrieved. | Yes |
Example
curl --user <user>@<AccountName>:<password> -X DELETE \ http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation/{allocationId}
License Information API
A RESTful API to programmatically retrieve license information for an account, such as license type, package, and expiration date.
Retrieve Account License Information
Retrieve license information for an account.
URL
http://<host>:<port>/controller/licensing/v1/account/{accountId}/info
Format
GET /controller/licensing/v1/account/{accountId}/info
Path Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Integer | Account identification for which allocations are requested to be retrieved. | Yes |
Response Format
response Object
Parameter Name | Parameter Type | Value |
---|---|---|
| Integer | Account ID the license info belongs to. |
| String | SFDC license ID. |
| String | Customer ID. |
| String | Customer name. |
| String | Enumerations representing the environment the license is intended to be used on:
|
| String | Hardware fingerprint of a machine the license is intended to be used on. Currently only the MAC address is supported. Might be |
| String | Enumeration representing the intended consumer of the license:
|
| String | Expiration date of the whole license: ISO 8601 date-time string. |
| String | Enumeration representing the license status:
|
| Array of Objects | |
| Object | Collection of global custom properties tied to the license in the form of key → value. These properties might be shared among all packages. |
| Object | Account level fallback unit definition, it is mapping agent types (string) to their fallback units (integer). |
package Object
Parameter Name | Parameter Type | Value |
---|---|---|
| String | An enumeration representing the name of the package (edition) instance:
|
| String | An enumeration representing the type of the package instance:
|
| String | Package kind derived from the licensing model where the package originated from. Useful for quickly distinguishing packages based on the legacy Agent based license modules (APM, DOTNET, etc.) from the new Infrastructure based packages. Enum: "INFRASTRUCTURE_BASED" |
| String | Package family. |
| String | Creation date of the package instance in the license. ISO 8601 date-time string. |
| String | Start date of the package instance. For example, the date from which the package instance becomes active: ISO 8601 date-time string. |
| String | Expiration date of the package instance, i.e. date from which the package instance is no longer active. ISO 8601 date-time string. |
| String | Number of licenses available for the package instance. |
| Object | Collection of package specific custom properties in the form of key-value pairs. In case of merging with global properties, conflicting package specific properties take precedence. |
Example
curl --user <user>@<AccountName>:<password> -X GET \ http://<host>:<port>/controller/licensing/v1/account/{accountId}/info
{
"accountId":0,
"licenseId":"string",
"customerId":"string",
"customerName":"string",
"environment":"DEV/TEST",
"hardwareFingerprint":"string",
"type":"SAAS-CONTROLLER",
"expirationDate":"string",
"status":"ACTIVE",
"packages":[
{
"packageName":"INFRA",
"type":"PAID",
"kind":"AGENT_BASED",
"family":"string",
"createdDate":"string",
"startDate":"string",
"expirationDate":"string",
"licenseUnits":0,
"properties":{
}
}
],
"properties":{
},
"fallbackUnits":{
}
}
APIs for Agent-based Licensing:
License Rules API
This section describes the License Rules API methods you can use to retrieve information about the license rules as modeled in Cisco AppDynamics such as creating, updating and deleting license rules, and also retrieving license rules by its ID, access key, and name.
The following are true for all License Rule APIs:
id
—is GUID (or UUID) which is an acronym for Globally Unique Identifier.access_key
—must be unique across alllicenseRules
.name
—must be unique across alllicenseRules
.account_id
—Use GET API to know your currentaccount_ID.
Creates a New License Rule
URL
http://<host>:<port>/controller/mds/v1/license/rules
Format
POST /controller/mds/v1/license/rules
Input Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| String | String representing the type of the license module. Module types are:
| Yes |
| String | String representing the ID or name. | Yes |
| Integer | Indicates the version number. | Yes |
| Integer | Integer indicating the required number of licenses. | Yes |
| String | Provides the account name or account ID. | Yes |
| Path | Provides the account access key. | Yes |
LicenseRule
is comprised of license_module_type, id, access_key, account_id,
version
, and number_of_licenses
.
Example
curl --user <user>@<AccountName>:<password> -X POST \ http://<host>:<port>/controller/mds/v1/license/rules \ -H 'Content-Type: application/json' \ -d '{ "id": "011116a4-124c-4b73-9343-f315836f103b", "version": 0, "name": "Default_API9", "description": null, "enabled": true, "constraints": [], "entitlements": [ { "license_module_type": "JAVA", "number_of_licenses": 100 }, { "license_module_type": "NATIVE_WEB_SERVER", "number_of_licenses": 100 }, { "license_module_type": "NATIVE_SDK", "number_of_licenses": 100 }, { "license_module_type": "DOT_NET", "number_of_licenses": 100 }, { "license_module_type": "NETVIZ", "number_of_licenses": 100 }, { "license_module_type": "MACHINE_AGENT", "number_of_licenses": 100 }, { "license_module_type": "NODEJS", "number_of_licenses": 100 }, { "license_module_type": "SIM_MACHINE_AGENT", "number_of_licenses": 100 }, { "license_module_type": "PHP", "number_of_licenses": 100 }, { "license_module_type": "PYTHON", "number_of_licenses": 100 } ], "account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4", "access_key": "ap1845ad-1f3e-4c9b-909b-a3cfa510bfb0", "total_licenses": null, "peak_usage": null }
{
"id": "011116a4-124c-4b73-9343-f315836f103b",
"version": 0,
"name": "Default_API9",
"description": null,
"enabled": true,
"constraints": [
],
"entitlements": [
{
"license_module_type": "JAVA",
"number_of_licenses": 100
},
{
"license_module_type": "NATIVE_WEB_SERVER",
"number_of_licenses": 100
},
{
"license_module_type": "NATIVE_SDK",
"number_of_licenses": 100
},
{
"license_module_type": "DOT_NET",
"number_of_licenses": 100
},
{
"license_module_type": "NETVIZ",
"number_of_licenses": 100
},
{
"license_module_type": "MACHINE_AGENT",
"number_of_licenses": 100
},
{
"license_module_type": "NODEJS",
"number_of_licenses": 100
},
{
"license_module_type": "SIM_MACHINE_AGENT",
"number_of_licenses": 100
},
{
"license_module_type": "PHP",
"number_of_licenses": 100
},
{
"license_module_type": "PYTHON",
"number_of_licenses": 100
}
],
"account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4",
"access_key": "ap1845ad-1f3e-4c9b-909b-a3cfa510bfb0",
"total_licenses": null,
"peak_usage": null
}
The version must be 0 when creating.
Returns a Summary of All the License Rules for the Current Account
Use this to retrieve a summary of the license rules. The data transfer objects (DTOs) returned will not contain any constraints, match conditions, or entitlements.
URL
http://<host>:<port>/controller/mds/v1/license/rules
Format
GET /controller/mds/v1/license/rules
Example
[ { "id":"f36e08e2-5f57-4b8c-9ad2-f18873adcd87", "version":2, "name":"Default", "description":null, "enabled":true, "constraints":[ ], "entitlements":[ ], "account_id":"0429fc7b-a2b9-42e3-a7fb-f704d436a054", "access_key":"account-accesskey-123", "total_licenses":120, "peak_usage":null } ]
Updates a License Rule
URL
http://<host>:<port>/controller/mds/v1/license/rules
Format
PUT /controller/mds/v1/license/rules
Input parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
id | String | String representing the ID or name. | Yes |
license_module_type | String | String representing the type of the license module. Module types are:
| Yes |
version | Integer | Indicates the version number. | Yes |
number_of_licenses | Integer | Integer indicating the required number of licenses. | Yes |
account_id | String | Provides the account name or account ID. | Yes |
access_key | Path | Provides the account access key. | Yes |
Example Request
curl -v -X PUT http://<host>:<port>/controller/mds/v1/license/rules \ --user <user>@<AccountName>:<password> \ -H 'Content-Type: application/json' \ -d '{ "id": "321116a4-124c-4b73-9343-f315836f103b", "version": 0, "name": "Default_API", "description": null, "enabled": true, "constraints": [], "entitlements": [ { "license_module_type": "JAVA", "number_of_licenses": 1000 }, { "license_module_type": "NATIVE_WEB_SERVER", "number_of_licenses": 100 }, { "license_module_type": "NATIVE_SDK", "number_of_licenses": 100 }, { "license_module_type": "DOT_NET", "number_of_licenses": 100 }, { "license_module_type": "NETVIZ", "number_of_licenses": 100 }, { "license_module_type": "MACHINE_AGENT", "number_of_licenses": 100 }, { "license_module_type": "NODEJS", "number_of_licenses": 100 }, { "license_module_type": "SIM_MACHINE_AGENT", "number_of_licenses": 100 }, { "license_module_type": "PHP", "number_of_licenses": 100 }, { "license_module_type": "PYTHON", "number_of_licenses": 100 } ], "account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4", "access_key": "api845ad-1f3e-4c9b-909b-a3cfa510bfb0", "total_licenses": null, "peak_usage": null }
To update the license rules:
- Get the payload using any of the available
GET
methods. - Update
accessKeys
, entitlements, etc. - Send the
PUT
request without changing other key-value pairs. - "
version
" should be kept as it was duringGET
. This would be incremental.
Deletes a License Rule
URL
http://<host>:<port>/controller/mds/v1/license/rules/f36e08e2-5f57-4b8c-9ad2-f18873adcd87
Format
DELETE /controller/mds/v1/license/rules/{id}
Input parameter
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Path | Deletes license rule by its ID. | Yes |
Retrieve a License Rule by ID
Use this to retrieve a license rule by the license rule ID.
URL
http://<host>:<port>/mds/v1/license/rules/f36e08e2-5f57-4b8c-9ad2-f18873adcd87
Format
GET /mds/v1/license/rules/{licenseRuleId}
Path Parameter
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
licenseRuleId | Path | Retrieves the UUID of the license rule. | Yes |
Output Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
id | String | String representing the ID or name. | Yes |
version | Integer | Indicates the version number. | Yes |
total_licenses | Integer | Integer indicating the total number of licenses. | Yes |
account_id | String | Provides the account name or account ID. | Yes |
access_key | path | Provides the account access key. | Yes |
Example
curl -X GET --user <user>@<AccountName>:<password> http://<host>:<port>/controller/mds/v1/license/rules/091116a4-124c-4b73-9343-f315836f103b
{
"id": "091116a4-124c-4b73-9343-f315836f103b",
"version": 0,
"name": "Default",
"description": null,
"enabled": true,
"constraints": [],
"entitlements": [
{
"license_module_type": "JAVA",
"number_of_licenses": 100
},
{
"license_module_type": "NATIVE_WEB_SERVER",
"number_of_licenses": 100
},
{
"license_module_type": "NATIVE_SDK",
"number_of_licenses": 100
},
{
"license_module_type": "DOT_NET",
"number_of_licenses": 100
},
{
"license_module_type": "NETVIZ",
"number_of_licenses": 100
},
{
"license_module_type": "MACHINE_AGENT",
"number_of_licenses": 100
},
{
"license_module_type": "NODEJS",
"number_of_licenses": 100
},
{
"license_module_type": "SIM_MACHINE_AGENT",
"number_of_licenses": 100
},
{
"license_module_type": "PHP",
"number_of_licenses": 100
},
{
"license_module_type": "PYTHON",
"number_of_licenses": 100
}
],
"account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4",
"access_key": "bd3845ad-1f3e-4c9b-909b-a3cfa510bfb0",
"total_licenses": null,
"peak_usage": null
}
The "version
" gets updated after every update from UI or API.
Retrieves a License Rule by Access Key
URL
http://<host>:<port>/controller/mds/v1/license/rules/accessKey/account-accesskey-123
Format
GET /controller/mds/v1/license/rules/accessKey/{accessKey}
Path Parameter
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
access_key | Path | Retrieves the access key assigned to the license rule. | Yes |
Output Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
id | String | String representing the ID or name. | Yes |
version | Integer | Indicates the version number. | Yes |
total_licenses | Integer | Integer indicating the total number of licenses. | Yes |
account_id | String | Provides the account name or account ID. | Yes |
Example
curl -X GET --user <user>@<AccountName>:<password> http://<host>:<port>/controller/mds/v1/license/rules
[
{
"id": "221116a4-124c-4b73-9343-f315836f103b",
"version": 0,
"name": "Default",
"description": null,
"enabled": true,
"constraints": [],
"entitlements": [],
"account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4",
"access_key": "bd3845ad-1f3e-4c9b-909b-a3cfa510bfb0",
"total_licenses": 1000,
"peak_usage": null
},
{
"id": "321116a4-124c-4b73-9343-f315836f103b",
"version": 0,
"name": "Custom1",
"description": null,
"enabled": true,
"constraints": [],
"entitlements": [],
"account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4",
"access_key": "api845ad-1f3e-4c9b-909b-a3cfa510bfb0",
"total_licenses": 1000,
"peak_usage": null
}
]
Retrieve a License Rule by Name
URL
http://<host>:<port>/controller/mds/v1/license/rules/name/Default
Format
GET /controller/mds/v1/license/rules/name/{name}
Path Parameter
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
| Path | Retrieves the name of the license rule. | Yes |
Output Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
id | String | String representing the ID or name. | Yes |
version | Integer | Indicates the version number. | Yes |
total_licenses | Integer | Integer indicating the total number of licenses. | Yes |
account_id | String | Provides the account name or account ID. | Yes |
Example
curl -X GET --user <user>@<AccountName>:<password> http://<host>:<port>/controller/mds/v1/license/rules
[
{
"id": "221116a4-124c-4b73-9343-f315836f103b",
"version": 0,
"name": "Default",
"description": null,
"enabled": true,
"constraints": [],
"entitlements": [],
"account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4",
"access_key": "bd3845ad-1f3e-4c9b-909b-a3cfa510bfb0",
"total_licenses": 1000,
"peak_usage": null
},
{
"id": "321116a4-124c-4b73-9343-f315836f103b",
"version": 0,
"name": "Custom1",
"description": null,
"enabled": true,
"constraints": [],
"entitlements": [],
"account_id": "8b1e92f2-387c-45b6-9bb5-ebd7f67587d4",
"access_key": "api845ad-1f3e-4c9b-909b-a3cfa510bfb0",
"total_licenses": 1000,
"peak_usage": null
}
]