conduktor.io ↗

Kafka DescribeCluster Response Wire Format v0 — Binary Protocol Layout

What is DescribeCluster?

Returns the authoritative list of brokers, the active controller, and cluster-level authorized operations via AdminClient.describeCluster(). Unlike Metadata, this can filter by endpoint type (broker vs controller), which matters in KRaft mode where controllers may not be brokers.

Wire Diagram

Response Header · flexible
message_size int32 · 4B
correlation_id int32 · 4B
tagged var
DescribeClusterResponse v0
ThrottleTimeMs int32 · 4B
ErrorCode int16 · 2B
ErrorMessage? string (compact)
ClusterId string (compact)
ControllerId int32 · 4B
Brokers array
ClusterAuthorizedOperations int32 · 4B
tagged var
BrokerId int32 · 4B
Host string (compact)
Port int32 · 4B
Rack? string (compact)
tagged var

Schema & Example

Schema
{
  "ThrottleTimeMs": int32,
  "ErrorCode": int16,
  "ErrorMessage": string?,
  "ClusterId": string,
  "ControllerId": int32,
  "Brokers": [{
      "BrokerId": int32,
      "Host": string,
      "Port": int32,
      "Rack": string?
  }],
  "ClusterAuthorizedOperations": int32
}
Example
{
  "ThrottleTimeMs": 0,
  "ErrorCode": 0,
  "ErrorMessage": null,
  "ClusterId": "dQw4w9WgXcQ",
  "ControllerId": 0,
  "Brokers": [{
      "BrokerId": 1,
      "Host": "broker-1.kafka.local",
      "Port": 9092,
      "Rack": "us-east-1a"
  }],
  "ClusterAuthorizedOperations": 2
}