Skip to content

Supported APIs

klite implements 39 Kafka API keys. This page lists every supported API with its version range and notes on behavior.

  • API Key: The numeric Kafka protocol API key
  • Min/Max Version: The range of protocol versions klite supports for this API
  • Notes: Behavioral details or differences from Apache Kafka
KeyAPIMinMaxNotes
0Produce311acks=0 (fire-and-forget), acks=1 (leader ACK), acks=-1/all (durable). LogAppendTime supported. Transactional produce supported.
1Fetch416Long-polling with configurable max_wait_ms. Size limits (min_bytes, max_bytes, max_partition_bytes). KIP-74 fetch response ordering.
2ListOffsets18Timestamp -1 (latest), -2 (earliest), -3 (max timestamp). Timestamp-based offset lookup.
3Metadata112Auto-create topics (when enabled). Topic IDs (UUIDs). Reports all topics or specific topics.
18ApiVersions04Returns the full list of supported APIs and version ranges. Always handled first for client handshake.
KeyAPIMinMaxNotes
10FindCoordinator05Returns this broker as coordinator for both GROUP and TRANSACTION key types. Batch key lookup supported.
11JoinGroup09Eager and cooperative rebalance protocols. Leader election. group.instance.id for static membership.
14SyncGroup05Distributes partition assignments from leader to members.
12Heartbeat04Session timeout enforcement. Returns REBALANCE_IN_PROGRESS when rebalance is needed.
13LeaveGroup05Graceful departure with reason string. Batch member leave.
8OffsetCommit09Per-group, per-partition offset tracking. Retention enforced.
9OffsetFetch09Retrieve committed offsets. Batch group support in v8+.
47OffsetDelete00Delete committed offsets for specific topic-partitions.
KeyAPIMinMaxNotes
22InitProducerID05Assigns producer ID and epoch. Supports transactional and idempotent producers.
24AddPartitionsToTxn05Registers topic-partitions in an active transaction.
25AddOffsetsToTxn04Registers consumer group offsets in an active transaction.
26EndTxn04Commits or aborts a transaction. Writes control batches.
28TxnOffsetCommit04Commits offsets as part of a transaction (exactly-once consume).
61DescribeProducers00Returns active producer state for partitions.
65DescribeTransactions00Returns state of active transactions.
66ListTransactions00Lists all active transaction IDs.
KeyAPIMinMaxNotes
19CreateTopics07Topic name validation, partition count, replication factor (accepted but ignored), topic configs.
20DeleteTopics06Delete by topic name or topic ID.
37CreatePartitions03Increase partition count for existing topics.
32DescribeConfigs04Returns topic-level and broker-level configurations.
33AlterConfigs02Legacy full-replacement config update.
44IncrementalAlterConfigs01Incremental config changes (SET, DELETE, APPEND, SUBTRACT).
16ListGroups05Lists all consumer groups with state filter.
15DescribeGroups05Returns group metadata, members, assignments.
42DeleteGroups02Deletes inactive (empty) consumer groups.
21DeleteRecords02Advances log start offset (tombstones earlier data).
60DescribeCluster01Returns cluster ID, controller ID, broker list.
35DescribeLogDirs04Returns log directory information and sizes.
23OffsetForLeaderEpoch04Returns end offset for a given leader epoch.
KeyAPIMinMaxNotes
17SASLHandshake01Negotiates SASL mechanism.
36SASLAuthenticate02Authenticates with PLAIN, SCRAM-SHA-256, or SCRAM-SHA-512.
51AlterUserScramCredentials00Create, update, or delete SCRAM user credentials.
50DescribeUserScramCredentials00List SCRAM users and their mechanisms.

The following API keys are intentionally not supported. Requests for these APIs return UNSUPPORTED_VERSION:

KeyAPIReason
4LeaderAndIsrInter-broker, not applicable
5StopReplicaInter-broker, not applicable
6UpdateMetadataInter-broker, not applicable
7ControlledShutdownInter-broker, not applicable
27WriteTxnMarkersInter-broker transaction coordination
29-31VariousController quorum APIs
34AlterReplicaLogDirsReplica management, not applicable
38ElectLeadersMulti-broker leader election
39-41VariousClient quota APIs (stored but not enforced)
43ElectLeaders v2Multi-broker leader election
45-46VariousBroker registration, not applicable
48-49VariousDescribe/List client quotas
52-59VariousFeature flags, allocate producer IDs, etc.
62-64VariousBroker heartbeat, controller APIs
67+VariousFuture/experimental APIs