| Interface | Description | 
|---|---|
| ClusterResourceListener | A callback interface that users can implement when they wish to get notified about changes in the Cluster metadata. | 
| Configurable | A Mix-in style interface for classes that are instantiated by reflection and need to take configuration parameters | 
| KafkaFuture.BaseFunction<A,B> | A function which takes objects of type A and returns objects of type B. | 
| KafkaFuture.BiConsumer<A,B> | A consumer of two different types of object. | 
| Metric | A metric tracked for monitoring purposes. | 
| Reconfigurable | Interface for reconfigurable classes that support dynamic configuration. | 
| Class | Description | 
|---|---|
| Cluster | An immutable representation of a subset of the nodes, topics, and partitions in the Kafka cluster. | 
| ClusterResource | The  ClusterResourceclass encapsulates metadata for a Kafka cluster. | 
| Endpoint | Represents a broker endpoint. | 
| KafkaFuture<T> | A flexible future which supports call chaining and other asynchronous programming patterns. | 
| KafkaFuture.Function<A,B> | A function which takes objects of type A and returns objects of type B. | 
| MetricName | The  MetricNameclass encapsulates a metric's name, logical group and its related attributes. | 
| MetricNameTemplate | A template for a MetricName. | 
| Node | Information about a Kafka node | 
| PartitionInfo | This is used to describe per-partition state in the MetadataResponse. | 
| TopicPartition | A topic name and partition number | 
| TopicPartitionInfo | A class containing leadership, replicas and ISR information for a topic partition. | 
| TopicPartitionReplica | The topic name, partition number and the brokerId of the replica | 
| Enum | Description | 
|---|---|
| ConsumerGroupState | The consumer group state. | 
| ElectionType | |
| IsolationLevel | 
| Exception | Description | 
|---|---|
| InvalidRecordException | |
| KafkaException | The base class of all other Kafka exceptions |