Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Public Interfaces

Producer APIs:

POST /topics/:topic
Description : Produce messages to a given topic

...

 

HTTP/1.1 200 OK

Content-Type: application/vnd.kafka.v1+json


{

 "offsets": [

   {

     "partition": 2,

     "offset": 100

   },

   {

     "partition": 1,

     "offset": 101

   }

 ]

}

 

POST /topics/:topicName/partitions/:partition
Description : Produce messages to one partition of the topic


Parameters:
     topicName (String) - topic name
     partition (int) - partition number

Request:
    JSON Object contains array of produce records

Response:
    JSON Object contains response objects

Status Codes:
      404 Not Found
           Error Code 40401 - topic Not Found
           Error Code 40402 - partition Not Found
     500 Internal Server Error
          Error Code 50001 - Kafka Error

Example request:

 

POST /topics/test/partitions/1 HTTP/1.1

Host:kafkarest.host.com

Content-Type: application/vnd.kafka.binary.v1+json

Accept: application/vnd.kafka.v1+json

{

  "records": [

   {

     "key": "a2V5",

     "value": "dmFsdWU="

   },

   {

     "value": "dmFsdWU="

   }

 ]

}


Example response:

 

HTTP/1.1 200 OK

 Content-Type: application/vnd.kafka.v1+json


{

 "offsets": [

   {

     "partition": 1,

     "offset": 100,

   },

   {

     "partition": 1,

     "offset": 101,

   }

 ]

}

Consumer APIs:

GET /topics/:topic_name/partitions/:partition?offset=(int)
Description : Consume messages from one partition of the topic.

Parameters:

     topic_name (String) - topic name
     partition (int) - partition number
     offset (int) - offset to fetch

Response:
    JSON Object contains response objects

Status Codes:
    404 Not Found
        Error Code 40401 - topic Not Found
        Error Code 40402 - partition Not Found
   500 Internal Server Error
       Error Code 50001 - Kafka Error

 

Example  request:

 

GET /consume/test/partitions/1?offset=1 HTTP/1.1

Accept: application/vnd.kafka.binary.v1+json

 

Example response:

 

HTTP/1.1 200 OK

Content-Type: application/vnd.kafka.binary.v1+json


[

 {

   "key": "a2V5",

   "value": "dmFsdWU=",

   "partition": 1,

   "offset": 1,

 },

 {

    "key": "a2V5",

   "value": "dmFsdWU=",

   "partition": 1,

   "offset": 2,

 }

]

 

...