Resource: chassis
A single chassis
http://{device}/api/npm.hardware_monitor/1.1/chassis/items/{serial_number}
{ "availability": string, "columns": integer, "headunit": boolean, "health": string, "model": string, "rows": integer, "sensor_status": { "cpus": [ cpu ], "exhaust_air_sensors": [ exhaust_air_sensor ], "intake_air_sensors": [ intake_air_sensor ], "power_supplies": [ power_supply ], "raid_controllers": [ raid_controller ], "storage_unit_controllers": [ storage_unit_controller ], "system_fans": [ system_fan ] }, "serial_number": string, "unused_slots": [ [ integer ] ] }
Property Name | Type | Description | Notes |
---|---|---|---|
chassis | <object> | A single chassis | |
availability | <string> | Chassis availability | Read-only; Values: ok, missing, foreign, invalid; |
chassis.columns | <integer> | The number of columns of disk slots on the chassis. '0' is at the left. | Read-only; Optional; Minimum 0; |
chassis.headunit | <boolean> | Indicates whether this is the head unit chassis. | Read-only; Optional; |
health | <string> | Health status | Read-only; Values: ok, notice, failing, failed; |
chassis.model | <string> | Chassis model | Read-only; Optional; |
chassis.rows | <integer> | The number of rows of disk slots on the chassis. '0' is at the top. | Read-only; Optional; Minimum 0; |
chassis.sensor_status | <object> | Status of the sensors on the chassis. Available sensors varies based on chassis model. | Optional; |
chassis.sensor_status.cpus | <array of <cpu>> | List of CPU sensors | Optional; |
chassis.sensor_status.cpus[items] | <cpu> | CPU sensor data | |
chassis.sensor_status. exhaust_air_sensors |
<array of <exhaust_air_sensor>> | List of chassis air exhaust sensors | Optional; |
chassis.sensor_status. exhaust_air_sensors[items] |
<exhaust_air_sensor> | Chassis air exhaust sensor data | |
chassis.sensor_status.intake_air_sensors | <array of <intake_air_sensor>> | List of chassis air intake sensors | Optional; |
chassis.sensor_status.intake_air_sensors [items] |
<intake_air_sensor> | Chassis air intake sensor data | |
chassis.sensor_status.power_supplies | <array of <power_supply>> | List of power supply sensors | Optional; |
chassis.sensor_status.power_supplies [items] |
<power_supply> | Power supply sensor data | |
chassis.sensor_status.raid_controllers | <array of <raid_controller>> | List of RAID controller sensors | Optional; |
chassis.sensor_status.raid_controllers [items] |
<raid_controller> | RAID controller sensor data | |
chassis.sensor_status. storage_unit_controllers |
<array of <storage_unit_controller>> | List of storage unit controller sensors | Optional; |
chassis.sensor_status. storage_unit_controllers[items] |
<storage_unit_controller> | Storage unit controller sensor data | |
chassis.sensor_status.system_fans | <array of <system_fan>> | List of system fan sensors | Optional; |
chassis.sensor_status.system_fans[items] | <system_fan> | System fan sensor data | |
serial_number | <string> | Chassis serial number | Read-only; |
chassis.unused_slots | <array of <array of <integer>>> | A list of positions in the disk grid that are unused | Optional; |
chassis.unused_slots[items] | <array of <integer>> | A list of [row, column] pairs representing an unused disk location | |
chassis.unused_slots[items][items] | <integer> | A row or column index |
Links
chassis: get
GET http://{device}/api/npm.hardware_monitor/1.1/chassis/items/{serial_number}Response Body
Returns a chassis data object.
Relations
chassis: disks
Related resource VariablesRelated var | Data value for replacement |
---|---|
chassis | 0/serial_number |
Resource: chassis_list
All chassis known to the system
http://{device}/api/npm.hardware_monitor/1.1/chassis{?availability}
{ "items": [ chassis ] }
Property Name | Type | Description | Notes |
---|---|---|---|
chassis_list | <object> | All chassis known to the system | |
chassis_list.items | <array of <chassis>> | List of chassis | Optional; |
chassis_list.items[items] | <chassis> | A single chassis |
Links
chassis_list: get
GET http://{device}/api/npm.hardware_monitor/1.1/chassis{?availability}Response Body
Returns a chassis_list data object.
Resource: disk
A single disk
http://{device}/api/npm.hardware_monitor/1.1/disks/items/{id}
{ "blink": boolean, "chassis": string, "device_type": string, "disk_type": string, "health": string, "id": string, "location": { "column": integer, "label": string, "row": integer }, "model": string, "serial_number": string, "size_mb": integer, "status": string }
Property Name | Type | Description | Notes |
---|---|---|---|
disk | <object> | A single disk | Required properties: [id, blink]; |
disk.blink | <boolean> | Set to true to blink the drive for identification | |
chassis | <string> | Chassis identifier | Read-only; |
disk.device_type | <string> | The type of device this is | Read-only; Optional; Values: disk; |
disk.disk_type | <string> | Disk technology | Read-only; Optional; |
health | <string> | Health status | Read-only; Values: ok, notice, failing, failed; |
disk.id | <string> | A unique identifier for this disk's slot on this system. | Read-only; |
location | <object> | The location of a disk in a chassis | Read-only; |
location.column | <integer> | Disk column | Read-only; Optional; Minimum 0; |
location.label | <string> | Disk label | Read-only; Optional; |
location.row | <integer> | Disk row | Read-only; Optional; Minimum 0; |
disk.model | <string> | Model string of the disk | Read-only; Optional; |
disk.serial_number | <string> | Unique identifier of the disk | Read-only; Optional; |
disk.size_mb | <integer> | Size of the disk in mebibytes | Read-only; Optional; |
status | <string> | Status of a disk | Read-only; Values: ok, failed, failing, rebuilding, missing, invalid, new; |
Links
disk: get
GET http://{device}/api/npm.hardware_monitor/1.1/disks/items/{id}Response Body
Returns a disk data object.
disk: set
PUT http://{device}/api/npm.hardware_monitor/1.1/disks/items/{id}Request Body
Provide a disk data object.
Response BodyReturns a disk data object.
Relations
disk: chassis
All chassis in the system
Related resource VariablesRelated var | Data value for replacement |
---|---|
serial_number | 0/chassis |
Resource: disks
All disks known to the system
http://{device}/api/npm.hardware_monitor/1.1/disks{?status,serial_number,chassis,disk_type}
{ "items": [ disk ] }
Property Name | Type | Description | Notes |
---|---|---|---|
disks | <object> | All disks known to the system | |
disks.items | <array of <disk>> | List of disks | Optional; |
disks.items[items] | <disk> | A single disk |
Links
disks: get
GET http://{device}/api/npm.hardware_monitor/1.1/disks{?status,serial_number,chassis,disk_type}Response Body
Returns a disks data object.
Resource: hardware_health
Overall hardware health
http://{device}/api/npm.hardware_monitor/1.1/status
{ "status": string }
Property Name | Type | Description | Notes |
---|---|---|---|
hardware_health | <object> | Overall hardware health | |
status | <string> | Health status | Read-only; Values: ok, notice, failing, failed; |
Links
hardware_health: get
GET http://{device}/api/npm.hardware_monitor/1.1/statusResponse Body
Returns a hardware_health data object.
hardware_health: refresh
Force a refresh of hardware status
POST http://{device}/api/npm.hardware_monitor/1.1/status/refreshRequest Body
Do not provide a request body.
Response BodyOn success, the server does not provide any body in the responses.
Type: chassis_availability
Chassis availability
string
Property Name | Type | Description | Notes |
---|---|---|---|
chassis_availability | <string> | Chassis availability | Values: ok, missing, foreign, invalid; |
Type: cpu
CPU sensor data
{ "name": string, "status": sensor_status, "status_msg": string, "temperature": sensor_temperature }
Property Name | Type | Description | Notes |
---|---|---|---|
cpu | <object> | CPU sensor data | Required properties: [status, name, status_msg, temperature]; |
cpu.name | <string> | The CPU name | |
cpu.status | <sensor_status> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
cpu.status_msg | <string> | The CPU status | |
cpu.temperature | <sensor_temperature> | Temperature sensor data |
Type: device_id
A generic device identifier
string
Property Name | Type | Description | Notes |
---|---|---|---|
device_id | <string> | A generic device identifier |
Type: device_type
The type of a device
string
Property Name | Type | Description | Notes |
---|---|---|---|
device_type | <string> | The type of a device | Values: disk, chassis; |
Type: disk_location
The location of a disk in a chassis
{ "column": integer, "label": string, "row": integer }
Property Name | Type | Description | Notes |
---|---|---|---|
disk_location | <object> | The location of a disk in a chassis | |
disk_location.column | <integer> | Disk column | Optional; Minimum 0; |
disk_location.label | <string> | Disk label | Optional; |
disk_location.row | <integer> | Disk row | Optional; Minimum 0; |
Type: disk_status
Status of a disk
string
Property Name | Type | Description | Notes |
---|---|---|---|
disk_status | <string> | Status of a disk | Values: ok, failed, failing, rebuilding, missing, invalid, new; |
Type: exhaust_air_sensor
Chassis air exhaust sensor data
{ "name": string, "status": sensor_status, "status_msg": string, "temperature": sensor_temperature }
Property Name | Type | Description | Notes |
---|---|---|---|
exhaust_air_sensor | <object> | Chassis air exhaust sensor data | Required properties: [status, name, status_msg, temperature]; |
exhaust_air_sensor.name | <string> | Sensor name | |
exhaust_air_sensor.status | <sensor_status> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
exhaust_air_sensor.status_msg | <string> | Sensor status | |
exhaust_air_sensor.temperature | <sensor_temperature> | Temperature sensor data |
Type: health_status
Health status
string
Property Name | Type | Description | Notes |
---|---|---|---|
health_status | <string> | Health status | Values: ok, notice, failing, failed; |
Type: intake_air_sensor
Chassis air intake sensor data
{ "name": string, "status": sensor_status, "status_msg": string, "temperature": sensor_temperature }
Property Name | Type | Description | Notes |
---|---|---|---|
intake_air_sensor | <object> | Chassis air intake sensor data | Required properties: [status, name, status_msg, temperature]; |
intake_air_sensor.name | <string> | Sensor name | |
intake_air_sensor.status | <sensor_status> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
intake_air_sensor.status_msg | <string> | Sensor status | |
intake_air_sensor.temperature | <sensor_temperature> | Temperature sensor data |
Type: power_supply
Power supply sensor data
{ "name": string, "status": sensor_status, "status_msg": string, "temperature": sensor_temperature }
Property Name | Type | Description | Notes |
---|---|---|---|
power_supply | <object> | Power supply sensor data | Required properties: [status, name, status_msg, temperature]; |
power_supply.name | <string> | The power supply name | |
power_supply.status | <sensor_status> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
power_supply.status_msg | <string> | The power supply status | |
power_supply.temperature | <sensor_temperature> | Temperature sensor data |
Type: raid_controller
RAID controller sensor data
{ "battery": string, "name": string, "status": sensor_status, "status_msg": string, "temperature": sensor_temperature }
Property Name | Type | Description | Notes |
---|---|---|---|
raid_controller | <object> | RAID controller sensor data | Required properties: [status, name, status_msg, battery, temperature]; |
battery | <string> | The status of the controller's battery | Values: ok, missing, unknown, failing, failed; |
raid_controller.name | <string> | RAID controller name | |
raid_controller.status | <sensor_status> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
raid_controller.status_msg | <string> | RAID controller status | |
raid_controller.temperature | <sensor_temperature> | Temperature sensor data |
Type: rpm
Revolutions per minute
integer
Property Name | Type | Description | Notes |
---|---|---|---|
rpm | <integer> | Revolutions per minute |
Type: sensor_status
The status of a sensor
string
Property Name | Type | Description | Notes |
---|---|---|---|
sensor_status | <string> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
Type: sensor_temperature
Temperature sensor data
{ "current_temperature": integer, "threshold": integer }
Property Name | Type | Description | Notes |
---|---|---|---|
sensor_temperature | <object> | Temperature sensor data | Required properties: [current_temperature, threshold]; |
sensor_temperature.current_temperature | <integer> | Current temperature in celsius | |
sensor_temperature.threshold | <integer> | Threshold temperature in celsius |
Type: storage_unit_controller
Storage unit controller sensor data
{ "name": string, "status": sensor_status, "status_msg": string, "temperature": sensor_temperature }
Property Name | Type | Description | Notes |
---|---|---|---|
storage_unit_controller | <object> | Storage unit controller sensor data | Required properties: [status, name, status_msg, temperature]; |
storage_unit_controller.name | <string> | Controller name | |
storage_unit_controller.status | <sensor_status> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
storage_unit_controller.status_msg | <string> | Controller status | |
storage_unit_controller.temperature | <sensor_temperature> | Temperature sensor data |
Type: system_fan
System fan sensor data
{ "fan_speed": rpm, "name": string, "status": sensor_status, "status_msg": string }
Property Name | Type | Description | Notes |
---|---|---|---|
system_fan | <object> | System fan sensor data | Required properties: [status, name, status_msg, fan_speed]; |
system_fan.fan_speed | <rpm> | Revolutions per minute | |
system_fan.name | <string> | The fan name | |
system_fan.status | <sensor_status> | The status of a sensor | Values: ok, missing, unknown, failing, failed; |
system_fan.status_msg | <string> | The fan status |