Request Patch Reports ( v2025.4 and up )
Using the Patch Reports API to get reports on patch statistics
The Patch Reports API set provides a way to request a report on overall patch status.
Submitting a request for a patch comparison report
Making the request
The endpoint /api/report/patch-comparison is a POST endpoint that will generate a report in JSON format which is the equivalent of generating a report from the following menu:
SO level  > reports > status > PATCH APPROVALS AND INSTALLATIONS
The payload consists of fields and attributes of interest. the full set of attributes that can be requested is as follows:
{
  "installStatuses": [
    "Installed",
    "Not Installed",
    "Aborted",
    "Failed",
    "In Progress",
    "Installed With Errors"
  ],
  "patchApprovals": [
    "Approved for Install",
    "No Approval",
    "Not Approved",
    "Declined",
    "Approved for Removal"
  ],
  "patchCategories": [
    "Applications",
    "Critical Updates",
    "Security Updates",
    "Definition Updates",
    "Drivers",
    "Feature Packs",
    "Service Packs",
    "Third Party",
    "Tools",
    "Update Rollups",
    "Updates",
    "Upgrades"
  ],
  "startDate": "2025-08-01"
}Processing the response
The response that comes back includes a report id which can be used to check the status of the report generation and eventually to get the results
{
  "reportId": 575523,
  "reportStatus": "IN_PROGRESS",
  "message": "Patch comparison report is being generated in the background.",
  "data": null
}Checking the status of the report
The GET /api/report/{reportid} endpoint can be used to get the status of the report being generated and eventually to get the results.
While the report is being generated , the response will be the same.
{
  "reportId": 575523,
  "reportStatus": "IN_PROGRESS",
  "message": "Patch comparison report is being generated in the background.",
  "data": null
}Once the report is complete the output will include all the requested statistics on patch status.
{
  "reportId": 575523,
  "reportStatus": "COMPLETED",
  "message": "Patch comparison report generated successfully.",
  "data": {
    "deviceClassSummaries": [
      {
        "deviceClass": "Laptops - Windows",
        "approvalStatusCounts": {
          "declined": 2004,
          "notApproved": 7,
          "approvedForRemoval": 7,
          "noApproval": 150,
          "approvedForInstall": 6424
        }
      },
      {
        "deviceClass": "Workstations - Windows",
        "approvalStatusCounts": {
          "declined": 414,
          "notApproved": 12,
          "approvedForRemoval": 1,
          "noApproval": 53,
          "approvedForInstall": 2975
        }NOTES
The API User that can generate the report should be created at the SO level. This matches the behaviour of the UI where the option to create patch reports is only available at the SO level.
Updated 1 day ago