# Get License Key Info Request

This request is designed for gathering resource usage statistics per each license from the ISV endpoint.

## Request

The HTTP POST is made for a specified endpoint with the following parameters:

Name | Size (Characters) | Description
--- | --- | ---
APS_PROTOCOL_MODEL | 1 | Always 3 for “get info” requests.
APS_ACTION | up to 30 | Always GET-INFO for “get info” requests.
APS_TEST_MODE | 1 | See the description in License Creation/Renewal/Upgrade Request > Request
PURCHASE_ID | up to 10 | See the description in License Creation/Renewal/Upgrade Request > Request
PRODUCT_ID | up to 30 | See the description in License Creation/Renewal/Upgrade Request > Request
REG_NAME | up to 100 | See the description in License Creation/Renewal/Upgrade Request > Request

Notes:

- Ordering of the fields is not guaranteed.
- Additional fields might be added in future. In case an unknown field is encountered while processing the request, the implementation should ignore it (i.e., process the request as if such field is absent).

## Response

In case the request is successfully processed, the implementation should send a response with the status code 200 OK. The following table describes the data being returned in the successful response:

Location | Meaning | Comments
--- | --- | ---
Response body | Resource usage statistics |

In case the request fails, the implementation should return an appropriate status code and a brief explanation on the reasons of the failure.

The recommended response codes are:

Status Code | Possible Reasons | KA Responsibility
--- | --- | ---
200 OK | Getting “key info” is successful | Get response body, extract usage statistics from it, and store the statistics in the KA database
4xx | See the description in License Creation/Renewal/Upgrade Request > Response |
5xx |  |

## Examples

Correct request:

    POST /handler.php HTTP/1.1
    Accept: */*
    Content-Type: application/x-www-form-urlencoded
    Host: isv.endpoint.example.org
    Authorization: Basic am9objpxd2UxMjM=

    APS_PROTOCOL_MODEL=3&APS_ACTION=GET-INFO&APS_TEST_MODE=N&PURCHASE_ID=12345678&PRODUCT_ID=someproduct1&REG_NAME=54321

Successful response with “key info” in the response body:

    HTTP/1.1 200 OK
    Date: Thu, 01 Sep 2016 15:02:10 GMT
    Server: Web Server
    Content-Type: application/json; charset=UTF8

    {
      "version": "isv-reportable-1",
      "usage":
      {
        "usedAccounts" : 20,
        "usedClusters" : 4
      }
    }

The correct response must meet the following requirements:

- Field “version” must always be equal to `"isv-reportable-1"`.
- All fields should always be present. If there is no data, zero values should be used.
- Values must be non-negative integers.