Admin API v4 Query Endpoints
Admin API v4 provides high-performance query endpoints for cluster introspection. These endpoints return information about cluster topology, nodes, drives, pools, and erasure sets using MessagePack binary encoding for efficient transfer.
All endpoints require valid MinIO AIStor access credentials and the ServerInfoAdminAction authorization policy.
Response format
All query endpoints return binary MessagePack-encoded responses, not JSON.
Use the madmin-go v4 client library to decode responses:
import "github.com/minio/madmin-go/v4"
client, err := madmin.New("localhost:9000", "accesskey", "secretkey", false)
cluster, err := client.ClusterQuery(ctx)
Cluster
GET /minio/admin/v4/query/cluster
Returns high-level cluster information including bucket count, object count, capacity, and pool layout.
Key fields:
Mode- Deployment mode (standalone, distributed)BucketCount,ObjectCount,VersionCount- Object statisticsRawTotalBytes,RawFreeBytes- Raw storage capacityUsableTotalBytes,UsableFreeBytes- Usable storage capacityPoolCount,SetCount,NodeCount- Topology countsOnlineDrives,OfflineDrives- Drive health summary
Services
GET /minio/admin/v4/query/services
Returns status of connected services: LDAP, logger, audit, notifications, and KMS.
Pools
GET /minio/admin/v4/query/pools
Returns information about storage pools with pagination and filtering.
Query parameters:
| Parameter | Type | Default | Description |
|---|---|---|---|
limit |
integer | 100 | Results per page |
offset |
integer | 0 | Pagination offset |
filter |
string | - | Filter expression |
sort |
string | - | Field to sort by |
sortReversed |
boolean | false | Reverse sort order |
Key pool resource fields: PoolIndex, StripeSize, TotalSets, WriteQuorum, ReadQuorum, Parity, DriveCount, DrivesOnline, DrivesOffline, NodeCount, RawCapacity, Usage.
Nodes
GET /minio/admin/v4/query/nodes
Returns information about cluster nodes. Supports the same pagination and filter parameters as the pools endpoint, plus:
| Parameter | Type | Default | Description |
|---|---|---|---|
metrics |
boolean | false | Include node metrics |
Key node resource fields: Host, Version, State (online, offline, initializing, restarting), Uptime, TotalDrives, DriveCounts (by state), PoolIndex.
The response includes a ResultsSummary with counts of nodes by state.
Drives
GET /minio/admin/v4/query/drives
Returns information about cluster drives. Supports pagination and filter parameters, plus:
| Parameter | Type | Default | Description |
|---|---|---|---|
metrics |
boolean | false | Include detailed drive metrics |
smart |
boolean | false | Include S.M.A.R.T. health data |
1m |
boolean | false | Include 1-minute metrics window |
24h |
boolean | false | Include 24-hour statistics |
Key drive resource fields: NodeID, SetIndex, PoolIndex, DriveIndex, Endpoint, State (ok, offline, corrupt, missing, faulty, unformatted), Healing, Size, Used, Available, PercentageUsed.
Erasure sets
GET /minio/admin/v4/query/sets
Returns information about erasure sets. Supports the same pagination and filter parameters as the pools endpoint.
Key erasure set resource fields: PoolIndex, SetIndex, DriveCount, OnlineDrives, OfflineDrives, State (ok, warning, critical, unusable), Usage, RawCapacity, ObjectsCount.
Erasure set states:
| State | Description |
|---|---|
ok |
All drives healthy |
warning |
Some parity lost but data safe |
critical |
Limited parity remaining |
unusable |
More than parity drives lost |
The response includes a ResultsSummary with counts of sets by state.
Filter expressions
The filter parameter supports flexible filtering:
State=ok # Only healthy drives
PoolIndex=0 # Only drives in pool 0
DrivesOnline>0 # Pools with online drives
RawCapacity>1099511627776 # Large pools (>1TB)
Pagination
For large clusters, use pagination to retrieve results in pages:
GET /minio/admin/v4/query/drives?limit=50&offset=0
GET /minio/admin/v4/query/drives?limit=50&offset=50
Each response includes a Total field indicating the total number of matching results before pagination.