{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/snow-software/json-schema/snow-software-computer-applications-details-schema.json",
  "title": "ComputerApplicationsDetails",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/snow-software-computer-applications-api-openapi.yml#/components/schemas/ComputerApplicationsDetails",
  "allOf": [
    {
      "$ref": "#/$defs/BaseResponse"
    },
    {
      "type": "object",
      "description": "Response class for computer application details.",
      "additionalProperties": false,
      "required": [
        "computerId",
        "applicationId"
      ],
      "properties": {
        "computerId": {
          "type": "string",
          "description": "The unique ID of the computer.",
          "format": "guid"
        },
        "applicationId": {
          "type": "string",
          "description": "The unique ID of the application.",
          "format": "guid"
        },
        "bundleApplicationId": {
          "type": [
            "string",
            "null"
          ],
          "description": "The unique ID of the application bundle, or product suite, for a given application.",
          "format": "guid"
        },
        "firstDiscovered": {
          "type": [
            "string",
            "null"
          ],
          "description": "The date when the application was first discovered on the computer.",
          "format": "date-time"
        },
        "firstUsed": {
          "type": [
            "string",
            "null"
          ],
          "description": "The date when the application was first used on the computer.",
          "format": "date-time"
        },
        "lastUsed": {
          "type": [
            "string",
            "null"
          ],
          "description": "The date when the application was last used on the computer.",
          "format": "date-time"
        },
        "usedCount": {
          "type": "integer",
          "description": "The number of times the application was used on the computer.",
          "format": "int32"
        },
        "usedUser": {
          "type": "integer",
          "description": "The number of users who used the application on the computer.",
          "format": "int32"
        },
        "usedMinutes": {
          "type": "integer",
          "description": "The number of minutes the application was used on the computer.",
          "format": "int64"
        },
        "usedDays": {
          "type": [
            "integer",
            "null"
          ],
          "description": "The number of days the application was used on the computer.",
          "format": "int32"
        },
        "isInstalled": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "```true``` if the application is installed on the computer; otherwise, ```false```."
        },
        "isOEM": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "```true``` if the application is OEM; otherwise, ```false```."
        },
        "isMSDN": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "```true``` if the application is MSDN; otherwise, ```false```."
        },
        "isVirtual": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "```true``` if the application is virtual; otherwise, ```false```."
        },
        "isOverridden": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "```true``` if the application is overridden; otherwise, ```false```."
        },
        "packageGUID": {
          "type": [
            "string",
            "null"
          ],
          "description": "The unique ID of the application package.",
          "format": "guid"
        },
        "isRecognized": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "```true``` if the application is recognized; otherwise, ```false```."
        },
        "isRegistry": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "```true``` if the application is in the registry; otherwise, ```false```."
        },
        "averageUsedTime": {
          "type": [
            "string",
            "null"
          ],
          "description": "The average time the application is used in hours.",
          "format": "date-time"
        },
        "unbundled": {
          "type": "boolean",
          "description": "```true``` if the application is licenced individualy; otherwise, ```false```."
        }
      }
    }
  ],
  "$defs": {
    "BaseResponse": {
      "type": "object",
      "description": "Base response class.",
      "additionalProperties": false,
      "required": [
        "_links"
      ],
      "properties": {
        "_links": {
          "type": "array",
          "description": "A collection of links to related resources.",
          "items": {
            "$ref": "#/$defs/Link"
          }
        }
      }
    },
    "Link": {
      "type": "object",
      "required": [
        "href",
        "rel",
        "method"
      ],
      "properties": {
        "href": {
          "type": "string",
          "description": "The associated relative URL."
        },
        "rel": {
          "type": "string",
          "description": "Specifies the relationship between the current document and the linked document/resource."
        },
        "method": {
          "type": "string",
          "description": "The method to access related resources."
        }
      }
    }
  }
}