Creating a Topic
Function
This API is used to create a topic.
Authorization Information
Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions. For details about the required permissions, see Permissions Policies and Supported Actions.
URI
POST /v2/{project_id}/mqs/instances/{instance_id}/topics
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
project_id |
Yes |
String |
Project ID. For details about how to obtain a project ID, see "Appendix" > "Obtaining a Project ID" in this document. |
|
instance_id |
Yes |
String |
Instance ID. |
Request Parameters
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
X-Auth-Token |
Yes |
String |
User token, which can be obtained by calling the IAM API (value of X-Subject-Token in the response header). |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
name |
Yes |
String |
Topic name, which must start with a letter and contains 3 to 200 characters. Only digits, letters, underscores (_), and hyphens (-) are allowed. |
|
app_id |
Yes |
String |
Integration application key. |
|
app_key |
No |
String |
Integration application key. |
|
partition |
No |
Integer |
Number of topic partitions, which is used to set the number of concurrently consumed messages. Value range: 1 to 100. Default value: 3. |
|
replication |
No |
Integer |
Number of replicas, which is configured to ensure data reliability. Value range: 1 to 3. Default: 3.
NOTE:
|
|
access_policy |
Yes |
String |
Permission type.
|
|
sync_message_flush |
No |
Boolean |
Whether synchronous flushing is enabled. The default value is false. Synchronous flushing compromises performance. |
|
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 |
Message retention period. The default value is 72. Value range: 1 to 168, in hours |
|
tag |
No |
String |
Tag corresponding to the permission type. When the permission type is all, publish and subscribe tags are separated by ampersands (&). Multiple tags are separated by double vertical bars (||). |
|
description |
No |
String |
Description. Length: 0 to 1,000 characters. The value cannot begin with an equals sign (=), plus sign (+), hyphen (-), or at sign (@). |
|
sensitive_word |
No |
String |
Sensitive word. Multiple sensitive words are separated by double vertical bars (||). |
Response Parameters
Status code: 200
|
Parameter |
Type |
Description |
|---|---|---|
|
name |
String |
Topic name. |
Status code: 400
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code. |
|
error_msg |
String |
Error message. |
Status code: 403
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code. |
|
error_msg |
String |
Error message. |
Example Requests
Create a topic with 3 partitions and 3 replicas and set the message retention period to 72 hours.
POST https://{endpoint}/v2/{project_id}/mqs/instances/{instance_id}/topics
{
"name" : "topic-test-2",
"app_id" : "c5abd910-02b1-4bc4-b587-c3fe4c49dab9",
"partition" : 3,
"access_policy" : "all",
"replication" : 3,
"retention_time" : 72,
"sync_replication" : false,
"sync_message_flush" : false,
"tag" : "11 || 22 || aa || bb&11 || 22 || aa || bb",
"description" : "test",
"sensitive_word" : "sss || ddd"
}
Example Responses
Status code: 200
OK
{
"name" : "topic-mqs-test"
}
Status code: 400
Bad Request
{
"error_code" : 400,
"error_msg" : "Bad Request"
}
Status code: 403
Forbidden
{
"error_code" : 403,
"error_msg" : "Forbidden"
}
Status Codes
|
Status Code |
Description |
|---|---|
|
200 |
OK |
|
400 |
Bad Request |
|
403 |
Forbidden |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot