GET /updatableComponents

Use the GET method to retrieve the status of firmware updates that are in progress or retrieve a list of devices and components that can be updated..

Authentication

Authentication with user name and password is required.

Request URL

GET https://<management_server_IP>/updatableComponents

Query parameters

Parameters Required / Optional Description
action=<data> Optional The data to return. This can be one of the following values.
  • getComponents. Returns a list of devices and components that can be updated.

  • applyStatus. (default) Returns the status of firmware updates that are in progress.

The following example returns a list of updatable devices and components.
GET https://192.0.2.0/updatableComponents?action=getComponents
The following example returns the status of firmware update jobs.
GET https://192.0.2.0/updatableComponents

Response codes

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

Response body

Table 1. Returns a list of devices and components that can be updated.
Attributes Type Description
DeviceList Array of objects List of devices that are being updated
  CMMList Array of objects List of CMM components
    componentName String CMM component name
    uuid String CMM component UUID
  ServerList Array of objects List of server components
    componentName Array Server component name
    uuid String Server component UUID
  StorageList Array of objects List of storage components
    componentName Array Storage component name
    uuid String storage component UUID
  SwitchList Array of objects List of switch components
    componentName Array switch component name
    uuid String switch component UUID
Table 2. Returns the status of firmware updates that are in progress.
Attributes Type Description
DeviceList Array of objects List of devices that are being updated
  CMMList Object List of CMMs
    UpdateStatus Array Status of the firmware update
      JobID Integer  
      PercentComplete Integer  
      Phase String Update phase. This can be one of the following values.
  • Activating

  • Applying

  • Canceling

  • Complete

  • Completing

  • Initializing

  • Entering

  • Executing

  • Extracting

  • Pending

  • Performing

  • Preparing

  • Processing

  • Queued

  • Restarting

  • Starting

  • Transferring

  • Unknown

  • Validating

  • Waiting

      StartTime String  
      State String Update state. This can be one of the following values.
  • Blocked

  • Cancel

  • Complete

  • Inprogress

  • Notstarted

  • Return

      Status String Update status. This can be one of the following values.
  • Active

  • Inactive

      TaskID Integer  
    UUID String CMM UUID
  ServerList Object List of servers
    Components Object List of server components
      Component String  
      UpdateStatus Array  
        JobID Integer  
        PercentComplete Integer  
        Phase String Update phase. This can be one of the following values.
  • Activating

  • Applying

  • Canceling

  • Complete

  • Completing

  • Initializing

  • Entering

  • Executing

  • Extracting

  • Pending

  • Performing

  • Preparing

  • Processing

  • Queued

  • Restarting

  • Starting

  • Transferring

  • Unknown

  • Validating

  • Waiting

        State String Update state. This can be one of the following values.
  • Blocked

  • Cancel

  • Complete

  • Inprogress

  • Notstarted

  • Return

        Status String Update status. This can be one of the following values.
  • Active

  • Canceled

  • Failed

  • Hardware_Not_Present

  • Skip_Already_Applied

  • Skip_Already_Compliant

  • Skip_Do_Not_Update

  • Queued

  • Succeed

        TaskID Integer  
      UpdateStatus Array  
        CurrentComponent Array  
          Component String This can be one of the following values.
  • Queued
        PercentComplete Integer  
        State String This can be one of the following values.
  • Blocked

  • Cancel

  • Complete

  • Inprogress

  • Notstarted

  • Return

        Status String This can be one of the following values.
  • Active

  • Inactive

        TotalComponents Integer Total number of components to be updated
        TotalComplete Integer Total number of completed updates
      Weight Integer  
    UUID String Switch UUID
  StorageList Array of objects List of switches
    UpdateStatus Array Status of the firmware update
      JobID Integer  
      PercentComplete Integer  
      Phase String This can be one of the following values.
  • Activating

  • Applying

  • Canceling

  • Complete

  • Completing

  • Initializing

  • Entering

  • Executing

  • Extracting

  • Pending

  • Performing

  • Preparing

  • Processing

  • Queued

  • Restarting

  • Starting

  • Transferring

  • Unknown

  • Validating

  • Waiting

      State String This can be one of the following values.
  • Blocked

  • Cancel

  • Complete

  • Inprogress

  • Notstarted

  • Return

      Status String This can be one of the following values.
  • Active

  • Inactive

      TaskID Integer  
    UUID String Storage device UUID
  SwitchList Array of objects List of switches
    ReadinessCheck Object  
      ElapsedTime String  
      ElapsedTimeFormatted String  
      EndTime String  
      JobID Integer Job ID
      PercentComplete Integer  
      Phase String This can be one of the following values.
  • Activating

  • Applying

  • Canceling

  • Complete

  • Completing

  • Initializing

  • Entering

  • Executing

  • Extracting

  • Pending

  • Performing

  • Preparing

  • Processing

  • Queued

  • Restarting

  • Starting

  • Transferring

  • Unknown

  • Validating

  • Waiting

      StartTime String  
      State String This can be one of the following values.
  • Blocked

  • Cancel

  • Complete

  • Inprogress

  • Notstarted

  • Return

      Status String This can be one of the following values.
  • Active

  • Inactive

      TaskID Integer Subtask ID
      Message Object  
        result String Result of the request. This can be one of the following values.
  • informational. The request completed successfully.

        messages Array of objects Information about one or more messages
          id String Message identifier of a returned message
          text String Message text that is associated with the message identifier
          explanation String  
    UpdateStatus Array Status of the firmware update
      EndTime String  
      JobID Integer  
      PercentComplete Integer  
      Phase String This can be one of the following values.
  • Activating

  • Applying

  • Canceling

  • Complete

  • Completing

  • Initializing

  • Entering

  • Executing

  • Extracting

  • Pending

  • Performing

  • Preparing

  • Processing

  • Queued

  • Restarting

  • Starting

  • Transferring

  • Unknown

  • Validating

  • Waiting

      State String This can be one of the following values.
  • Blocked

  • Cancel

  • Complete

  • Inprogress

  • Notstarted

  • Return

      Status String This can be one of the following values.
  • Active

  • Inactive

      TaskID Integer  
      Message Object  
        result String Result of the request. This can be one of the following values.
  • informational. The request completed successfully.

        messages Array of objects Information about one or more messages
          id String Message identifier of a returned message
          text String Message text that is associated with the message identifier
          explanation String  
    UUID String Switch UUID
