Creating a Topic
Function
This API is used to create a topic. Each user can create up to 3,000 topics. In high-concurrent scenarios, a user may create a few topics more than 3,000. The API is idempotent. It returns a successful result after creating a topic. If a topic of the same name already exists, the status code is 200. Otherwise, the status code is 201.
URI
POST /v2/{project_id}/notifications/topics
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Specifies the project ID.For details about how to obtain the project ID, see Obtaining the Project ID. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
Specifies a user token. It can be obtained by calling an IAM API. The value of X-Subject-Token in the response header is the user token. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
name |
Yes |
String |
Specifies the topic name. Enter 1 to 255 characters. Only letters, digits, hyphens (-), and underscores (_) are allowed. The topic name must start with a letter or digit. Minimum: 1 Maximum: 255 |
display_name |
Yes |
String |
Specifies the topic display name, which is presented as the name of the email sender in email messages. The display name cannot exceed 192 bytes. display_name is left blank by default. Minimum: 1 Maximum: 192 |
enterprise_project_id |
No |
String |
Specifies the enterprise project ID. It is required only when the enterprise project function is enabled. Default: 0 |
Response Parameters
Status code: 201
Parameter |
Type |
Description |
---|---|---|
request_id |
String |
Specifies the request ID, which is unique. |
topic_urn |
String |
Specifies the resource identifier of the topic, which is unique. To obtain the resource identifier, see [Querying Topics]. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
request_id |
String |
Specifies the request ID, which is unique. |
code |
String |
Specifies the error code. |
message |
String |
Describes the error message. |
Status code: 403
Parameter |
Type |
Description |
---|---|---|
request_id |
String |
Specifies the request ID, which is unique. |
code |
String |
Specifies the error code. |
message |
String |
Describes the error message. |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
request_id |
String |
Specifies the request ID, which is unique. |
code |
String |
Specifies the error code. |
message |
String |
Describes the error message. |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
request_id |
String |
Specifies the request ID, which is unique. |
code |
String |
Specifies the error code. |
message |
String |
Describes the error message. |
Example Requests
Creating a topic
POST https://{SMN_Endpoint}/v2/{project_id}/notifications/topics { "name" : "test_topic_v2", "display_name" : "testtest" }
Example Responses
Status code: 201
OK
{ "request_id" : "6a63a18b8bab40ffb71ebd9cb80d0085", "topic_urn" : "urn:smn:regionId:f96188c7ccaf4ffba0c9aa149ab2bd57:test_topic_v2" }
Status Codes
Status Code |
Description |
---|---|
201 |
OK |
400 |
Bad Request |
403 |
Unauthorized |
404 |
Not Found |
500 |
Internal Server Error |
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.