conduktor.io ↗

Kafka StreamsGroupDescribe Response Wire Format v0 — Binary Protocol Layout

What is StreamsGroupDescribe?

Shows Kafka Streams groups managed under the broker-side assignor (KIP-1071), with per-member task assignments (active, standby, warm-up) and the group epoch. Rapidly incrementing epochs indicate frequent membership changes, which could signal instability.

Related Errors

COORDINATOR_NOT_AVAILABLE · GROUP_AUTHORIZATION_FAILED · GROUP_ID_NOT_FOUND · INVALID_GROUP_ID · TOPIC_AUTHORIZATION_FAILED · UNSUPPORTED_VERSION

Wire Diagram

Response Header · flexible
message_size int32 · 4B
correlation_id int32 · 4B
tagged var
StreamsGroupDescribeResponse v0
ThrottleTimeMs int32 · 4B
Groups array
tagged var
ErrorCode int16 · 2B
ErrorMessage? string (compact)
GroupId string (compact)
GroupState string (compact)
GroupEpoch int32 · 4B
AssignmentEpoch int32 · 4B
Topology? struct
Members array
AuthorizedOperations int32 · 4B
tagged var
Epoch int32 · 4B
Subtopologies? array
tagged var
SubtopologyId string (compact)
SourceTopics []string
RepartitionSinkTopics []string
StateChangelogTopics array
RepartitionSourceTopics array
tagged var
Name string (compact)
Partitions int32 · 4B
ReplicationFactor int16 · 2B
TopicConfigs array
tagged var
Key string (compact)
Value string (compact)
tagged var
Name string (compact)
Partitions int32 · 4B
ReplicationFactor int16 · 2B
TopicConfigs array
tagged var
Key string (compact)
Value string (compact)
tagged var
MemberId string (compact)
MemberEpoch int32 · 4B
InstanceId? string (compact)
RackId? string (compact)
ClientId string (compact)
ClientHost string (compact)
TopologyEpoch int32 · 4B
ProcessId string (compact)
UserEndpoint? struct
ClientTags array
TaskOffsets array
TaskEndOffsets array
Assignment struct
TargetAssignment struct
IsClassic bool · 1B
tagged var
Host string (compact)
Port uint16 · 2B
tagged var
Key string (compact)
Value string (compact)
tagged var
SubtopologyId string (compact)
Partition int32 · 4B
Offset int64 · 8B
tagged var
SubtopologyId string (compact)
Partition int32 · 4B
Offset int64 · 8B
tagged var
ActiveTasks array
StandbyTasks array
WarmupTasks array
tagged var
SubtopologyId string (compact)
Partitions []int32
tagged var
SubtopologyId string (compact)
Partitions []int32
tagged var
SubtopologyId string (compact)
Partitions []int32
tagged var
ActiveTasks array
StandbyTasks array
WarmupTasks array
tagged var
SubtopologyId string (compact)
Partitions []int32
tagged var
SubtopologyId string (compact)
Partitions []int32
tagged var
SubtopologyId string (compact)
Partitions []int32
tagged var

Schema & Example

