Skip to content
v2.275.0

Experimental

@aws-cdk/aws-iot-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.

TopicRuleProps Struct ​

Properties for defining an AWS IoT Rule.

Example ​

ts
import * as sns from 'aws-cdk-lib/aws-sns';

const topic = new sns.Topic(this, 'MyTopic');

const topicRule = new iot.TopicRule(this, 'TopicRule', {
  sql: iot.IotSql.fromStringAsVer20160323(
    "SELECT topic(2) as device_id, year, month, day FROM 'device/+/data'",
  ),
  actions: [
    new actions.SnsTopicAction(topic, {
      messageFormat: actions.SnsActionMessageFormat.JSON, // optional property, default is SnsActionMessageFormat.RAW
    }),
  ],
});

Properties ​

actionsoptionalIAction[]actionsoptionaltyping.List[IAction]actionsoptionalList<IAction>ActionsoptionalIAction[]Actionsoptional*[]IAction#
The actions associated with the topic rule.

Default: No actions will be perform

descriptionoptionalstringdescriptionoptionalstrdescriptionoptionalStringDescriptionoptionalstringDescriptionoptional*string= None#
A textual description of the topic rule.
enabledoptionalbooleanenabledoptionalboolenabledoptionalBooleanEnabledoptionalboolEnabledoptional*bool= true#
Specifies whether the rule is enabled.
errorActionoptionalIActionerror_actionoptionalIActionerrorActionoptionalIActionErrorActionoptionalIActionErrorActionoptionalIAction#
The action AWS IoT performs when it is unable to perform a rule's action.

Default: no action will be performed

sqlIotSqlsqlIotSqlsqlIotSqlSqlIotSqlSqlIotSqlrequired#
A simplified SQL syntax to filter messages received on an MQTT topic and push the data elsewhere.
topicRuleNameoptionalstringtopic_rule_nameoptionalstrtopicRuleNameoptionalStringTopicRuleNameoptionalstringTopicRuleNameoptional*string= None#
The name of the topic rule.