GET /compliancePolicies/applicableFirmware

Use this GET method to retrieve firmware-compliance information for managed devices.

Note: This API requires Lenovo XClarity Administrator v1.2.0 or later.

Authentication

Authentication with user name and password is required.

Request URL

GET https://<management_server_IP>/compliancePolicies/applicableFirmware 

Query parameters

Parameters Required / Optional Description
refresh=<Boolean> Optional Indicates whether to refresh the firmware-compliance information for each specified device by comparing the compliance policies for each specified device against the latest available firmware repository. This can be one of the following values.
  • true. Refresh the firmware-compliance information for each specified device.
  • false. Return existing firmware-compliance information for each specified device.
uuids=<UUID_list> Optional Returns firmware-compliance information for one or more specific devices, specified by UUID and separated by a comma

To return information for all managed devices, specify all. This is the default value.

hasPayload=<Boolean> Optional Indicates whether to include firmware updates that do not have payload files available in the repository. This can be one of the following values.
  • true. Returns a list of the latest-available, applicable firmware updates in the repository that have downloaded payload files.

  • false. Returns a list of the latest-available, applicable firmware updates in the repository that do not have downloaded payload files.

If not specified, this method returns a list of the latest-available, applicable firmware updates in the repository regardless of whether the payload files are downloaded. This is the default behavior.

The following example returns existing compliance information for all managed devices. All applicable firmware updates in the repository are included in the response, regardless of whether the payload files are available in the repository.
GET https://192.0.2.0/compliancePolicies/applicableFirmware
The following example refreshes and returns the latest firmware-compliance information for two specific managed devices. All applicable firmware updates in the repository are included in the response, regardless of whether the payload files are available in the repository.
GET https://192.0.2.0/compliancePolicies/applicableFirmware?refresh=true
&uuids=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA,BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
The following example returns existing compliance information for all managed devices. Only applicable firmware updates that have payload files that are available in the repository are included in the response.
GET https://192.0.2.0/compliancePolicies/applicableFirmware?hasPayload=true
The following example returns existing compliance information for all managed devices. Only applicable firmware updates that do not have payload files in the repository are included in the response
GET https://192.0.2.0/compliancePolicies/applicableFirmware?hasPayload=false

Request body

None

Response codes

Code Description
200 OK
400 Bad request
403 Forbidden
409 Conflict
500 Internal server error

Response body

Attributes Type Description
componentTypes Array of objects Information for all managed devices
  applicableFirmware Array of objects Information applicable firmware updates for managed devices
    available Array Information about the available firmware-update packages
      buildNum String Package build number
      buildType String Build type
      fixid String Fix ID
      name String Package name
      hasPayload Boolean Indicates whether the payload files are in the repository. This can be one of the following values.
  • true.Payload files are in the repository.

  • false. Payload file are not in the repository.

      releasedate String Release date
      softwareIDList Array of strings List of software IDs
      version String Version
      versionList Array of strings List of all versions in the package
    category String Type of firmware update, such as IMM2, UEFI, Network, and ServeRAID
    name String Name of firmware update
  machineType String Machine type of managed device
  uuid String UUID of managed device

Response example

{
   "componentTypes": [{
      "applicableFirmware": [{
         "available": [{
            "buildNum": "TCOO15M",
            "buildType": "development",
            "fixid": "lnvgy_fw_imm2_tcoo15m-2.50_anyos_noarch",
            "hasPayload": true,
            "name": "Integrated Management Module 2 (IMM2) Update",
            "releasedate": "2016-01-09",
            "softwareIDList": ["IMM2-Backup"],
            "version": "2.50",
            "versionList": ["2.50"]
         }],
         "category": "IMM2-Backup",
         "installedVersion": "1.95",
         "name": "IMM2 (Backup)"
      }],
      "machineType": "5463",
      "uuid": "208C0140DF7F11D4AE0FF3F3F3797979"
   }]
}