UpdatePipeline - AWS IoT Analytics


Updates the settings of a pipeline. You must specify both a channel and a datastore activity and, optionally, as many as 23 additional activities in the pipelineActivities array.

Request Syntax

PUT /pipelines/pipelineName HTTP/1.1 Content-type: application/json { "pipelineActivities": [ { "addAttributes": { "attributes": { "string" : "string" }, "name": "string", "next": "string" }, "channel": { "channelName": "string", "name": "string", "next": "string" }, "datastore": { "datastoreName": "string", "name": "string" }, "deviceRegistryEnrich": { "attribute": "string", "name": "string", "next": "string", "roleArn": "string", "thingName": "string" }, "deviceShadowEnrich": { "attribute": "string", "name": "string", "next": "string", "roleArn": "string", "thingName": "string" }, "filter": { "filter": "string", "name": "string", "next": "string" }, "lambda": { "batchSize": number, "lambdaName": "string", "name": "string", "next": "string" }, "math": { "attribute": "string", "math": "string", "name": "string", "next": "string" }, "removeAttributes": { "attributes": [ "string" ], "name": "string", "next": "string" }, "selectAttributes": { "attributes": [ "string" ], "name": "string", "next": "string" } } ] }

URI Request Parameters

The request uses the following URI parameters.


The name of the pipeline to update.

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

Pattern: (^(?!_{2}))(^[a-zA-Z0-9_]+$)

Required: Yes

Request Body

The request accepts the following data in JSON format.


A list of PipelineActivity objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.

The list can be 2-25 PipelineActivity objects and must contain both a channel and a datastore activity. Each entry in the list must contain only one activity. For example:

pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]

Type: Array of PipelineActivity objects

Array Members: Minimum number of 1 item. Maximum number of 25 items.

Required: Yes

Response Syntax

HTTP/1.1 200

Response Elements

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


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


The command caused an internal limit to be exceeded.

HTTP Status Code: 410


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: 400

See Also

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