AWS IoT Analytics
AWS IoT Analytics Documentation (API Version 2017-11-27)


Sends messages to a channel.

Request Syntax

POST /messages/batch HTTP/1.1 Content-type: application/json { "channelName": "string", "messages": [ { "messageId": "string", "payload": blob } ] }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.


The name of the channel where the messages are sent.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: ^[a-zA-Z0-9_]+$

Required: Yes


The list of messages to be sent. Each message has format: '{ "messageId": "string", "payload": "string"}'.

Type: Array of Message objects

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "batchPutMessageErrorEntries": [ { "errorCode": "string", "errorMessage": "string", "messageId": "string" } ] }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.


A list of any errors encountered when sending the messages to the channel.

Type: Array of BatchPutMessageErrorEntry objects


For information about the errors that are common to all actions, see Common Errors.


There was an internal failure.

HTTP Status Code: 500


The request was not valid.

HTTP Status Code: 400


A resource with the specified name could not be found.

HTTP Status Code: 404


The service is temporarily unavailable.

HTTP Status Code: 503


The request was denied due to request throttling.

HTTP Status Code: 429

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: