AWS IoT rule actions - AWS IoT Core

AWS IoT rule actions

AWS IoT rule actions specify what to do when a rule is triggered. You can define actions to send data to an Amazon DynamoDB database, send data to Amazon Kinesis Data Streams, invoke an AWS Lambda function, and so on. AWS IoT supports the following actions in AWS Regions where the action's service is available.

Rule action Description Name in API
Apache Kafka Sends a message to an Apache Kafka cluster. kafka
CloudWatch alarms Changes the state of an Amazon CloudWatch alarm. cloudwatchAlarm
CloudWatch Logs Sends a message to Amazon CloudWatch Logs. cloudwatchLogs
CloudWatch metrics Sends a message to a CloudWatch metric. cloudwatchMetric
DynamoDB Sends a message to a DynamoDB table. dynamoDB
DynamoDBv2 Sends message data to multiple columns in a DynamoDB table. dynamoDBv2
Elasticsearch Sends a message to an Elasticsearch endpoint. elasticsearch
HTTP Posts a message to an HTTPS endpoint. http
IoT Analytics Sends a message to an AWS IoT Analytics channel. iotAnalytics
IoT Events Sends a message to an AWS IoT Events input. iotEvents
IoT SiteWise Sends message data to AWS IoT SiteWise asset properties. iotSiteWise
Kinesis Data Firehose Sends a message to a Kinesis Data Firehose delivery stream. firehose
Kinesis Data Streams Sends a message to a Kinesis data stream. kinesis
Lambda Invokes a Lambda function with message data as input. lambda
OpenSearch Sends a message to an Amazon OpenSearch Service endpoint. OpenSearch
Republish Republishes a message to another MQTT topic. republish
S3 Stores a message in an Amazon Simple Storage Service (Amazon S3) bucket. s3
Salesforce IoT Sends a message to a Salesforce IoT input stream. salesforce
SNS Publishes a message as an Amazon Simple Notification Service (Amazon SNS) push notification. sns
SQS Sends a message to an Amazon Simple Queue Service (Amazon SQS) queue. sqs
Step Functions Starts an AWS Step Functions state machine. stepFunctions
Timestream Sends a message to an Amazon Timestream database table. timestream
  • You must define the rule in the same AWS Region as another service's resource, so that the rule action can interact with that resource.

  • The AWS IoT rules engine might make multiple attempts to perform an action in case of intermittent errors. If all attempts fail, the message is discarded and the error is available in your CloudWatch logs. You can specify an error action for each rule that is invoked after a failure occurs. For more information, see Error handling (error action).

  • Some rule actions trigger actions in services that integrate with AWS Key Management Service (AWS KMS) to support data encryption at rest. If you use a customer-managed AWS KMS key (KMS key) to encrypt data at rest, the service must have permission to use the KMS key on the caller's behalf. See the data encryption topics in the appropriate service guide to learn how to manage permissions for your customer-managed KMS key. For more information about customer-managed KMS keys, see AWS Key Management Service concepts in the AWS Key Management Service Developer Guide.