Publishes a message to a specified topic. After the message is published to the topic, Message Service (MNS) pushes the message to the specified endpoints.

Request headers

This operation uses only common request headers. For more information, see Common parameters.

Request syntax

POST /topics/$TopicName/messages HTTP/1.1

Request parameters

Parameter Type Required The memory size consumed by each core. Automatically allocated.
MessageBody String Yes The content of the message.
MessageTag String Yes The tag of the message.
MessageAttributes Object No The endpoint to which messages are pushed.

Set the value to Queue. This value indicates that messages are pushed to a queue.

Response parameters

Parameter Type Example Description
MessageId String D273CD6A89564E54-1-15180395A19-20000**** The ID of the message. The message ID is unique in the topic.
MessageBodyMD5 String 3AC6DD36D2D6B7283F2F490A0975**** The MD5 hash of the message body.


Sample requests

POST /topics/MyTopic/messages HTTP/1.1
Host: 123456789098****
Date: Tue, 08 Dec 2015 06:13:40 GMT
Authorization: MNS 15B4D3461F177624****:aibzWu1iDEx9LwO56+kHgA3e****
x-mns-version: 2015-06-06

<?xml version="1.0" encoding="UTF-8"?>
<Message xmlns="">
    <MessageBody>hello topic</MessageBody>

Sample responses

HTTP/1.1 201 Created

<?xml version="1.0" encoding="utf-8"?>
<Message xmlns="">

The following table describes the error codes.

Error code Error message HTTP status code
TopicNotExist The topic you provided does not exist. 404