Citrix Cloud Licensing

Troubleshooting Citrix cloud licensing APIs

An unsuccessful Citrix cloud licensing API request returns the following information in the response body:

  • Type: A link to the standard HTTP response code.
  • Details: A brief description of the error.
  • Error_Description: An optional string object to provide the service response error description.

    Sample API error response

            {
                "type": "404",
                "detail": "resource not found",
                "parameters":
                {
                "name": "entityType",
                "value": "the request URL"
                }
            }
<!--NeedCopy-->

API 1: GET/ license/enterprise/cloud/cvad/ud/historicalusage

  • This API is called to get historical usage for Citrix DaaS (formerly Citrix Virtual Apps and Desktops service) UserDevice model in the specified time range.

GET query parameters

  • startDate
    • Start date from which userdevice historical usage to be retrived.
    • Should be specified as yyyy-MM.
  • endDate
    • End date to which userdevice historical usage to be retrived.
    • Should be specified as yyyy-MM.

Response codes

The following section lists the response codes for the APIs with examples.

200 OK

  • GET/ license/enterprise/cloud/cvad/ud/historicalusage

Records retrived successfully

{
    "customerId": "xingqit48867",
    "historicalUsageType": "Monthly",
    "productEdition": "XAXDFull",
    "xenAppXenDesktopHistoricalUsageList": [
        {
            "cumulativeAssignedCount": 3,
            "newAssignedCount": 0,
            "totalAvailableLicenseCount": 50,
            "timeStamp": "2021-10-01T00:00:00.0000000Z",
            "releasedCount": 0
        },
        {
            "cumulativeAssignedCount": 3,
            "newAssignedCount": 0,
            "totalAvailableLicenseCount": 50,
            "timeStamp": "2021-11-01T00:00:00.0000000Z",
            "releasedCount": 0
        },
        {
            "cumulativeAssignedCount": 3,
            "newAssignedCount": 0,
            "totalAvailableLicenseCount": 25,
            "timeStamp": "2021-12-01T00:00:00.0000000Z",
            "releasedCount": 0
        }
    ],
    "historicalUsageList": [
        {
            "timeStamp": "2021-10-01T00:00:00.0000000Z",
            "totalAvailableLicenseCount": 50,
            "deviceLicenseUsage": {
                "cumulativeAssignedCount": 3,
                "newAssignedCount": 0,
                "releasedCount": 0
            },
            "userLicenseUsage": {
                "cumulativeAssignedCount": 3,
                "newAssignedCount": 0,
                "releasedCount": 0
            }
        },
        {
            "timeStamp": "2021-11-01T00:00:00.0000000Z",
            "totalAvailableLicenseCount": 50,
            "deviceLicenseUsage": {
                "cumulativeAssignedCount": 3,
                "newAssignedCount": 0,
                "releasedCount": 0
            },
            "userLicenseUsage": {
                "cumulativeAssignedCount": 3,
                "newAssignedCount": 0,
                "releasedCount": 0
            }
        },
        {
            "timeStamp": "2021-12-01T00:00:00.0000000Z",
            "totalAvailableLicenseCount": 25,
            "deviceLicenseUsage": {
                "cumulativeAssignedCount": 3,
                "newAssignedCount": 0,
                "releasedCount": 0
            },
            "userLicenseUsage": {
                "cumulativeAssignedCount": 3,
                "newAssignedCount": 0,
                "releasedCount": 0
            }
        }
    ]
}
<!--NeedCopy-->

400 Validation errors

If the parameters are provided incorrectly, the following error occurs:

  • GET/ license/enterprise/cloud/cvad/ud/historicalusage

Case 1: DateTime range is invalid

Error 1: If the startDate or endDate format is not set correctly. Should use this date format ‘yyyy-MM’

{
    "error_description": "{\"Code\":400,\"Message\":\"Invalid time format.\",\"Details\":\"Invalid time format.\"}"
}
<!--NeedCopy-->

Error 2: If the endDate is earlier than the startDate will retuen following error. Make sure the time interval is correct

{
     "error_description": "{\"Code\":400,\"Message\":\"StartDate can't be later than EndDate.\",\"Details\":\"StartDate can't be later than EndDate.\"}"
}   
<!--NeedCopy-->

401 Unauthorized

  • GET/ license/enterprise/cloud/cvad/ud/historicalusage

Case 1: If the authorization header is empty or missing the reason mentioned in the parameters value is missing

            {
                "type": "https://errors-api.cloud.com/common/authentication",
                "detail": "Missing or invalid authentication details",
                "parameters": [
                    {
                        "name": "reason",
                        "value": "missing"
                    }
                ]
            }
<!--NeedCopy-->

Case 2: If the authorization header is invalid the reason mentioned in the parameters value is invalid

            {
                "type": "https://errors-api.cloud.com/common/authentication",
                "detail": "Missing or invalid authentication details",
                "parameters": [
                    {
                        "name": "reason",
                        "value": "invalid"
                    }
                ]
            }
<!--NeedCopy-->

403 Forbidden

If the authorization details are provided incorrectly in the header then following error occurs:

  • GET/ license/enterprise/cloud/cvad/ud/historicalusage

Case 1: Customer (Bearer Token) details are not correct

            {
                "type": "https://errors-api.cloud.com/common/authorization",
                "detail": "Access denied"
            }
<!--NeedCopy-->

404 Not found

  • GET/ license/enterprise/cloud/cvad/ud/historicalusage

Case 1: In case the url is not as per the swagger document

            {
                "type": "https://errors-api.cloud.com/licensing/notFound",
                "detail": "resource not found",
                "parameters": [
                    {
                        "name": "entityType",
                        "value": "/personalizati"
                    }
                ]
            }
<!--NeedCopy-->

500 Internal server error

Report these errors directly to the engineering team to help resolve the issues. Take a note of the customer ID and Transaction ID from the customer to troubleshoot further.

  • GET/ license/enterprise/cloud/cvad/ud/historicalusage

Case 1: Server Errors

            {
                "type": "https://errors-api.cloud.com/systemlog/internalerror",
                "detail": "There was a internal issue"
            }
<!--NeedCopy-->
Resources
Citrix Cloud Licensing OpenAPI Specification
Copy Download
Troubleshooting Citrix cloud licensing APIs