{
"PropertyTypes": { "AWS::IoT::TopicRule.Action": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html", "Properties": { "CloudwatchAlarm": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-cloudwatchalarm", "Required": false, "Type": "CloudwatchAlarmAction", "UpdateType": "Mutable" }, "CloudwatchMetric": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-cloudwatchmetric", "Required": false, "Type": "CloudwatchMetricAction", "UpdateType": "Mutable" }, "DynamoDB": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-dynamodb", "Required": false, "Type": "DynamoDBAction", "UpdateType": "Mutable" }, "Elasticsearch": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-elasticsearch", "Required": false, "Type": "ElasticsearchAction", "UpdateType": "Mutable" }, "Firehose": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-firehose", "Required": false, "Type": "FirehoseAction", "UpdateType": "Mutable" }, "Kinesis": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-kinesis", "Required": false, "Type": "KinesisAction", "UpdateType": "Mutable" }, "Lambda": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-lambda", "Required": false, "Type": "LambdaAction", "UpdateType": "Mutable" }, "Republish": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-republish", "Required": false, "Type": "RepublishAction", "UpdateType": "Mutable" }, "S3": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-s3", "Required": false, "Type": "S3Action", "UpdateType": "Mutable" }, "Sns": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-sns", "Required": false, "Type": "SnsAction", "UpdateType": "Mutable" }, "Sqs": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-sqs", "Required": false, "Type": "SqsAction", "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.CloudwatchAlarmAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html", "Properties": { "AlarmName": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-alarmname", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "StateReason": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-statereason", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "StateValue": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-statevalue", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.CloudwatchMetricAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html", "Properties": { "MetricName": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricname", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "MetricNamespace": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricnamespace", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "MetricTimestamp": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metrictimestamp", "PrimitiveType": "String", "Required": false, "UpdateType": "Mutable" }, "MetricUnit": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricunit", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "MetricValue": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricvalue", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.DynamoDBAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html", "Properties": { "HashKeyField": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-hashkeyfield", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "HashKeyValue": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-hashkeyvalue", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "PayloadField": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-payloadfield", "PrimitiveType": "String", "Required": false, "UpdateType": "Mutable" }, "RangeKeyField": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-rangekeyfield", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RangeKeyValue": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-rangekeyvalue", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "TableName": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-tablename", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.ElasticsearchAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html", "Properties": { "Endpoint": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-endpoint", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "Id": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-id", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "Index": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-index", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "Type": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-type", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.FirehoseAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-firehose.html", "Properties": { "DeliveryStreamName": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-firehose.html#cfn-iot-firehose-deliverystreamname", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-firehose.html#cfn-iot-firehose-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.KinesisAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html", "Properties": { "PartitionKey": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html#cfn-iot-kinesis-partitionkey", "PrimitiveType": "String", "Required": false, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html#cfn-iot-kinesis-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "StreamName": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html#cfn-iot-kinesis-streamname", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.LambdaAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-lambda.html", "Properties": { "FunctionArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-lambda.html#cfn-iot-lambda-functionarn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.RepublishAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-republish.html", "Properties": { "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-republish.html#cfn-iot-republish-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "Topic": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-republish.html#cfn-iot-republish-topic", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.S3Action": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html", "Properties": { "BucketName": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html#cfn-iot-s3-bucketname", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "Key": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html#cfn-iot-s3-key", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html#cfn-iot-s3-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.SnsAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html", "Properties": { "MessageFormat": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html#cfn-iot-sns-snsaction", "PrimitiveType": "String", "Required": false, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html#cfn-iot-sns-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "TargetArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html#cfn-iot-sns-targetarn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.SqsAction": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html", "Properties": { "QueueUrl": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html#cfn-iot-sqs-queueurl", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "RoleArn": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html#cfn-iot-sqs-rolearn", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" }, "UseBase64": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html#cfn-iot-sqs-usebase64", "PrimitiveType": "Boolean", "Required": false, "UpdateType": "Mutable" } } }, "AWS::IoT::TopicRule.TopicRulePayload": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html", "Properties": { "Actions": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-actions", "DuplicatesAllowed": false, "ItemType": "Action", "Required": true, "Type": "List", "UpdateType": "Mutable" }, "AwsIotSqlVersion": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-awsiotsqlversion", "PrimitiveType": "String", "Required": false, "UpdateType": "Mutable" }, "Description": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-description", "PrimitiveType": "String", "Required": false, "UpdateType": "Mutable" }, "RuleDisabled": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-ruledisabled", "PrimitiveType": "Boolean", "Required": true, "UpdateType": "Mutable" }, "Sql": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-sql", "PrimitiveType": "String", "Required": true, "UpdateType": "Mutable" } } } }, "ResourceSpecificationVersion": "1.0.0", "ResourceType": { "AWS::IoT::TopicRule": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html", "Properties": { "RuleName": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-rulename", "PrimitiveType": "String", "Required": false, "UpdateType": "Immutable" }, "TopicRulePayload": { "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-topicrulepayload", "Required": true, "Type": "TopicRulePayload", "UpdateType": "Mutable" } } } }
}