What is DescribeTopicPartitions?
Provides detailed partition metadata with cursor-based pagination for clusters with thousands of topics (KIP-966). This addresses the scalability limits of the Metadata API when listing all topics in large clusters, as Metadata was never designed for bulk enumeration.
Wire Diagram
Response Header · flexible
message_size
int32 · 4B
correlation_id
int32 · 4B
tagged
var
DescribeTopicPartitionsResponse v0
ThrottleTimeMs
int32 · 4B
tagged
var
ErrorCode
int16 · 2B
Name?
string (compact)
TopicId
uuid · 16B
IsInternal
bool · 1B
TopicAuthorizedOperations
int32 · 4B
tagged
var
ErrorCode
int16 · 2B
PartitionIndex
int32 · 4B
LeaderId
int32 · 4B
LeaderEpoch
int32 · 4B
ReplicaNodes
[]int32
IsrNodes
[]int32
EligibleLeaderReplicas?
[]int32
LastKnownElr?
[]int32
OfflineReplicas
[]int32
tagged
var
TopicName
string (compact)
PartitionIndex
int32 · 4B
tagged
var
Schema & Example
Schema { "ThrottleTimeMs": int32, "Topics": [{ "ErrorCode": int16, "Name": string?, "TopicId": uuid, "IsInternal": bool, "Partitions": [{ "ErrorCode": int16, "PartitionIndex": int32, "LeaderId": int32, "LeaderEpoch": int32, "ReplicaNodes": [int32], "IsrNodes": [int32], "EligibleLeaderReplicas": [int32]?, "LastKnownElr": [int32]?, "OfflineReplicas": [int32] }], "TopicAuthorizedOperations": int32 }], "NextCursor": { "TopicName": string, "PartitionIndex": int32 }? }
Example { "ThrottleTimeMs": 0, "Topics": [{ "ErrorCode": 0, "Name": "orders", "TopicId": "550e8400-e29b-41d4-a716-446655440000", "IsInternal": false, "Partitions": [{ "ErrorCode": 0, "PartitionIndex": 3, "LeaderId": 1, "LeaderEpoch": 17, "ReplicaNodes": [0, 1, 2], "IsrNodes": [0, 1, 2], "EligibleLeaderReplicas": [0, 1, 2], "LastKnownElr": [1, 2, 3], "OfflineReplicas": [0, 1, 2] }], "TopicAuthorizedOperations": 2 }], "NextCursor": { "TopicName": "orders", "PartitionIndex": 3 }? }