UpdateStatusMetrics Array  
  TotaldeviceUpdates Integer  
  TotaldeviceUpdatesActive Integer  
  TotaldeviceUpdatesComplete Integer  
  TotaldeviceUpdatesInProgress Integer  
  TotalJobs Integer Total number of jobs
  TotalJobsComplete Integer Number of completed jobs
  TotalJobsInProgress Integer  
  TotalJobsPercentComplete Integer  
  TotalSupportTasks Integer  
  TotalSupportTasksActive Integer  
  TotalTasks Integer Total number of tasks
  TotalTasksBlocked Integer  
  TotalTasksCanceled Integer  
  TotalTasksComplete Integer  
  TotalTasksFailed Integer  
  TotalTasksInProgress Integer  
  TotalTasksSuccess Integer  
  TotalUpdateTasksActive Integer  
  TotalUpdateTasks Integer  
result String Request results. This can be one of the following values.
  • informational. The request completed successfully.

messages Array of objects Information about one or more messages
  id String Message identifier of a returned message
  text String Message text that is associated with the message identifier

Response example

The following example is returned if you specify query=status.

{
   "DeviceList": [{
      "CMMList": [{
         "UpdateStatus": {
            "JobID": 1,
            "PercentComplete": 1,
            "Phase": "Applying",
            "StartTime": "2015-04-13 12:50:31.077",
            "State": "InProgress",
            "Status": "Active",
            "TaskID": 1,
         },
         "UUID": "6134AFCEA91311E199A5A45AC8953137"
      }]
   },
   {
      "ServerList": [{
         "UUID": "8BFBADCC33CB11E499F740F2E9903640",
         "Components": [{
            "Component": "System Prerequisites",
            "UpdateStatus": {
               "JobID": 1,
               "PercentComplete": 0,
               "Phase": "Queued",
               "State": "Blocked",
               "Status": "Queued",
               "TaskID": 4,
            },
            "Weight": 1
         },
         ...,
         {
            "Component": "ITE",
            "UpdateStatus": {
               "CurrentComponent": {
                  "Component": "Queued"
               },
               "PercentComplete": 0,
               "State": "NotStarted",
               "Status": "Active",
               "TotalComplete": 0,
               "TotalComponents": 32
            }
         }]
      },
      ...,
      {
         "UUID": "0CDF130FDFC211E392806CAE8B704250",
         "Components": [{
            "Component": "System Prerequisites""UpdateStatus": {
               "JobID": 1,
               "PercentComplete": 0,
               "Phase": "Queued",
               "State": "Blocked",
               "Status": "Queued",
               "TaskID": 64
            },
            "Weight": 1,
            
         },
         ...,
         {
            "Component": "ITE",
            "UpdateStatus": {
               "CurrentComponent": {
                  "Component": "Queued"
               },
               "PercentComplete": 0,
               "State": "NotStarted",
               "Status": "Active",
               "TotalComplete": 0,
               "TotalComponents": 30
            }
         }]
      }]
   },
   {
      "SwitchList": [{
         "ReadinessCheck": {
            "ElapsedTime": "00:00:00:01.509",
            "ElapsedTimeFormatted": "1 second 509 milliseconds",
            "EndTime": "2016-04-07 23:44:10.366",
            "JobID": 1,
            "PercentComplete": 100,
            "Phase": "Complete",
            "StartTime": "2016-04-07 23:44:08.857",
            "State": "Complete",
            "Status": "Failed",
            "TaskID": 1,
            "Message": {
               "result": "informational",
               "messages": [{
                  "id": "FQXHMUP1000I",
                  "text": "The command completed successfully."
               },
               ...,
               {
                  "id": "FQXHMUP4545L",
                  "text": "The device is not ready for an update.",
                  "explanation": "The device did not pass validation for firmware updates..",
                  "recovery": {
                     "text": "Correct the issues discovered by validation checks."
                  }
               }]
            }
         },
         "UpdateStatus": {
            "EndTime": "2016-04-07 23:44:10.869",
            "JobID": 1,
            "PercentComplete": 100,
            "Phase": "Complete",
            "State": "Complete",
            "Status": "Canceled",
            "TaskID": 3,
            "Message": {
               "result": "warning",
               "messages": [{
                  "id": "FQXHMUP4086F",
                  "text": "The RackSwitch G7052 xHMCUpdates task was canceled.",
                  "explanation": "The task was canceled because the required task RackSwitch G7052 
                                  xHMCUpdates (10.243.1.152):  READINESSCHECK:   (jobid_1-taskid_1) 
                              that this task depends on did not complete successfully.",
                  "recovery": {
                     "text": "Try to perform the update again.  If the problem persists, please 
                              contact Customer Support."
                  }
               }]
            }
         },
         "UUID": "0b0f5101bb8844b8b2d1c1aaeb24f446"
      }]
   }],
   "UpdateStatusMetrics": {
      "TotaldeviceUpdates": 6,
      "TotaldeviceUpdatesActive": 6,
      "TotaldeviceUpdatesComplete": 0,
      "TotaldeviceUpdatesInProgress": 1,
      "TotalJobs": 1,
      "TotalJobsComplete": 0,
      "TotalJobsInProgress": 1,
      "TotalJobsPercentComplete": 0,
      "TotalSupportTasks": 18,
      "TotalSupportTasksActive": 18,
      "TotalTasks": 93,
      "TotalTasksBlocked": 92,
      "TotalTasksCanceled": 0,
      "TotalTasksComplete": 0,
      "TotalTasksFailed": 0,
      "TotalTasksInProgress": 1,
      "TotalTasksSuccess": 0,
      "TotalUpdateTasks": 75,
      "TotalUpdateTasksActive": 72
   },
   "result": "informational",
   "messages": [{
      "id": "FQXHMUP4091I",
      "text": "Update Status was obtained successfully."
   }]
}