本文介绍消息队列 Kafka版 API 请求的组成结构。
您可以通过发送 HTTPS POST 请求来调用 Kafka 的 API 服务。HTTPS 请求 URL 的格式如下:
POST {URI-scheme}://{Endpoint}/?Action={Action}&Version={Version} HTTP/1.1
其中:
kafka.volcengineapi.com
,详细说明请参考服务地址。YYYY-MM-DD
格式。消息队列 Kafka版的 API 版本是 2018-01-01
。以创建 Kafka 密钥为例,未编码的 HTTPS 请求 URL 如下。
https://kafka.volcengineapi.com/?Action=ModifyTopic&Version=2018-01-01
请求方法用于向服务器传递当前请求的操作类型,消息队列 Kafka版当前支持POST方法。
火山引擎的 OpenAPI 请求包含两类参数,即公共请求参数和接口请求参数。其中,公共请求参数是每一个接口需要包含的,详细说明可参见公共参数。接口请求参数是各个接口特有的,详见各个接口描述。
HTTP 请求的请求头(Header)中需要指定 Content-Type
和请求鉴权信息等参数。Content-type 指定了请求消息体的结构化格式,消息队列 Kafka版的 Content-Type 固定为 application/json
。详细的参数列表及说明请参考公共参数。
请求消息体主要传递业务相关的其他请求参数。若请求消息体中参数支持中文,则中文字符必须为 UTF-8 编码。
每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(即消息体为空),调用接口时,请参考各个 API 接口文档构建请求消息体。
您可以使用 curl、Postman或直接编写代码等方式发送请求调用 API。例如 ModifyTopic 接口的请求示例如下。
POST https://kafka.volcengineapi.com/?Action=ModifyTopic&Version=2018-01-01 HTTP/1.1 Accept: application/json Content-Type: application/json Host: kafka.volcengineapi.com X-Date: 20210328T100802Z Authorization: HMAC-SHA256 Credential=AK********/20210328/cn-beijing/kafka/request, SignedHeaders=x-date, Signature=******** { "InstanceId": "kafka-****", "TopicName": "my_topic", "PartitionNumber": 12, "MinInsyncReplicaNumber": 2, "RetentionHour": 144, "MaxMessageMegabyte": 1, "Description": "new-describe" }