Publishing Messages Using a Template¶
Description¶
API name
Publish
Function
Use the message template to publish a message to a topic. After the message ID is returned, the message has been saved and is to be pushed to the subscribers of the topic. This API allows you to send messages to different types of subscribers using different template protocols with the same name.
URI¶
URI format
POST /v2/{project_id}/notifications/topics/{topic_urn}/publish
Parameter description
Parameter
Mandatory
Type
Description
project_id
Yes
String
Project ID
topic_urn
Yes
String
Unique resource ID of a topic. You can obtain it by referring to Querying Topics.
Request¶
Parameter description
Parameter
Mandatory
Type
Description
subject
No
String
Message subject, which is presented as the email subject when SMN sends messages to email subscribers
The message subject cannot exceed 512 bytes.
message_template_name
Yes
String
Message template name, which can be obtained according to Querying Message Templates
Note
Three message formats are supported:
message
message_structure
message_template_name
If the three formats are specified at the same time, they take effect in the following sequence:
message_structure>message_template_name>message
tags
No
JSON key-value pair
Variable parameters and values
Tags cannot be left blank.
time_to_live
No
String
Specifies the maximum retention period of a message in SMN.
After the retention period expires, SMN does not send this message.
Unit: second
Default retention period: 3600 (one hour)
The retention period must be a positive integer less than or equal to 604,800 (3600 x 24 x 7).
Example request
POST https://{SMN_Endpoint}/v2/{project_id}/notifications/topics/urn:smn:regionId: f96188c7ccaf4ffba0c9aa149ab2bd57:test_create_topic_v2/publish
{ "subject": "test message template v2", "message_template_name": "confirm_message", "time_to_live": "3600", "tags": { "topic_urn": "topic_urn3331", "topic_id": "topic_id3332" } }
Response¶
Parameter description
Parameter
Type
Description
request_id
String
Request ID, which is unique
message_id
String
Message ID, which is unique
Example response
{ "message_id": "bf94b63a5dfb475994d3ac34664e24f2", "request_id": "9974c07f6d554a6d827956acbeb4be5f" }
Returned Value¶
See Returned Value.
Error Codes¶
See Error Codes.