Creating a Topic for a Kafka Instance
Function
This API is used to create a topic for a Kafka instance.
URI
POST /v2/{project_id}/instances/{instance_id}/topics
Parameter | Mandatory | Type | Description |
---|---|---|---|
project_id | Yes | String | Project ID. For details about how to obtain it, see Obtaining a Project ID. |
instance_id | Yes | String | Instance ID. |
Request Parameters
Parameter | Mandatory | Type | Description |
---|---|---|---|
id | Yes | String | Topic name. A topic name consists of 3 to 200 characters, starts with a letter, and contains only letters, hyphens (-), underscores (_), periods (.), and digits. |
replication | No | Integer | Number of replicas, which is configured to ensure data reliability. Value range: 1 to 3. |
sync_message_flush | No | Boolean | Whether synchronous flushing is enabled. The default value is false. Synchronous flushing compromises performance. |
partition | No | Integer | Number of topic partitions, which is used to set the number of concurrently consumed messages.The value ranges from 1 to 200. |
sync_replication | No | Boolean | Whether synchronous replication is enabled. After this function is enabled, the acks parameter on the producer client must be set to –1. Otherwise, this parameter does not take effect. |
retention_time | No | Integer | Retention period of a message. The default value is 72.The value ranges from 1 to 720, in hours. |
topic_other_configs | No | Array of topic_other_configs objects | Topic configuration. |
topic_desc | No | String | Topic description. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
name | No | String | Configuration name. |
value | No | String | Configuration value. |
Response Parameters
Status code: 200
Parameter | Type | Description |
---|---|---|
name | String | Topic name. |
Example Requests
Creating a topic named test01
POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/topics{"id" : "test01","partition" : 3,"replication" : 3,"retention_time" : 72,"sync_message_flush" : false,"sync_replication" : "false","topic_other_configs" : [ {"name" : "message.timestamp.type","value" : "LogAppendTime"}, {"name" : "max.message.bytes","value" : 10485760} ],"topic_desc" : ""}
Example Responses
Status code: 200
Successful. A topic name is returned.
{"name" : "test01"}
Status Codes
Status Code | Description |
---|---|
200 | Successful. A topic name is returned. |
Error Codes
See Error Codes.
- URI