更新时间:2026-04-03 GMT+08:00

创建主题或批量删除主题

功能介绍

创建主题或批量删除主题。

URI

POST /v2/{project_id}/instances/{instance_id}/topics

表1 路径参数

参数

是否必选

参数类型

描述

project_id

是

String

参数解释:

项目ID,获取方式请参见获取项目ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

instance_id

是

String

参数解释:

实例ID。获取方法如下:调用“查询所有实例列表”接口,从响应体中获取实例ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表2 Query参数

参数

是否必选

参数类型

描述

action

否

String

参数解释:

批量删除Topic时使用,不配置则为创建接口。

约束限制:

不涉及。

取值范围:

  • delete:批量删除Topic。

  • 不填:创建Topic。

默认取值:

不涉及。

请求参数

表3 请求Body参数

参数

是否必选

参数类型

描述

name

否

String

参数解释:

主题名称。

约束限制:

只能由英文字母、数字、百分号、竖线、中划线、下划线组成,长度3~64个字符。

当创建主题时必填。

取值范围:

不涉及。

默认取值:

不涉及。

brokers

否

Array of strings

参数解释:

关联的代理。

约束限制:

仅RocketMQ实例4.8.0版本需要填写此参数,且仅当queues参数为空时,该参数才生效。

取值范围:

不涉及。

默认取值:

不涉及。

queue_num

否

Number

参数解释:

总队列数。

约束限制:

仅RocketMQ实例4.8.0版本需要填写此参数,且仅当queues参数为空时,该参数才生效。

取值范围:

1~50。

默认取值:

4。

queues

否

Array of queues objects

参数解释:

队列。

约束限制:

仅RocketMQ实例4.8.0版本需要填写此参数。

取值范围:

不涉及。

默认取值:

不涉及。

permission

否

String

参数解释:

权限。

约束限制:

仅RocketMQ实例4.8.0版本需要填写此参数。

取值范围:

  • pub:发布。

  • sub:订阅。

  • all:发布+订阅。

默认取值:

all。

message_type

否

String

参数解释:

消息类型。

约束限制:

仅RocketMQ实例5.x版本需要填写此参数。

取值范围:

  • NORMAL:普通消息。

  • FIFO:顺序消息。

  • DELAY:定时消息。

  • TRANSACTION:事务消息。

默认取值:

NORMAL。

topics

否

Array of strings

参数解释:

主题列表。

约束限制:

当批量删除主题时必填。

取值范围:

不涉及。

默认取值:

不涉及。

表4 queues

参数

是否必选

参数类型

描述

broker

否

String

参数解释:

关联的代理。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

queue_num

否

Number

参数解释:

队列数。

约束限制:

不涉及。

取值范围:

1~50。

默认取值:

3。

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

id

String

参数解释:

主题名称。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

job_id

String

参数解释:

删除主题任务ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

请求示例

  • 4.8.0版本RocketMQ实例创建一个主题,关联的代理为broker-0,队列数为3。

    POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/topics
    
    {
      "name" : "topic-test",
      "permission" : "all",
      "queues" : [ {
        "broker" : "broker-0",
        "queue_num" : 3
      } ]
    }
  • 5.x版本RocketMQ实例批量删除主题。

    POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/topics?action=delete
    
    {
      "topics" : [ "topic01", "topic02" ]
    }

响应示例

状态码:200

创建主题成功。

  • 创建主题成功

    {
      "id" : "topic-test"
    }
  • 批量删除主题成功

    {
      "job_id" : "8abfa7b299f0497c0199f0dc0a9a092b"
    }

状态码

状态码

描述

200

创建主题成功。

错误码

请参见错误码。