Retrieve resource-wise shortfall breakdown for license limits

Open in ChatGPT Open in ChatGPT to ask questions about this page
Open in Claude Open in Claude to ask questions about this page
Copy as MarkdownCopy this page as markdown to use with AI assistants
View as Markdown Open this page as markdown in a new tab

Returns a per-resource shortfall breakdown when license limits are exceeded. Typically called after Get License Meta reports a limit reached. Super-admin access required; non-super-admins receive HTTP 401.

Endpoint

Request URL

https://{serverurl}/dcapi/license/shortfall Copied!

Scope

DesktopCentralCloud.Admin.READCopied!

Header

Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52

Request Parameters

- Request Headers

AcceptstringMandatory
application/licenseShortfallStatus.v1+jsonapplication/licenseShortfallStatus.v1+jsonCopied!

Sample Request

Curl
Java
Python
Deluge
PowerShell
Copied!
curl --request GET \
  --url https://appdomains/dcapi/license/shortfall \
  --header 'Accept: application/licenseShortfallStatus.v1+json' \
  --header 'Authorization: Zoho-oauthtoken  d92d4xxxxxxxxxxxxx15f52'

Response Parameters

- HTTP code 200

Response Body - application/json
JSON Object
Hide Sub-Attributes
countDetailsJSON Array

Array of per-resource shortfall entries with type, purchased, managed, and shortfall counts. Present only when shortfall exists.

Show Sub-Attributes
JSON Object
Show Sub-Attributes
typestring

Resource name: users, computers, endpoints, servers, systems, mdmDevices, or any add-on key (e.g. osdComputers).

purchasedinteger

Purchased count for this resource.

managedinteger

Currently managed count for this resource.

shortfallinteger

Shortfall amount (managed minus purchased). Present only when there is a positive shortfall.

typestring

Resource name: users, computers, endpoints, servers, systems, mdmDevices, or any add-on key (e.g. osdComputers).

purchasedinteger

Purchased count for this resource.

managedinteger

Currently managed count for this resource.

shortfallinteger

Shortfall amount (managed minus purchased). Present only when there is a positive shortfall.

JSON Object
Show Sub-Attributes
typestring

Resource name: users, computers, endpoints, servers, systems, mdmDevices, or any add-on key (e.g. osdComputers).

purchasedinteger

Purchased count for this resource.

managedinteger

Currently managed count for this resource.

shortfallinteger

Shortfall amount (managed minus purchased). Present only when there is a positive shortfall.

typestring

Resource name: users, computers, endpoints, servers, systems, mdmDevices, or any add-on key (e.g. osdComputers).

purchasedinteger

Purchased count for this resource.

managedinteger

Currently managed count for this resource.

shortfallinteger

Shortfall amount (managed minus purchased). Present only when there is a positive shortfall.

productJSON Object

Product migration context showing the edition transition (from/to) and product details.

Show Sub-Attributes
typestring

Migration type identifier. Value is always 'INTERNAL'.

fromJSON Object

The previous product edition before the migration.

Show Sub-Attributes
productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

toJSON Object

The current/target product edition after the migration.

Show Sub-Attributes
productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

typestring

Migration type identifier. Value is always 'INTERNAL'.

fromJSON Object

The previous product edition before the migration.

Show Sub-Attributes
productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

toJSON Object

The current/target product edition after the migration.

Show Sub-Attributes
productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

productNamestring

Product code identifier.

productDisplayNamestring

Human-readable product name (e.g. 'Endpoint Central Cloud').

editionstring

License edition name (e.g. 'Enterprise', 'Professional', 'Free').

isDowngradeboolean

True when the license edition has been downgraded (e.g. UEM to Enterprise, Enterprise to Professional). Present only when a downgrade has occurred.

licenseUpgradeStatusboolean

True when no shortfall blocks the upgrade/migration flow; false when shortfall exists and must be resolved first.

- HTTP code 401

Response Body - application/json
JSON Object
Hide Sub-Attributes
responseStatusstring

Message describing why access was denied. Returned when the caller is not a super admin.

errorCodestring

Stable error code for the client to switch on. Only super admins can access shortfall data.

- HTTP code 500

Response Body - application/json
JSON Object
Hide Sub-Attributes
error_codeinteger

Error code. 1001 indicates an unexpected failure while fetching shortfall details.

error_descriptionstring

Human-readable error message describing the failure.

Sample Response: HTTP 200

Shortfall with endpoint/server/user count details

Copied!
  {
    "product": {
      "from": {
        "productDisplayName": "Endpoint Central Cloud",
        "edition": "Enterprise",
        "productName": "DCODEE"
      },
      "to": {
        "productDisplayName": "Endpoint Central Cloud",
        "edition": "Free",
        "productName": "DCODEE"
      },
      "type": "INTERNAL"
    },
    "countDetails": [
      {
        "shortfall": 20,
        "purchased": 100,
        "managed": 120,
        "type": "endpoints"
      },
      {
        "shortfall": 5,
        "purchased": 10,
        "managed": 15,
        "type": "servers"
      },
      {
        "shortfall": 2,
        "purchased": 5,
        "managed": 7,
        "type": "users"
      }
    ],
    "isDowngrade": true,
    "licenseUpgradeStatus": false
  }
                
▼ Show full

No shortfall

Copied!
  {
    "product": {
      "from": {
        "productDisplayName": "Endpoint Central Cloud",
        "edition": "Enterprise",
        "productName": "DCODEE"
      },
      "to": {
        "productDisplayName": "Endpoint Central Cloud",
        "edition": "Enterprise",
        "productName": "DCODEE"
      },
      "type": "INTERNAL"
    },
    "licenseUpgradeStatus": true
  }
                
▼ Show full

Sample Response: HTTP 401

Caller is not a super admin

Copied!
  {
    "errorCode": "BUY_LICENSE_SUPER_ADMIN",
    "responseStatus": "Please contact your Super Admin to buy your License."
  }
                
▼ Show full

Sample Response: HTTP 500

Unexpected server error

Copied!
  {
    "error_description": "An internal error occurred while processing the request.",
    "error_code": 1001
  }
                
▼ Show full

Duration: 1 minute | Threshold: 30 | Lock period: 5 minutes

Duration - Time window for the threshold.
Threshold - Number of API calls allowed within the specified duration.
Lock Period - Wait time before consecutive API requests.