License API

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

accountId

Integer

Account identification for which allocations are requested to be retrieved.

Yes

Query Parameters

Parameter Name Parameter Type Value Mandatory

appId

Array

A set of application IDs.

Yes

includeAgents BooleanFlag indicates whether the list of agents is required in response.No

Response Format

response appObject

Parameter Name Parameter Type Value
vCpuTotal IntegerTotal number of vCPUs on hosts where all applications are running.
fallbackLicenseUnits ObjectTotal number of (fallback) license units used by the applications per package name.
items ObjectDetail of usages by application.

appItemObject

Parameter Name Parameter Type Value
appId Integer

Application ID.

appName String

Application name.

vCpu IntegerNumber 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 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.

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 IntegerNumber 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

Request
curl --user <user>@<AccountName>:<password> "http://<host>:<port>/controller/licensing/v1/account/1965/grouped-usage/application/by-id?appId=18151&appId=18156&appId=18157&includeAgents=true"
Response
{
  "vCpuTotal": 48,
  "items": {
    "18156": {
      "vCpu": 32,
      "nodes": [
        {
          "nodeName": "OrderFulfillmentServiceNode"
        },
        {
          "nodeName": "OrderFulfillmentServiceDotnetNode"
        }
      ],
      "containers": [
        {
          "containerId": "orderfulfillmentservice"
        },
        {
          "containerId": "fe8ec1f60b5b"
        }
      ],
      "agents": [
        {
          "type": "APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        },
        {
          "type": "DOT_NET_APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        }
      ],
      "appId": 18156,
      "appName": "Sangrah-OrderFulfillment",
      "hosts": {
        "vCpuTotal": 32,
        "items": {
          "sangrah_analytics": {
            "vCpu": 16,
            "nodes": [
              {
                "nodeName": "OrderFulfillmentServiceDotnetNode"
              }
            ],
            "containers": [
              {
                "containerId": "fe8ec1f60b5b"
              }
            ],
            "agents": [
              {
                "type": "DOT_NET_APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              }
            ],
            "host": "sangrah_analytics",
            "fallbackLicenseUnits": {}
          },
          "ip-10-117-85-124": {
            "vCpu": 16,
            "nodes": [
              {
                "nodeName": "OrderFulfillmentServiceNode"
              }
            ],
            "containers": [
              {
                "containerId": "orderfulfillmentservice"
              }
            ],
            "agents": [
              {
                "type": "APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              }
            ],
            "host": "ip-10-117-85-124",
            "fallbackLicenseUnits": {}
          }
        }
      }
    },
    "18157": {
      "vCpu": 16,
      "nodes": [
        {
          "nodeName": "CartServiceNode"
        },
        {
          "nodeName": "CustomPojoRulesServiceNode"
        },
        {
          "nodeName": "OrderProcessingServiceNode"
        },
        {
          "nodeName": "PaymentServiceNode"
        },
        {
          "nodeName": "OrderServiceNode"
        },
        {
          "nodeName": "ApacheWebServerNode"
        },
        {
          "nodeName": "ShippingServiceNode"
        },
        {
          "nodeName": "FrontEndNode-0"
        }
      ],
      "containers": [
        {
          "containerId": "shippingservice"
        },
        {
          "containerId": "99d7338250be"
        },
        {
          "containerId": "apacheloadbalancer"
        },
        {
          "containerId": "frontend"
        },
        {
          "containerId": "orderprocessingservice"
        },
        {
          "containerId": "cartservice"
        },
        {
          "containerId": "orderservice"
        },
        {
          "containerId": "70b30fc810bc"
        }
      ],
      "agents": [
        {
          "type": "NATIVE_WEB_SERVER",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        },
        {
          "type": "APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        },
        {
          "type": "PHP_APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        }
      ],
      "appId": 18157,
      "appName": "SangrahApp",
      "hosts": {
        "vCpuTotal": 16,
        "items": {
          "ip-10-117-85-124": {
            "vCpu": 16,
            "nodes": [
              {
                "nodeName": "CartServiceNode"
              },
              {
                "nodeName": "CustomPojoRulesServiceNode"
              },
              {
                "nodeName": "OrderProcessingServiceNode"
              },
              {
                "nodeName": "PaymentServiceNode"
              },
              {
                "nodeName": "OrderServiceNode"
              },
              {
                "nodeName": "ApacheWebServerNode"
              },
              {
                "nodeName": "ShippingServiceNode"
              },
              {
                "nodeName": "FrontEndNode-0"
              }
            ],
            "containers": [
              {
                "containerId": "shippingservice"
              },
              {
                "containerId": "99d7338250be"
              },
              {
                "containerId": "apacheloadbalancer"
              },
              {
                "containerId": "frontend"
              },
              {
                "containerId": "orderprocessingservice"
              },
              {
                "containerId": "cartservice"
              },
              {
                "containerId": "orderservice"
              },
              {
                "containerId": "70b30fc810bc"
              }
            ],
            "agents": [
              {
                "type": "NATIVE_WEB_SERVER",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              },
              {
                "type": "APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              },
              {
                "type": "PHP_APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              }
            ],
            "host": "ip-10-117-85-124",
            "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

accountId

Integer

Account identification for which allocations are requested to be retrieved.

Yes

Query Parameters

Parameter Name Parameter Type Value Mandatory

appName

Array

A set of (URL escaped) application names.

Yes

includeAgents BooleanFlag indicates whether the list of agents is required in response.No

Response Format

response appObject

Parameter Name Parameter Type Value
vCpuTotal IntegerTotal number of vCPUs on hosts where all applications are running.
fallbackLicenseUnits ObjectTotal number of (fallback) license units used by the applications per package name.
items ObjectDetail of usages by application.

appItemObject

Parameter Name Parameter Type Value
appId Integer

Application ID.

appName String

Application name.

vCpu IntegerNumber 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 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.

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 IntegerNumber 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

Request
curl --user <user>@<AccountName>:<password> "http://<host>:<port>/controller/licensing/v1/account/1965/grouped-usage/application/by-name?appName=SangrahApp&appName=Sangrah-OrderFulfillment&appName=Travel&includeAgents=true"
Response
{
  "vCpuTotal": 48,
  "items": {
    "18156": {
      "vCpu": 32,
      "nodes": [
        {
          "nodeName": "OrderFulfillmentServiceNode"
        },
        {
          "nodeName": "OrderFulfillmentServiceDotnetNode"
        }
      ],
      "containers": [
        {
          "containerId": "orderfulfillmentservice"
        },
        {
          "containerId": "fe8ec1f60b5b"
        }
      ],
      "agents": [
        {
          "type": "APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        },
        {
          "type": "DOT_NET_APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        }
      ],
      "appId": 18156,
      "appName": "Sangrah-OrderFulfillment",
      "hosts": {
        "vCpuTotal": 32,
        "items": {
          "sangrah_analytics": {
            "vCpu": 16,
            "nodes": [
              {
                "nodeName": "OrderFulfillmentServiceDotnetNode"
              }
            ],
            "containers": [
              {
                "containerId": "fe8ec1f60b5b"
              }
            ],
            "agents": [
              {
                "type": "APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              },
              {
                "type": "DOT_NET_APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              }
            ],
            "host": "sangrah_analytics",
            "fallbackLicenseUnits": {}
          },
          "ip-10-115-85-164": {
            "vCpu": 16,
            "nodes": [
              {
                "nodeName": "OrderFulfillmentServiceNode"
              }
            ],
            "containers": [
              {
                "containerId": "orderfulfillmentservice"
              }
            ],
            "agents": [
              {
                "type": "APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              }
            ],
            "host": "ip-10-117-85-124",
            "fallbackLicenseUnits": {}
          }
        }
      }
    },
    "18157": {
      "vCpu": 16,
      "nodes": [
        {
          "nodeName": "CartServiceNode"
        },
        {
          "nodeName": "CustomPojoRulesServiceNode"
        },
        {
          "nodeName": "OrderProcessingServiceNode"
        },
        {
          "nodeName": "PaymentServiceNode"
        },
        {
          "nodeName": "OrderServiceNode"
        },
        {
          "nodeName": "ApacheWebServerNode"
        },
        {
          "nodeName": "ShippingServiceNode"
        }
      ],
      "containers": [
        {
          "containerId": "shippingservice"
        },
        {
          "containerId": "99d7338250be"
        },
        {
          "containerId": "apacheloadbalancer"
        },
        {
          "containerId": "orderprocessingservice"
        },
        {
          "containerId": "cartservice"
        },
        {
          "containerId": "orderservice"
        },
        {
          "containerId": "70b30fc810bc"
        }
      ],
      "agents": [
        {
          "type": "NATIVE_WEB_SERVER",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        },
        {
          "type": "APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        },
        {
          "type": "PHP_APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
        }
      ],
      "appId": 18157,
      "appName": "SangrahApp",
      "hosts": {
        "vCpuTotal": 16,
        "items": {
          "ip-10-115-85-164": {
            "vCpu": 16,
            "nodes": [
              {
                "nodeName": "CartServiceNode"
              },
              {
                "nodeName": "CustomPojoRulesServiceNode"
              },
              {
                "nodeName": "OrderProcessingServiceNode"
              },
              {
                "nodeName": "PaymentServiceNode"
              },
              {
                "nodeName": "OrderServiceNode"
              },
              {
                "nodeName": "ApacheWebServerNode"
              },
              {
                "nodeName": "ShippingServiceNode"
              }
            ],
            "containers": [
              {
                "containerId": "shippingservice"
              },
              {
                "containerId": "99d7338250be"
              },
              {
                "containerId": "apacheloadbalancer"
              },
              {
                "containerId": "orderprocessingservice"
              },
              {
                "containerId": "cartservice"
              },
              {
                "containerId": "orderservice"
              },
              {
                "containerId": "70b30fc810bc"
              }
            ],
            "agents": [
              {
                "type": "NATIVE_WEB_SERVER",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              },
              {
                "type": "APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              },
              {
                "type": "PHP_APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af848"
              }
            ],
            "host": "ip-10-117-85-124",
            "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
accountId

Integer

Account identification for which allocations are requested to be retrieved.

Yes

Query Parameters

Parameter Name Parameter Type Value Mandatory
hostId

Array

A set of (URL escaped) host IDs.

Yes

includeAgents BooleanA 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 IntegerNumber 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 IntegerTotal number of vCPUs on hosts where all applications are running.
fallbackLicenseUnits ObjectTotal number of (fallback) license units used by the applications per package name.
items ObjectDetail of usages by application.

appItemObject

Parameter Name Parameter Type Value
appId Integer

Application ID.

appName String

Application name.

vCpu IntegerNumber 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 null when this object is self-referenced.

Example

Request
curl --user <user>@<AccountName>:<password> "http://<host>:<port>/controller/licensing/v1/account/1965/grouped-usage/host?hostId=ip-10-117-85-124&hostId=sangrah_analytics&includeAgents=true"
Response
{
  "vCpuTotal": 32,
  "items": {
    "sangrah_analytics": {
      "vCpu": 16,
      "nodes": [
        {
          "nodeName": "OrderFulfillmentServiceDotnetNode"
        }
      ],
      "containers": [
        {
          "containerId": "sangrahmysql"
        },
        {
          "containerId": "sangrahoracle"
        },
        {
          "containerId": "fe8ec1f60b5b"
        }
      ],
      "agents": [
        {
          "type": "SIM_MACHINE_AGENT",
          "version": "24.7.0.4339",
          "licenseKey": "d3a4d1d8-5504-402f-8c0a8"
        },
        {
          "type": "DB_COLLECTOR",
          "version": "24.7.0.4394",
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af898"
        },
        {
          "type": "DOT_NET_APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af8948"
        }
      ],
      "host": "sangrah_analytics",
      "fallbackLicenseUnits": {},
      "applications": {
        "vCpuTotal": 0,
        "items": {
          "18156": {
            "vCpu": 0,
            "nodes": [
              {
                "nodeName": "OrderFulfillmentServiceDotnetNode"
              }
            ],
            "containers": [
              {
                "containerId": "fe8ec1f60b5b"
              }
            ],
            "agents": [
              {
                "type": "DOT_NET_APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af8948"
              }
            ],
            "appId": 18156,
            "appName": "Sangrah-OrderFulfillment"
          }
        }
      }
    },
    "ip-10-117-85-124": {
      "vCpu": 16,
      "nodes": [
        {
          "nodeName": "OrderFulfillmentServiceNode"
        },
        {
          "nodeName": "CartServiceNode"
        },
        {
          "nodeName": "CustomPojoRulesServiceNode"
        },
        {
          "nodeName": "OrderProcessingServiceNode"
        },
        {
          "nodeName": "PaymentServiceNode"
        },
        {
          "nodeName": "OrderServiceNode"
        },
        {
          "nodeName": "ApacheWebServerNode"
        },
        {
          "nodeName": "ShippingServiceNode"
        }
      ],
      "containers": [
        {
          "containerId": "shippingservice"
        },
        {
          "containerId": "orderfulfillmentservice"
        },
        {
          "containerId": "99d7338250be"
        },
        {
          "containerId": "apacheloadbalancer"
        },
        {
          "containerId": "orderprocessingservice"
        },
        {
          "containerId": "cartservice"
        },
        {
          "containerId": "orderservice"
        },
        {
          "containerId": "70b30fc810bc"
        }
      ],
      "agents": [
        {
          "type": "SIM_MACHINE_AGENT",
          "version": "24.7.0.4339",
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af2148"
        },
        {
          "type": "NETVIZ_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af8148"
        },
        {
          "type": "NATIVE_WEB_SERVER",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af8148"
        },
        {
          "type": "APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af8248"
        },
        {
          "type": "PHP_APP_AGENT",
          "version": null,
          "licenseKey": "d3a4d1d8-5504-402f-8c0a-af8148"
        }
      ],
      "host": "ip-10-117-85-124",
      "fallbackLicenseUnits": {},
      "applications": {
        "vCpuTotal": 0,
        "items": {
          "18156": {
            "vCpu": 0,
            "nodes": [
              {
                "nodeName": "OrderFulfillmentServiceNode"
              }
            ],
            "containers": [
              {
                "containerId": "orderfulfillmentservice"
              }
            ],
            "agents": [
              {
                "type": "APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af898"
              }
            ],
            "appId": 18156,
            "appName": "Sangrah-OrderFulfillment"
          },
          "18157": {
            "vCpu": 0,
            "nodes": [
              {
                "nodeName": "CartServiceNode"
              },
              {
                "nodeName": "CustomPojoRulesServiceNode"
              },
              {
                "nodeName": "OrderProcessingServiceNode"
              },
              {
                "nodeName": "PaymentServiceNode"
              },
              {
                "nodeName": "OrderServiceNode"
              },
              {
                "nodeName": "ApacheWebServerNode"
              },
              {
                "nodeName": "ShippingServiceNode"
              }
            ],
            "containers": [
              {
                "containerId": "shippingservice"
              },
              {
                "containerId": "99d7338250be"
              },
              {
                "containerId": "apacheloadbalancer"
              },
              {
                "containerId": "orderprocessingservice"
              },
              {
                "containerId": "cartservice"
              },
              {
                "containerId": "orderservice"
              },
              {
                "containerId": "70b30fc810bc"
              }
            ],
            "agents": [
              {
                "type": "NATIVE_WEB_SERVER",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af8148"
              },
              {
                "type": "APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af89848"
              },
              {
                "type": "PHP_APP_AGENT",
                "version": null,
                "licenseKey": "d3a4d1d8-5504-402f-8c0a-af89848"
              }
            ],
            "appId": 18157,
            "appName": "SangrahApp"
          }
        }
      }
    }
  }
}

アカウント使用状況 API

ライセンスとアカウントの ID によってアカウントの使用状況をプログラムで取得するための RESTful API です。

ライセンス ID によるアカウント使用状況の取得

指定されたライセンス ID によって参照されるアカウント使用状況を取得します。

URL

http://<host>:<port>/controller/licensing/v1/usage/license/{licenseId}

形式

GET /controller/licensing/v1/usage/license/{licenseId}

パスパラメータ

パラメータ名 Parameter Type 必須

licenseId

文字列

使用状況の取得が要求されるライセンス ID。

あり

クエリパラメータ

パラメータ名 Parameter Type 必須

dateFrom

文字列

要求されたライセンス使用期間の開始日。対応する形式は ISO-8601(拡張)です。例:2020-10-05T10:00:00Z

あり

dateTo

文字列

要求されたライセンス使用期間の終了日。対応する形式は ISO-8601(拡張)です。例:2020-10-05T10:00:00Z

あり

granularityMinutes

整数

要求されたライセンス使用状況データの粒度。

あり

includeEntityTypes

ブーリアン

ライセンスされたエンティティタイプの使用状況を含めるかどうかを指定します。デフォルトは false.

いいえ

includeConsumptionBased

ブーリアン

消費ベースの使用状況を含めるかどうか。デフォルトは false.

いいえ

応答形式

response オブジェクト

パラメータ名 Parameter Type

accountId

整数

アカウント ID。

license-rules

オブジェクト

アカウントまたは割り当てのライセンス使用状況を表すエンティティ。

packages

パッケージオブジェクトの配列

licenseRule オブジェクト

パラメータ名 Parameter Type

id

文字列

割当 ID。

name

文字列

割り当て名。

licenseKey

文字列

この特定の割り当てのライセンスキー。

package オブジェクト

パラメータ名Parameter Type
packageName 文字列

次のパッケージ(エディション)インスタンスの名前を表す列挙型:

  • infra
  • "PREMIUM"
  • "ENTERPRISE"
type 文字列

次のパッケージインスタンスのタイプを表す列挙型:

  • "PAID"
  • トライアル
  • "LITE"
kind 文字列

パッケージの作成元のライセンスモデルから派生したパッケージの種類。レガシーエージェントベースのライセンスモジュール(APM、DOTNET など)に基づくパッケージを、新しいインフラストラクチャベースのパッケージと迅速に区別するのに役立ちます。

列挙型:"AGENT_BASED" "INFRASTRUCTURE_BASED"

family 文字列パッケージファミリ。
createdDate 文字列ライセンス内のパッケージインスタンスの作成日。ISO 8601 日時文字列。
startDate 文字列パッケージインスタンスの開始日。例:パッケージインスタンスがアクティブになる日付:ISO 8601 日時文字列。
expirationDate 文字列パッケージインスタンスの期限日、つまりパッケージインスタンスがアクティブでなくなる日付。ISO 8601 日時文字列。
licenseUnits 文字列パッケージインスタンスで使用可能なライセンスの数。
properties オブジェクトキーと値のペア形式でのパッケージ固有のカスタムプロパティのコレクション。グローバルプロパティとマージする場合は、競合するパッケージ固有のプロパティが優先されます。

リクエスト
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
}
}
]
}
}
]
}
]
}

アカウント ID によるアカウント使用状況の取得

指定のアカウント ID で参照するアカウント使用状況を取得します。

URL

http://<host>:<port>/controller/licensing/v1/usage/account/{accountId}

形式

GET /controller/licensing/v1/usage/account/{accountId}

パスパラメータ

パラメータ名Parameter Type必須
accountId 整数

使用状況の取得が要求されるアカウント ID。

あり

クエリパラメータ

パラメータ名Parameter Type必須
dateFrom 文字列

要求されたライセンス使用期間の開始日。対応する形式は ISO-8601(拡張)です。例:2020-10-05T10:00:00Z

あり
dateTo 文字列要求されたライセンス使用期間の終了日。対応する形式は ISO-8601(拡張)です。例:2020-10-05T10:00:00Zあり
granularityMinutes 整数要求されたライセンス使用状況データの粒度。あり
includeEntityTypes ブーリアンライセンスされたエンティティタイプの使用状況を含めるかどうかを指定します。デフォルトは false. いいえ
includeConsumptionBased ブーリアン消費ベースの使用状況を含めるかどうか。デフォルトは false. いいえ

応答形式

response オブジェクト

パラメータ名 Parameter Type

accountId

整数

アカウント ID。

license-rules

オブジェクト

アカウントまたは割り当てのライセンス使用状況を表すエンティティ。

packages

配列

パッケージオブジェクト

licenseRule オブジェクト

パラメータ名 Parameter Type

id

文字列

割当 ID。

name

文字列

割り当て名。

licenseKey

文字列

この特定の割り当てのライセンスキー。

package オブジェクト

パラメータ名Parameter Type
packageName 文字列

次のパッケージ(エディション)インスタンスの名前を表す列挙型:

  • infra
  • "PREMIUM"
  • "ENTERPRISE"
type 文字列

次のパッケージインスタンスのタイプを表す列挙型:

  • "PAID"
  • トライアル
  • "LITE"
kind 文字列

パッケージの作成元のライセンスモデルから派生したパッケージの種類。レガシーエージェントベースのライセンスモジュール(APM、DOTNET など)に基づくパッケージを、新しいインフラストラクチャベースのパッケージと迅速に区別するのに役立ちます。

列挙型:"AGENT_BASED" "INFRASTRUCTURE_BASED"

family 文字列パッケージファミリ。
createdDate 文字列ライセンス内のパッケージインスタンスの作成日。ISO 8601 日時文字列。
startDate 文字列パッケージインスタンスの開始日。例:パッケージインスタンスがアクティブになる日付:ISO 8601 日時文字列。
expirationDate 文字列パッケージインスタンスの期限日、つまりパッケージインスタンスがアクティブでなくなる日付。ISO 8601 日時文字列。
licenseUnits 文字列パッケージインスタンスで使用可能なライセンスの数。
properties オブジェクトキーと値のペア形式でのパッケージ固有のカスタムプロパティのコレクション。グローバルプロパティとマージする場合は、競合するパッケージ固有のプロパティが優先されます。

リクエスト
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 NameParameter TypeValueMandatory

accountId

Integer

Account identification for which allocations are requested to be retrieved.

Yes

Query Parameters

Parameter Name Parameter Type Value Mandatory

name

String

Name of the allocation. Cannot be used in combination with license-key and tag.

No

license-key

String

License key of the allocation. Cannot be used in combination with name and tag.

No

tag

String

Tag associated with allocations. Cannot be used in combination with name and license-key.

No

Response Format

response Object

Parameter Name Parameter Type Value

id

String

Allocation ID. Unique per account.

accountId

Integer

Account ID the allocation belongs to.

name

String

Name of the allocation. Unique per account.

licenseKey

String

License key used by the allocation. Unique per account.

filters

Array of Objects

Array of filter objects

limits

Array of Objects

Array of limit objects

tags

Array of Strings

Tags associated with the allocation.

createdDate

String

Creation date of the allocation: ISO 8601 date-time string.

lastUpdatedDate

String

Last update date of the allocation: ISO 8601 date-time string.

filter Object

Parameter Name Parameter TypeValue

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 type against the value:

  • ID_EQUALS – Exact match of entity Id

  • EQUALS – Exact match of entity value

  • STARTS_WITH – Match of entity starting with a value

  • ENDS_WITH – Match of entity ending with a value

  • CONTAINS – Match of entity containing a value

  • REGEX – Match of entity against a regexp

value

String

Value to be used to filter against.

limit Object

Parameter Name Parameter Type Value
id StringAllocation package limit ID.
package String

Type of package for the limit.

The following are the supported enumerations:

  • "INFRA"
  • "PREMIUM"
  • "ENTERPRISE"
units Integer

Number of license units per the allocation limit.

tags Array of StringsTags associated with the allocation.

Example

Request
curl --user <user>@<AccountName>:<password> -X GET \
http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation
Response
[
{
"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 StringLicense 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

dateFrom

String

Start date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'.

Yes

dateTo

StringEnd date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'.Yes

granularityMinutes

IntegerRequested granularity of the license usage data.Yes

includeEntityTypes

BooleanDetermines whether to include licensed entity type usage or not. The default is false. No

Response Format

response Object

Parameter Name Parameter Type Value

accountId

Integer

Account ID.

licenseRule

Object

Entity representing license usage either for an account or for an allocation.

packages

Array

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
packageName String

An enumeration representing the name of the package (edition) instance:

  • "INFRA"
  • "PREMIUM"
  • "ENTERPRISE"
type String

An enumeration representing the type of the package instance:

  • "PAID"
  • "TRIAL"
  • "LITE"
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 StringPackage family.
createdDate StringCreation date of the package instance in the license. ISO 8601 date-time string.
startDate StringStart date of the package instance. For example, the date from which the package instance becomes active: ISO 8601 date-time string.
expirationDate StringExpiration date of the package instance, i.e. date from which the package instance is no longer active. ISO 8601 date-time string.
licenseUnits StringNumber of licenses available for the package instance.
properties ObjectCollection 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

Request
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>
Response
{
"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 StringLicense key based on the allocation rule is selected. Returned usage will be related to that particular allocation rule.Yes

Query Parameters

Parameter NameParameter 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

StringEnd date of requested license usage period. Expected format is ISO-8601 (extended). For example: '2020-10-05T10:00:00Z'.Yes

granularityMinutes

IntegerRequested granularity of the license usage data.Yes

includeEntityTypes

BooleanDetermines whether to include licensed entity type usage or not. The default is false. No

Response Format

response Object

Parameter Name Parameter Type Value

accountId

Integer

Account ID.

licenseRule

Object

Entity representing license usage either for an account or for an allocation.

packages

Array of package objects

Package objects.

licenseRule Object

Parameter Name Parameter Type Value
id StringAllocation ID.
name StringAllocation name.
licenseKey StringLicense key for this particular allocation.

packageObject

Parameter Name Parameter Type Value
packageName String

An enumeration representing the name of the package (edition) instance:

  • "INFRA"
  • "PREMIUM"
  • "ENTERPRISE"
type String

An enumeration representing the type of the package instance:

  • "PAID"
  • "TRIAL"
  • "LITE"
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 StringPackage family.
createdDate StringCreation date of the package instance in the license. ISO 8601 date-time string.
startDate StringStart date of the package instance. For example, the date from which the package instance becomes active: ISO 8601 date-time string.
expirationDate StringExpiration date of the package instance, i.e. date from which the package instance is no longer active. ISO 8601 date-time string.
licenseUnits StringNumber of licenses available for the package instance.
properties ObjectCollection 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

Request
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>
Response
{
"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 NameParameter TypeValueMandatory
accountId IntegerAccount identification for which allocations are requested to be retrieved.Yes

Request Format

request Object

Parameter Name Parameter Type ValueMandatory

fallbackModeDelay

Boolean

If set to true, the App Server Agents running in a container (Infrastructure-based Licensing) would be rejected for a predefined period of time if no vCPU count is known. The fallback vCPU count is set to the default value only after this time if the real vCPU count is still unknown. If the real vCPU count becomes known it will be used immediately.

Yes

filters

Array of Objects

Array of filter objects

No

limits

Array of Objects

Array of limit objects

machineAgentPriority Boolean

Indicates that license leases are prioritized for Machine Agent usage when using Infrastructure-based Licenses (IBL) over App Server Agents.

Yes

name

String

Name of the allocation. Unique per account.

Yes

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 type against the value:

  • ID_EQUALS – Exact match of entity Id

  • EQUALS – Exact match of entity value

  • STARTS_WITH – Match of entity starting with a value

  • ENDS_WITH – Match of entity ending with a value

  • CONTAINS – Match of entity containing a value

  • REGEX – Match of entity against a regexp

value

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:

  • "INFRA"

  • "PREMIUM"

  • "ENTERPRISE"

units

Integer

Number of license units per the allocation limit.

tags

Array of Strings

Tags associated with the allocation.

Response Format

response Object

Parameter Name Parameter Type Value

id

String

Allocation ID. Unique per account.

accountId

Integer

Account ID the allocation belongs to.

name

String

Name of the allocation. Unique per account.

licenseKey

String

License key used by the allocation. Unique per account.

filters

Array of Objects

Array of filter objects

limits

Array of Objects

Array of limit objects

tags

Array of Strings

Tags associated with the allocation.

createdDate

String

Creation date of the allocation: ISO 8601 date-time string.

lastUpdatedDate

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 type against the value:

  • ID_EQUALS – Exact match of entity Id

  • EQUALS – Exact match of entity value

  • STARTS_WITH – Match of entity starting with a value

  • ENDS_WITH – Match of entity ending with a value

  • CONTAINS – Match of entity containing a value

  • REGEX – Match of entity against a regexp

value

String

Value to be used to filter against.

limit Object

Parameter NameParameter TypeValue
id StringAllocation package limit ID.
package String

Type of package for the limit.

The following are the supported enumerations:

  • "INFRA"
  • "PREMIUM"
  • "ENTERPRISE"
units Integer

Number of license units per the allocation limit.

tags Array of StringsTags associated with the allocation.

Example

Request
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"]
}'
Response
[
{
"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

accountId

Integer

Account identification for which allocations are requested to be retrieved.

Yes

allocationId

String

Allocation ID referencing allocation to be retrieved.

Yes

Response Format

response Object

Parameter Name Parameter Type Value

id

String

Allocation ID. Unique per account.

accountId

Integer

Account ID the allocation belongs to.

fallbackModeDelay Boolean

When true, indicates that the App Server Agents running in a container (Infrastructure-based Licensing) would be rejected for a predefined period of time if no vCPU count is known. The fallback vCPU count is set to the default value only after this time if the real vCPU count is still unknown. If the real vCPU count becomes known it will be used immediately.

name

String

Name of the allocation. Unique per account.

licenseKey

String

License key used by the allocation. Unique per account.

filters

Array of Objects

Array of filter objects

limits

Array of Objects

Array of limit objects

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.

tags

Array of Strings

Tags associated with the allocation.

createdDate

String

Creation date of the allocation: ISO 8601 date-time string.

lastUpdatedDate

String

Last update date of the allocation: ISO 8601 date-time string.

filter Object

Parameter NameParameter TypeValue
id StringName 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 type value:

  • ID_EQUALS – Exact match of entity Id
  • EQUALS – Exact match of entity value
  • STARTS_WITH – Match of entity starting with a value
  • ENDS_WITH – Match of entity ending with a value
  • CONTAINS – Match of entity containing a value
  • REGEX – Match of entity against a regexp
value StringValue 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:

  • "INFRA"

  • "PREMIUM"

  • "ENTERPRISE"

units

Integer

Number of license units per the allocation limit.

tags

Array of Strings

Tags associated with the allocation.

Example

Request
curl --user <user>@<AccountName>:<password> -X GET \
http://<host>:<port>/controller/licensing/v1/account/{accountId}/allocation/{allocationId}
Response
[
{
"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

accountId

Integer

Account identification for which allocations are requested to be retrieved.

Yes

allocationId

String

Allocation ID referencing allocation to be retrieved.

Yes

Request Format

request Object

Parameter Name Parameter Type Value Mandatory
fallbackModeDelay Boolean

If set to true, the App Server Agents running in a container (Infrastructure-based Licensing) would be rejected for a predefined period of time if no vCPU count is known. The fallback vCPU count is set to the default value only after this time if the real vCPU count is still unknown. If the real vCPU count becomes known it will be used immediately.

Yes

filters

String

Allocation ID referencing allocation to be retrieved.

No

limits

ObjectNo
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.

Yes

name

String

Name of the allocation. Unique per account.

Yes

tags

Array of StringsNo

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 type against the value:

  • ID_EQUALS – Exact match of entity Id

  • EQUALS – Exact match of entity value

  • STARTS_WITH – Match of entity starting with a value

  • ENDS_WITH – Match of entity ending with a value

  • CONTAINS – Match of entity containing a value

  • REGEX – Match of entity against a regexp

value

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:

  • "INFRA"

  • "PREMIUM"

  • "ENTERPRISE"

units

Integer

Number of license units per the allocation limit.

tags

Array of Strings

Tags associated with the allocation.

Example

Request
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"
]
}'
Response
{
"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

accountId

Integer

Account identification for which allocations are requested to be retrieved.

Yes

allocationId

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}

ライセンス情報 API

アカウントのライセンス情報(ライセンスタイプ、パッケージ、期限日など)をプログラムで取得するための RESTful API です。

アカウントライセンス情報の取得

アカウントのライセンス情報を取得します。

URL

http://<host>:<port>/controller/licensing/v1/account/{accountId}/info

形式

GET /controller/licensing/v1/account/{accountId}/info

パスパラメータ

パラメータ名 Parameter Type 必須

accountId

整数

割り当ての取得が要求されるアカウント ID。

あり

応答形式

response オブジェクト

パラメータ名 Parameter Type

accountId

整数

ライセンス情報が属するアカウント ID。

licenseId

文字列

SFDC ライセンス ID。

customerId

文字列

カスタマー ID。

customerName

文字列

カスタマー名。

環境

文字列

ライセンスが使用される予定の環境を表す列挙型:

  • "DEV/TEST" 

  • PROD"

hardwareFingerprint

文字列

ライセンスが使用される予定のマシンのハードウェア フィンガープリント。現在、MAC アドレスのみがサポートされています。無制限の場合は ANY となります。

type

文字列

ライセンスの対象コンシューマを表す列挙型:

  • "SAAS-CONTROLLER" 

  • "SAAS-ACCOUNT" 

  • "ONPREM-CONTROLLER" 

  • "ONPREM-ACCOUNT"

expiration-date

文字列

ライセンス全体の期限日:ISO 8601 日時文字列。

status

文字列

ライセンスステータスを表す列挙型:

  • "ACTIVE":期限切れではない paID ライセンス。すべてのユニットが支払い済みです。

  • "LIMITED":期限切れはしていない Lite または Trial。少なくとも 1 つのユニットが LITE または TRIAL です。

  • "EXPIRED":期限切れライセンス。

packages

オブジェクトの配列

プロパティ

オブジェクト

キー → 値の形式でライセンスに関連付けられたグローバル カスタム プロパティのコレクション。これらのプロパティは、すべてのパッケージで共有できます。

fallbackUnits

オブジェクト

アカウントレベルのフォールバックユニットの定義。エージェントタイプ(文字列)をフォールバックユニット(整数)にマッピングします。

package オブジェクト

パラメータ名 Parameter Type

packageName

文字列

次のパッケージ(エディション)インスタンスの名前を表す列挙型:

  • infra

  • "PREMIUM" "ENTERPRISE"

type

文字列

次のパッケージインスタンスのタイプを表す列挙型:

  • "PAID"

  • トライアル

  • "LITE"

種類

文字列

パッケージの作成元のライセンスモデルから派生したパッケージの種類。レガシーエージェントベースのライセンスモジュール(APM、DOTNET など)に基づくパッケージを、新しいインフラストラクチャベースのパッケージと迅速に区別するのに役立ちます。

列挙型:"INFRASTRUCTURE_BASED"

ファミリ

文字列

パッケージファミリ。

                                "createdDate": "",

文字列

ライセンス内のパッケージインスタンスの作成日。ISO 8601 日時文字列。

startDate

文字列

パッケージインスタンスの開始日。例:パッケージインスタンスがアクティブになる日付:ISO 8601 日時文字列。

expiration-date

文字列

パッケージインスタンスの期限日、つまりパッケージインスタンスがアクティブでなくなる日付。ISO 8601 日時文字列。

licenseUnits

文字列

パッケージインスタンスで使用可能なライセンスの数。

プロパティ

オブジェクト

キーと値のペア形式でのパッケージ固有のカスタムプロパティのコレクション。グローバルプロパティとマージする場合は、競合するパッケージ固有のプロパティが優先されます。

リクエスト
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":{
}
}

ライセンスルール API

このセクションでは、ライセンスルールの作成、更新、および削除や、ID、アクセスキー、および名前によるライセンスルールの取得などの、Splunk AppDynamics でモデル化されたライセンスルールに関する情報を取得するために使用できるライセンスルール API メソッドについて説明します。

警告: すべてのライセンスルール API に以下が適用されます。id:グローバルで一意な識別子の頭字語である GUID(または UUID)です。access_key:すべての licenseRules で一意である必要があります。name:すべての licenseRules で一意である必要があります。account_id:現在の account_id を確認するために GET api を使用します

ライセンスルールを新規作成する

URL

http://<host>:<port>/controller/mds/v1/license/rules

形式

 POST /controller/mds/v1/license/rules

入力パラメータ

パラメータ名Parameter Type必須

license_module_type

文字列

ライセンスモジュールのタイプを表す文字列。

モジュールタイプ:

  • NETVIZ
  • MACHINE_AGENT
  • SIM_MACHINE_AGENT
  • APM
  • APP_AGENT
  • DOT_NET_AGENT
あり

id

文字列ID または名前を表す文字列。あり

バージョン

整数バージョン番号を示します。あり

number_of_licenses

整数必要なライセンス数を示す整数。あり

account_id

文字列アカウント名またはアカウント ID を提供します。あり

access_key

パスアカウントアクセスキーを提供します。あり

LicenseRule は、license_module_type、id、access_key、account_id、バージョン、および number_of_licenses からなります。

リクエスト
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
}
警告: 作成時にはバージョンを 0 にする必要があります。

現在のアカウントのすべてのライセンスルールの概要を返します。

ライセンスルールの概要を取得するには、これを使用します。返されるデータ転送オブジェクト(DTO)には、制約、一致条件、または権限付与は含まれません。

URL

 http://<host>:<port>/controller/mds/v1/license/rules

形式

GET /controller/mds/v1/license/rules

[
{
"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
}
]

ライセンスルールを更新する

URL

 http://<host>:<port>/controller/mds/v1/license/rules

形式

PUT /controller/mds/v1/license/rules

入力パラメータ

パラメータ名 Parameter Type 必須

id

文字列ID または名前を表す文字列。あり

license_module_type

文字列

ライセンスモジュールのタイプを表す文字列。

モジュールタイプ:

  • NetViz
  • マシンエージェント
  • SIM マシンエージェント
  • APM
あり

version

整数バージョン番号を示します。あり

number_of_licenses

整数必要なライセンス数を示す整数。あり

account_id

文字列アカウント名またはアカウント ID を提供します。あり

access_key

パスアカウントアクセスキーを提供します。あり

要求の例

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
}
注: ライセンスルールを更新するには、利用可能な GET メソッドのいずれかを使用してペイロードを取得します。アクセスキー、権限付与などを更新します。他のキーと値のペアは変更せずに PUT 要求を送信します。「version」は、GET 中のバージョンのままにする必要があります。これはインクリメントされます。

ライセンスルールを削除する

URL

http://<host>:<port>/controller/mds/v1/license/rules/f36e08e2-5f57-4b8c-9ad2-f18873adcd87

形式

DELETE /controller/mds/v1/license/rules/{id}

入力パラメータ

パラメータ名 Parameter Type 必須

LicenseRuleId

パス

ID によってライセンスルールを削除します。

あり

ID によるライセンスルールの取得

ライセンスルール ID によってライセンスルールを取得するには、これを使用します。

URL

http://<host>:<port>/mds/v1/license/rules/f36e08e2-5f57-4b8c-9ad2-f18873adcd87

形式

GET /mds/v1/license/rules/{licenseRuleId}

パス パラメータ

パラメータ名 Parameter Type 必須
licenseRuleId パスライセンスルールの UUID を取得します。あり

出力パラメータ

パラメータ名 Parameter Type 必須

id

文字列ID または名前を表す文字列。あり

version

整数バージョン番号を示します。あり

total_licenses

整数ライセンスの合計数を示す整数。あり

account_id

文字列アカウント名またはアカウント ID を提供します。あり

access_key

パスアカウントアクセスキーを提供します。あり

リクエスト
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
}
警告: 注:バージョンは UI または API からの更新のたびに更新されます。

アクセスキーごとにライセンスルールを取得する

URL

http://<host>:<port>/controller/mds/v1/license/rules/accessKey/account-accesskey-123

形式

GET /controller/mds/v1/license/rules/accessKey/{accessKey}

パス パラメータ

パラメータ名 Parameter Type 必須

access_key

パス

ライセンスルールに割り当てられているアクセスキーを取得します。

あり

出力パラメータ

パラメータ名 Parameter Type 必須

id

文字列ID または名前を表す文字列。あり

version

整数バージョン番号を示します。あり

total_licenses

整数ライセンスの合計数を示す整数。あり

account_id

文字列アカウント名またはアカウント ID を提供します。あり

リクエスト
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
}
]

名前ごとにライセンスルールを取得する

URL

http://<host>:<port>/controller/mds/v1/license/rules/name/Default

形式

GET /controller/mds/v1/license/rules/name/{name}

パス パラメータ

パラメータ名 Parameter Type 必須

name

パス

ライセンスルールの名前を取得します。

あり

出力パラメータ

パラメータ名 Parameter Type 必須

id

文字列ID または名前を表す文字列。あり

version

整数バージョン番号を示します。あり

total_licenses

整数ライセンスの合計数を示す整数。あり

account_id

文字列アカウント名またはアカウント ID を提供します。あり

リクエスト
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
}
]