HTTP Methods and URI Summary

This section provides HTTP method and URI summaries for multiple Kafka REST Proxy API versions for HPE Ezmeral Data Fabric Streams.

API v3: Kafka REST Proxy Summary

Availability of Kafka REST Proxy API v3 started in Kafka REST 6.0.0.0 on Core 6.2.0.

API v3 is disabled by default. To enable API v3, set the api.v3.enable parameter in the kafka-rest.properties file to true. See Configuration Parameters.
NOTE Kafka REST 6.0.0.0 supports API v3 and API v2 only. Kafka REST 6.0.0.0 does not support API v1.
The following table lists the HTTP methods, URIs (with links to examples), and descriptions:
HTTP Method URI Description
GET GET /v3/clusters Retrieves a list of metadata about clusters. Only retrieves the current HPE Ezmeral Data Fabric cluster.
GET GET /v3/clusters/{string: cluster_id} Retrieves metadata about a specific cluster.
GET GET /v3/clusters/{string: cluster_Id}/topics Retrieves a list of topic names on the specific cluster.
POST POST /v3/clusters/{string: cluster_Id}/topics Creates a new topic on the specific cluster.
DELETE DELETE /v3/clusters/{string: cluster_id}/topics/{string: topic_name} Deletes a topic from the specific cluster.
GET GET /v3/clusters/{string: cluster_id}/topics/{string: topic_name} Retrieves metadata about a specific topic within a cluster.
GET GET /v3/clusters/{string: cluster_id}/topics/{string: topic_name}/partitions Retrieves a list of partitions for the topic within a cluster.
GET GET /v3/clusters/{string: cluster_id}/topics/{string: topic_name}/partitions/{string: partition_id} Retrieves metadata about a specific partition within a topic and a cluster.
GET GET /v3/clusters/{string: cluster_id}/topics/{string: topic_name}/partitions/{string: partition_id}/replicas Retrieves a list of replicas within a partition, a topic and a cluster.
GET GET /v3/clusters/{string: cluster_id}/topics/{string: topic_name}/partitions/{string: partition_id}/replicas/{string: broker_id} Retrieves metadata about a specific replica within a partition, a topic and a cluster.

API v2: Kafka REST Proxy Summary

Availability of Kafka REST Proxy API v2 started in Kafka REST 4.0.0 on Core 6.0.x.

The following table lists the HTTP methods, URIs (with links to examples), and descriptions:
HTTP Method URI Description
GET /topics Retrieves a list of topic names.
GET /topics/{string: topic_name} Retrieves metadata about a specific topic.
POST /topics/{string: topic_name} Produces messages to a topic.
GET /topics/{string: topic_name}/partitions

Retrieves a list of partitions for the topic.

GET /topics/{string: topic_name}/partitions/{string: partition_id} Retrieves metadata about a specific partition within a topic.
GET GET /topics/{string: topic_name}/partitions/{string: partition_id}/offsets Returns a summary with beginning and end offsets for the given topic and specific partition. Supported as of Kafka Rest 6.0.0.0.
POST /topics/{string: topic_name}/partitions/{string: partition_id} Produces messages into a partition of a topic.
POST /consumers/{string: group_name} Creates a new consumer instance in the consumer group.
DELETE /consumers/{string: group_name}/instances/{string: instance_id} Destroys the consumer instance.
POST /consumers/{string: group_name}/instances/{string: consumer_instance_id}/offsets Commits a list of offsets for the consumer. When the post body is empty, it commits all the records that have been fetched by the consumer instance.
GET /consumers/{string: group_name)/instances/{string: instance_id}/offsets Gets the last committed offsets for the given partitions (whether the commit happened by this process or another).
POST /consumers/{string: group_name}/instances/{string: instance_id}/subscription Subscribes to the given list of topics or a topic pattern to get dynamically assigned partitions. If a prior subscription exists, it would be replaced by the latest subscription.
GET /consumers/{string: group_name}/instances/{string: instance_id}/subscription Gets the current subscribed list of topics.
DELETE /consumers/{string: group_name}/instances/{string: instance_id}/subscription Unsubscribes from topics currently subscribed to.
POST /consumers/{string: group_name}/instances/{string: instance_id}/assignments Manually assigns a list of partitions to a consumer.
GET /consumers/{string: group_name}/instances/{string: instance_id}/assignments Retrieves the list of partitions manually assigned to this consumer.
POST /consumers/{string: group_name}/instances/{string: instance_id}/positions Overrides the fetch offsets that the consumer will use for the next set of records to fetch.
POST /consumers/{string: group_name}/instances/{string: instance_id}/positions/beginning Seek to the first offset for each of the given partitions.
POST /consumers/{string: group_name}/instances/{string: instance_id}/positions/end Seek to the last offset for each of the given partitions.
GET GET /consumers/{string: group_name}/instances/{string: instance_id}/records Fetches data for the topics or partitions specified using one of the subscribe/assign APIs.
GET /streams/{string: stream_name}/topics Retrieves a list of topics in a given stream.

API v1: Kafka REST Proxy Summary

The following table lists the HTTP methods, URIs (with links to examples), and descriptions:
NOTE Kafka REST 6.0.0.0 does not support API v1. Kafka REST 6.0.0.0 supports API v1 and v2 only.
HTTP Method URI Description
GET /topics Retrieves a list of topic names.
GET /topics/{topic: string} Retrieves metadata about a specific topic.
POST /topics/{topic: string} Produces a message into a topic.
GET /topics/{topic: string}/partitions

Retrieves a list of partitions for the topic.

GET /topics/{topic: string}/partitions/{partition_id: string} Retrieves metadata about specific partition in a topic.
POST /topics/{topic: string}/partitions/{partition_id: string} Produces messages to one partition of the topic.
GET /topics/{topic: string}/partition/{partition_id: string}/messages?offset={int}[&count={int}] Consumes messages from one partition of the topic.
GET /stream/{stream: string}/topics Retrieves a list of topics in a given stream.
POST /consumers/{group: string} Creates a new consumer instance in the consumer group.
POST /consumers/{group: string}/instances/{instance: string}/offsets Commits offsets for the consumer. Returns a list of the partitions with the committed offsets.
DELETE /consumers/{group: string}/instances/{instance: string} Destroys the consumer instance.
GET /consumers/{group: string}/instances/{instance: string}/topics/{topic: string} Consumes messages from a topic.