---
title: "List the hardware of all hosts with node-proxy data, paginated."
method: GET
path: "/api/hardware/hosts"
tags: ["Hardware"]
---

# List the hardware of all hosts with node-proxy data, paginated.

`GET /api/hardware/hosts`

## Request

- Base URL: `/` (relative, and the document was published on a file host, not at the API’s origin)
- URL: `/api/hardware/hosts`
- Auth: HTTP bearer

## Query parameters

- `offset` integer
- `limit` integer
- `sort` string
- `search` string

## Response `200`

OK

- object[]
  - `compression` object: FCM compression of the host; null when it has no FCM drives. Ratio, savings, efficiency and logical use are null below 100 GiB of physical use
    - `compression_ratio` number, required: Logical / physical bytes used
    - `efficiency_percent` number, required: Space saved, in percent
    - `fcm_drive_count` integer, required: Number of FCM drives
    - `log_util_percent` number, required: Logical space used, in percent
    - `phy_util_percent` number, required: Physical space used, in percent
    - `savings_bytes` integer, required: Logical minus physical bytes used
  - `firmware` object[]: Installed firmware: name -> version
  - `health` string: Worst health of the categories that have components
  - `hostname` string: Host name
  - `sn` string: Serial number
  - `status` object: Hardware per category
    - `fans` object, required: fans components
      - `components` object[], required: Components; each also carries the fields its category reports
        - `chassis_id` string, required: Chassis id
        - `health` string, required: OK, Unknown, Warning or Critical
        - `id` string, required: Component id
        - `state` string, required: Redfish state, e.g. Enabled
      - `critical` integer, required: Components with health Critical
      - `health` string, required: Worst health of the components: OK, Unknown, Warning or Critical
      - `ok` integer, required: Components with health OK
      - `total` integer, required: Number of components
      - `unknown` integer, required: Components whose health is not reported
      - `warning` integer, required: Components with health Warning
    - `memory` object, required: memory components
      - `components` object[], required: Components; each also carries the fields its category reports
        - `chassis_id` string, required: Chassis id
        - `health` string, required: OK, Unknown, Warning or Critical
        - `id` string, required: Component id
        - `state` string, required: Redfish state, e.g. Enabled
      - `critical` integer, required: Components with health Critical
      - `health` string, required: Worst health of the components: OK, Unknown, Warning or Critical
      - `ok` integer, required: Components with health OK
      - `total` integer, required: Number of components
      - `unknown` integer, required: Components whose health is not reported
      - `warning` integer, required: Components with health Warning
    - `network` object, required: network components
      - `components` object[], required: Components; each also carries the fields its category reports
        - `chassis_id` string, required: Chassis id
        - `health` string, required: OK, Unknown, Warning or Critical
        - `id` string, required: Component id
        - `state` string, required: Redfish state, e.g. Enabled
      - `critical` integer, required: Components with health Critical
      - `health` string, required: Worst health of the components: OK, Unknown, Warning or Critical
      - `ok` integer, required: Components with health OK
      - `total` integer, required: Number of components
      - `unknown` integer, required: Components whose health is not reported
      - `warning` integer, required: Components with health Warning
    - `power` object, required: power components
      - `components` object[], required: Components; each also carries the fields its category reports
        - `chassis_id` string, required: Chassis id
        - `health` string, required: OK, Unknown, Warning or Critical
        - `id` string, required: Component id
        - `state` string, required: Redfish state, e.g. Enabled
      - `critical` integer, required: Components with health Critical
      - `health` string, required: Worst health of the components: OK, Unknown, Warning or Critical
      - `ok` integer, required: Components with health OK
      - `total` integer, required: Number of components
      - `unknown` integer, required: Components whose health is not reported
      - `warning` integer, required: Components with health Warning
    - `processors` object, required: processors components
      - `components` object[], required: Components; each also carries the fields its category reports
        - `chassis_id` string, required: Chassis id
        - `health` string, required: OK, Unknown, Warning or Critical
        - `id` string, required: Component id
        - `state` string, required: Redfish state, e.g. Enabled
      - `critical` integer, required: Components with health Critical
      - `health` string, required: Worst health of the components: OK, Unknown, Warning or Critical
      - `ok` integer, required: Components with health OK
      - `total` integer, required: Number of components
      - `unknown` integer, required: Components whose health is not reported
      - `warning` integer, required: Components with health Warning
    - `storage` object, required: storage components
      - `components` object[], required: Components; each also carries the fields its category reports
        - `chassis_id` string, required: Chassis id
        - `health` string, required: OK, Unknown, Warning or Critical
        - `id` string, required: Component id
        - `state` string, required: Redfish state, e.g. Enabled
      - `critical` integer, required: Components with health Critical
      - `health` string, required: Worst health of the components: OK, Unknown, Warning or Critical
      - `ok` integer, required: Components with health OK
      - `total` integer, required: Number of components
      - `unknown` integer, required: Components whose health is not reported
      - `warning` integer, required: Components with health Warning
    - `temperatures` object, required: temperatures components
      - `components` object[], required: Components; each also carries the fields its category reports
        - `chassis_id` string, required: Chassis id
        - `health` string, required: OK, Unknown, Warning or Critical
        - `id` string, required: Component id
        - `state` string, required: Redfish state, e.g. Enabled
      - `critical` integer, required: Components with health Critical
      - `health` string, required: Worst health of the components: OK, Unknown, Warning or Critical
      - `ok` integer, required: Components with health OK
      - `total` integer, required: Number of components
      - `unknown` integer, required: Components whose health is not reported
      - `warning` integer, required: Components with health Warning

## Other responses

- `400`: Operation exception. Please check the response body for details.
- `401`: Unauthenticated access. Please login first.
- `403`: Unauthorized access. Please check your permissions.
- `500`: Unexpected error. Please check the response body for the stack trace.

## Changes

- **2026-10-29** `56cc950e3e37`: 2 info
  - added the optional property `items/compression` to the response with the `200` status (media type: application/json)
  - added the optional property `items/compression` to the response with the `200` status (media type: application/vnd.ceph.api.v1.0+json)
- **2026-10-26** `023c9c513945`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ceph/apis/ceph-rest-api/changes/api/hardware/hosts/get.md)

---

[API](https://skmtc.dev/ceph/apis/ceph-rest-api.md) - [All operations](https://skmtc.dev/ceph/apis/ceph-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ceph/apis/ceph-rest-api/revisions/56cc950e3e37?raw)
