创建主题
更新时间:2023-06-30
该接口用于在集群中创建主题(topic)。
- 集群处于服务中状态(ACTIVE)。
请求结构
POST /v{version}/clusters/{clusterId}/topics HTTP/1.1
Host: kafka-api.bj.baidubce.com
Authorization: authorization string
{
"topicName": "topicName",
"partitionNum": partitionNum,
"replicationFactor": replicationFactor,
"otherConfigs": {
"message.timestamp.type":"message.timestamp.type",
"cleanup.policy":"cleanup.policy",
"min.insync.replicas":"min.insync.replicas",
"retention.ms":"retention.ms",
"segment.ms":"segment.ms",
"max.message.bytes":"max.message.bytes"
}
}
请求头域
除公共头域外,无其他特殊头域。
请求参数
参数名称 | 类型 | 是否必须 | 参数位置 | 描述 |
---|---|---|---|---|
version | String | 是 | URL参数 | API版本号 |
clusterId | String | 是 | URL参数 | 待创建topic的集群ID |
topicName | String | 是 | RequestBody参数 | 待创建topic的名称 |
partitionNum | int | 是 | RequestBody参数 | 待创建topic的分区数,取值范围为:1-500 |
replicationFactor | int | 是 | RequestBody参数 | 待创建topic的副本数,可取值为:2、3,副本数不能低于集群的可用区数目 |
otherConfigs | Map<String, String> | 否 | RequestBody参数 | 待创建topic的配置项,具体支持的配置项参见TopicConfig |
返回头域
除公共头域外,无其他特殊头域。
返回参数
参数名称 | 类型 | 描述 |
---|---|---|
topicName | String | 创建成功的topic名称 |
错误码
错误码 | 错误描述 | HTTP状态码 | 中文解释 |
---|---|---|---|
ERROR_PARAMS | 请求参数错误 | 400 | 请求参数错误 |
CLUSTER_NOT_FOUND | 集群不存在 | 451 | 集群不存在 |
CLUSTER_HAD_DELETED | 集群已删除 | 451 | 集群已删除 |
CLUSTER_NOT_BELONGED | 未拥有该集群 | 451 | 未拥有该集群 |
CLUSTER_NOT_ACTIVE | 集群非运行状态 | 451 | 集群非运行状态 |
TOPIC_ALREADY_EXIST | 主题已存在 | 451 | 主题已存在 |
TOPIC_REPLICATION_FACTOR_LIMIT_EXCEEDED_ERROR | Topic副本因子超过限制 | 451 | Topic副本因子超过限制 |
TOPIC_PARTITION_ILLEGAL | Topic 分区数不合法 | 451 | TOPIC_PARTITION_ILLEGAL |
INTERNAL_ERROR | 服务内部错误 | 500 | 服务内部错误 |
请求示例
POST http://kafka-api.bj.baidubce.com/v2/clusters/33a168bb70c0459787416077114ab233/topics
Authorization: bce-auth-v1/ALTAKaiKeDfBD880eMWBE5oIGE/2023-05-08T11:43:45Z/1800/host;x-bce-date/322f3f98ce57d296c0f5abc64e5554b640ea035c5cb462fcaeab54b9810a3c61
Host: kafka-api.bj.baidubce.com
{
"topicName": "test",
"partitionNum": 4,
"replicationFactor": 3,
"otherConfigs": {
"message.timestamp.type":"CreateTime",
"cleanup.policy":"delete",
"min.insync.replicas":"1",
"retention.ms":"176",
"segment.ms":"604800000",
"max.message.bytes":"1048588"
}
}
返回示例
HTTP/1.1 200 OK
x-bce-request-id: 97e6d4ad-6fca-4609-ad4d-9a27c4d1a362
Date: Mon, 08 May 2023 09:39:11 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS
{
"topicName": "test"
}