# disk.query

Query disks.

The following extra options are supported:

include_expired (bool): Also include expired disks (default: false). passwords (bool): Don’t hide KMIP password for the disks (default: false). pools (bool): Join pool name for each disk (default: false).

Type: object

##

Type: array
No Additional Items

#### Tuple Validation

##### Parameter 1: filters

#### filters

Type: array Default: []

List of filters for query results. See API documentation for "Query Methods" for more guidance.

No Additional Items

##### Each item of this array must be:

Type: object
Examples:

    [
        [
            "name",
            "=",
            "bob"
        ]
    ]

    [
        [
            "OR",
            [
                [
                    [
                        "name",
                        "=",
                        "bob"
                    ]
                ],
                [
                    [
                        "name",
                        "=",
                        "larry"
                    ]
                ]
            ]
        ]
    ]

##### Parameter 2: options

#### options

Type: object
Default:
{ "extra": {}, "order_by": [], "select": [], "count": false, "get": false, "offset": 0, "limit": 0, "force_sql_filters": false }

Query options including pagination, ordering, and additional parameters.

No Additional Properties

##

#### Extra

Type: object Default: {}

Extra options are defined on a per-endpoint basis and are described in the documentation for the associated query method.

##

#### Order By

Type: array of string Default: []

An array of field names describing the manner in which query results should be ordered. The field names may also have one of more of the following special prefixes: `-` (reverse sort direction), `nulls_first:` (place any null values at the head of the results list), `nulls_last:` (place any null values at the tail of the results list).

No Additional Items

##### Each item of this array must be:

Type: string
Example:

    [
        "size",
        "-devname",
        "nulls_first:-expiretime"
    ]

##

#### Select

Type: array Default: []

An array of field names specifying the exact fields to include in the query return. The dot character `.` may be used to explicitly select only subkeys of the query result.

No Additional Items

##### Each item of this array must be:

## Any of

Type: string
Type: array
No Additional Items

##### Each item of this array must be:

Type: object
Example:

    [
        "username",
        "Authentication.status"
    ]

##

#### Count

Type: boolean Default: false

Return a numeric value representing the number of items that match the specified `query-filters`.

##

#### Get

Type: boolean Default: false

Return the JSON object of the first result matching the specified `query-filters`. The query fails if there specified `query-filters` return no results.

##

#### Offset

Type: integer Default: 0

This specifies the beginning offset of the results array. When combined with the `limit` query-option it may be used to implement pagination of large results arrays. WARNING: some query methods provide volatile results and the onus is on the developer to understand whether pagination is appropriate for a particular query API method.

##

#### Limit

Type: integer Default: 0

This specifies the maximum number of results matching the specified `query-filters` to return. When combined wtih the `offset` query-option it may be used to implement pagination of large results arrays.

WARNING: Some query methods provide volatile results and the onus is on the developer to understand whether pagination is appropriate for a particular query API method.

##

#### Force Sql Filters

Type: boolean Default: false

Force use of SQL for result filtering to reduce response time. May not work for all methods.

##

#### Result

## Any of

Type: array of object
No Additional Items

##### Each item of this array must be:

#### DiskQueryResultItem

Type: object
No Additional Properties

##

#### Identifier

Type: string

Unique identifier for the disk device.

##

#### Name

Type: string

System name of the disk device.

##

#### Subsystem

Type: string

Storage subsystem type.

Examples:

    "SCSI"

    "ATA"

##

#### Number

Type: integer

Numeric identifier assigned to the disk.

##

#### Serial

Type: string

Manufacturer serial number of the disk.

##

#### Lunid

Logical unit number identifier or `null` if not applicable.

## Any of

Type: string
Type: null

##

#### Size

Total size of the disk in bytes. `null` if not available.

## Any of

Type: integer
Type: null

##

#### Description

Type: string

Human-readable description of the disk device.

##

#### Transfermode

Type: string

Data transfer mode and capabilities of the disk.

##

#### Hddstandby

Type: enum (of string)

Hard disk standby timer in minutes or `ALWAYS ON` to disable standby.

##### Must be one of:

- "ALWAYS ON"
- "5"
- "10"
- "20"
- "30"
- "60"
- "120"
- "180"
- "240"
- "300"
- "330"

##

#### Advpowermgmt

Type: enum (of string)

Advanced power management level or `DISABLED` to turn off power management.

##### Must be one of:

- "DISABLED"
- "1"
- "64"
- "127"
- "128"
- "192"
- "254"

##

#### Expiretime