Schema
{
  "ThrottleTimeMs": int32,
  "Groups": [{
      "ErrorCode": int16,
      "ErrorMessage": string?,
      "GroupId": string,
      "GroupState": string,
      "GroupEpoch": int32,
      "AssignmentEpoch": int32,
      "Topology": {
        "Epoch": int32,
        "Subtopologies": [{
            "SubtopologyId": string,
            "SourceTopics": [string],
            "RepartitionSinkTopics": [string],
            "StateChangelogTopics": [{
                "Name": string,
                "Partitions": int32,
                "ReplicationFactor": int16,
                "TopicConfigs": [{
                    "Key": string,
                    "Value": string
                }]
            }],
            "RepartitionSourceTopics": [{
                "Name": string,
                "Partitions": int32,
                "ReplicationFactor": int16,
                "TopicConfigs": [{
                    "Key": string,
                    "Value": string
                }]
            }]
        }]?
      }?,
      "Members": [{
          "MemberId": string,
          "MemberEpoch": int32,
          "InstanceId": string?,
          "RackId": string?,
          "ClientId": string,
          "ClientHost": string,
          "TopologyEpoch": int32,
          "ProcessId": string,
          "UserEndpoint": {
            "Host": string,
            "Port": uint16
          }?,
          "ClientTags": [{
              "Key": string,
              "Value": string
          }],
          "TaskOffsets": [{
              "SubtopologyId": string,
              "Partition": int32,
              "Offset": int64
          }],
          "TaskEndOffsets": [{
              "SubtopologyId": string,
              "Partition": int32,
              "Offset": int64
          }],
          "Assignment": {
            "ActiveTasks": [{
                "SubtopologyId": string,
                "Partitions": [int32]
            }],
            "StandbyTasks": [{
                "SubtopologyId": string,
                "Partitions": [int32]
            }],
            "WarmupTasks": [{
                "SubtopologyId": string,
                "Partitions": [int32]
            }]
          },
          "TargetAssignment": {
            "ActiveTasks": [{
                "SubtopologyId": string,
                "Partitions": [int32]
            }],
            "StandbyTasks": [{
                "SubtopologyId": string,
                "Partitions": [int32]
            }],
            "WarmupTasks": [{
                "SubtopologyId": string,
                "Partitions": [int32]
            }]
          },
          "IsClassic": bool
      }],
      "AuthorizedOperations": int32
  }]
}
Example
{
  "ThrottleTimeMs": 0,
  "Groups": [{
      "ErrorCode": 0,
      "ErrorMessage": "NETWORK_EXCEPTION",
      "GroupId": "order-processors",
      "GroupState": "Stable",
      "GroupEpoch": 12,
      "AssignmentEpoch": 12,
      "Topology": {
        "Epoch": 17,
        "Subtopologies": [{
            "SubtopologyId": "abc-123",
            "SourceTopics": ["value-1", "value-2"],
            "RepartitionSinkTopics": ["value-1", "value-2"],
            "StateChangelogTopics": [{
                "Name": "orders",
                "Partitions": 0,
                "ReplicationFactor": 1,
                "TopicConfigs": [{
                    "Key": "retention.ms",
                    "Value": "604800000"
                }]
            }],
            "RepartitionSourceTopics": [{
                "Name": "orders",
                "Partitions": 0,
                "ReplicationFactor": 1,
                "TopicConfigs": [{
                    "Key": "retention.ms",
                    "Value": "604800000"
                }]
            }]
        }]?
      }?,
      "Members": [{
          "MemberId": "consumer-1-abc123",
          "MemberEpoch": 12,
          "InstanceId": null,
          "RackId": "abc-123",
          "ClientId": "my-app-producer",
          "ClientHost": "192.168.1.100",
          "TopologyEpoch": 12,
          "ProcessId": "abc-123",
          "UserEndpoint": {
            "Host": "broker-1.kafka.local",
            "Port": 9092
          }?,
          "ClientTags": [{
              "Key": "retention.ms",
              "Value": "604800000"
          }],
          "TaskOffsets": [{
              "SubtopologyId": "abc-123",
              "Partition": 0,
              "Offset": 284729
          }],
          "TaskEndOffsets": [{
              "SubtopologyId": "abc-123",
              "Partition": 0,
              "Offset": 284729
          }],
          "Assignment": {
            "ActiveTasks": [{
                "SubtopologyId": "abc-123",
                "Partitions": [1, 2, 3]
            }],
            "StandbyTasks": [{
                "SubtopologyId": "abc-123",
                "Partitions": [1, 2, 3]
            }],
            "WarmupTasks": [{
                "SubtopologyId": "abc-123",
                "Partitions": [1, 2, 3]
            }]
          },
          "TargetAssignment": {
            "ActiveTasks": [{
                "SubtopologyId": "abc-123",
                "Partitions": [1, 2, 3]
            }],
            "StandbyTasks": [{
                "SubtopologyId": "abc-123",
                "Partitions": [1, 2, 3]
            }],
            "WarmupTasks": [{
                "SubtopologyId": "abc-123",
                "Partitions": [1, 2, 3]
            }]
          },
          "IsClassic": true
      }],
      "AuthorizedOperations": 2
  }]
}