Expiration timestamp for disk data or `null` if not applicable.

## Any of

Type: string Format: date-time
Type: null

##

#### Model

Manufacturer model name/number of the disk. `null` if not available.

## Any of

Type: string
Type: null

##

#### Rotationrate

Disk rotation speed in RPM or `null` for SSDs and unknown devices.

## Any of

Type: integer
Type: null

##

#### Type

Disk type classification or `null` if not determined.

## Any of

Type: string
Type: null

##

#### Zfs Guid

ZFS globally unique identifier for this disk or `null` if not used in ZFS.

## Any of

Type: string
Type: null

##

#### Bus

Type: string

System bus type the disk is connected to.

##

#### Devname

Type: string

Device name in the operating system.

Example:

    "/dev/sda"

##

Physical enclosure information or `null` if not in an enclosure.

## Any of

#### DiskEntryEnclosure

Type: object
No Additional Properties

##

#### Number

Type: integer

Enclosure number where the disk is located.

##

#### Slot

Type: integer

Physical slot position within the enclosure.

Type: null

##

#### Pool

Name of the storage pool this disk belongs to. `null` if not part of any pool.

## Any of

Type: string
Type: null

##

#### Passwd

Type: string

Disk encryption password (masked for security).

##

#### Kmip Uid

KMIP (Key Management Interoperability Protocol) unique identifier or `null`.

## Any of

Type: string
Type: null

##

#### Sed

Whether the disk is SED (Self-Encrypting Drive) capable. `null` if not yet determined.

## Any of

Type: boolean
Type: null

##

#### Sed Status

SED Status of the disk. `null` if not yet determined.

## Any of

Type: string
Type: null

#### DiskQueryResultItem

Type: object
No Additional Properties

##

#### Identifier

Type: string

Unique identifier for the disk device.

##

#### Name

Type: string

System name of the disk device.

##

#### Subsystem

Type: string

Storage subsystem type.

Examples:

    "SCSI"

    "ATA"

##

#### Number

Type: integer

Numeric identifier assigned to the disk.

##

#### Serial

Type: string

Manufacturer serial number of the disk.

##

#### Lunid

Logical unit number identifier or `null` if not applicable.

## Any of

Type: string
Type: null

##

#### Size

Total size of the disk in bytes. `null` if not available.

## Any of

Type: integer
Type: null

##

#### Description

Type: string

Human-readable description of the disk device.

##

#### Transfermode

Type: string

Data transfer mode and capabilities of the disk.

##

#### Hddstandby

Type: enum (of string)

Hard disk standby timer in minutes or `ALWAYS ON` to disable standby.

##### Must be one of:

- "ALWAYS ON"
- "5"
- "10"
- "20"
- "30"
- "60"
- "120"
- "180"
- "240"
- "300"
- "330"

##

#### Advpowermgmt

Type: enum (of string)

Advanced power management level or `DISABLED` to turn off power management.

##### Must be one of:

- "DISABLED"
- "1"
- "64"
- "127"
- "128"
- "192"
- "254"

##

#### Expiretime

Expiration timestamp for disk data or `null` if not applicable.

## Any of

Type: string Format: date-time
Type: null

##

#### Model

Manufacturer model name/number of the disk. `null` if not available.

## Any of

Type: string
Type: null

##

#### Rotationrate

Disk rotation speed in RPM or `null` for SSDs and unknown devices.

## Any of

Type: integer
Type: null

##

#### Type

Disk type classification or `null` if not determined.

## Any of

Type: string
Type: null

##

#### Zfs Guid

ZFS globally unique identifier for this disk or `null` if not used in ZFS.

## Any of

Type: string
Type: null

##

#### Bus

Type: string

System bus type the disk is connected to.

##

#### Devname

Type: string

Device name in the operating system.

Example:

    "/dev/sda"

##

Physical enclosure information or `null` if not in an enclosure.

## Any of

Type: object
Type: null

##

#### Pool

Name of the storage pool this disk belongs to. `null` if not part of any pool.

## Any of

Type: string
Type: null

##

#### Passwd

Type: string

Disk encryption password (masked for security).

##

#### Kmip Uid

KMIP (Key Management Interoperability Protocol) unique identifier or `null`.

## Any of

Type: string
Type: null

##

#### Sed

Whether the disk is SED (Self-Encrypting Drive) capable. `null` if not yet determined.

## Any of

Type: boolean
Type: null

##

#### Sed Status

SED Status of the disk. `null` if not yet determined.

## Any of

Type: string
Type: null
Type: integer

Required roles: DISK_READ