1. Packages
  2. AWS
  3. API Docs
  4. iot
  5. TopicRule
AWS v6.77.0 published on Wednesday, Apr 9, 2025 by Pulumi

aws.iot.TopicRule

Explore with Pulumi AI

Creates and manages an AWS IoT topic rule.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const mytopic = new aws.sns.Topic("mytopic", {name: "mytopic"});
const myerrortopic = new aws.sns.Topic("myerrortopic", {name: "myerrortopic"});
const rule = new aws.iot.TopicRule("rule", {
    name: "MyRule",
    description: "Example rule",
    enabled: true,
    sql: "SELECT * FROM 'topic/test'",
    sqlVersion: "2016-03-23",
    sns: [{
        messageFormat: "RAW",
        roleArn: role.arn,
        targetArn: mytopic.arn,
    }],
    errorAction: {
        sns: {
            messageFormat: "RAW",
            roleArn: role.arn,
            targetArn: myerrortopic.arn,
        },
    },
});
const assumeRole = aws.iam.getPolicyDocument({
    statements: [{
        effect: "Allow",
        principals: [{
            type: "Service",
            identifiers: ["iot.amazonaws.com"],
        }],
        actions: ["sts:AssumeRole"],
    }],
});
const myrole = new aws.iam.Role("myrole", {
    name: "myrole",
    assumeRolePolicy: assumeRole.then(assumeRole => assumeRole.json),
});
const mypolicy = mytopic.arn.apply(arn => aws.iam.getPolicyDocumentOutput({
    statements: [{
        effect: "Allow",
        actions: ["sns:Publish"],
        resources: [arn],
    }],
}));
const mypolicyRolePolicy = new aws.iam.RolePolicy("mypolicy", {
    name: "mypolicy",
    role: myrole.id,
    policy: mypolicy.apply(mypolicy => mypolicy.json),
});
Copy
import pulumi
import pulumi_aws as aws

mytopic = aws.sns.Topic("mytopic", name="mytopic")
myerrortopic = aws.sns.Topic("myerrortopic", name="myerrortopic")
rule = aws.iot.TopicRule("rule",
    name="MyRule",
    description="Example rule",
    enabled=True,
    sql="SELECT * FROM 'topic/test'",
    sql_version="2016-03-23",
    sns=[{
        "message_format": "RAW",
        "role_arn": role["arn"],
        "target_arn": mytopic.arn,
    }],
    error_action={
        "sns": {
            "message_format": "RAW",
            "role_arn": role["arn"],
            "target_arn": myerrortopic.arn,
        },
    })
assume_role = aws.iam.get_policy_document(statements=[{
    "effect": "Allow",
    "principals": [{
        "type": "Service",
        "identifiers": ["iot.amazonaws.com"],
    }],
    "actions": ["sts:AssumeRole"],
}])
myrole = aws.iam.Role("myrole",
    name="myrole",
    assume_role_policy=assume_role.json)
mypolicy = mytopic.arn.apply(lambda arn: aws.iam.get_policy_document_output(statements=[{
    "effect": "Allow",
    "actions": ["sns:Publish"],
    "resources": [arn],
}]))
mypolicy_role_policy = aws.iam.RolePolicy("mypolicy",
    name="mypolicy",
    role=myrole.id,
    policy=mypolicy.json)
Copy
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iot"
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/sns"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
mytopic, err := sns.NewTopic(ctx, "mytopic", &sns.TopicArgs{
Name: pulumi.String("mytopic"),
})
if err != nil {
return err
}
myerrortopic, err := sns.NewTopic(ctx, "myerrortopic", &sns.TopicArgs{
Name: pulumi.String("myerrortopic"),
})
if err != nil {
return err
}
_, err = iot.NewTopicRule(ctx, "rule", &iot.TopicRuleArgs{
Name: pulumi.String("MyRule"),
Description: pulumi.String("Example rule"),
Enabled: pulumi.Bool(true),
Sql: pulumi.String("SELECT * FROM 'topic/test'"),
SqlVersion: pulumi.String("2016-03-23"),
Sns: iot.TopicRuleSnsArray{
&iot.TopicRuleSnsArgs{
MessageFormat: pulumi.String("RAW"),
RoleArn: pulumi.Any(role.Arn),
TargetArn: mytopic.Arn,
},
},
ErrorAction: &iot.TopicRuleErrorActionArgs{
Sns: &iot.TopicRuleErrorActionSnsArgs{
MessageFormat: pulumi.String("RAW"),
RoleArn: pulumi.Any(role.Arn),
TargetArn: myerrortopic.Arn,
},
},
})
if err != nil {
return err
}
assumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
Statements: []iam.GetPolicyDocumentStatement{
{
Effect: pulumi.StringRef("Allow"),
Principals: []iam.GetPolicyDocumentStatementPrincipal{
{
Type: "Service",
Identifiers: []string{
"iot.amazonaws.com",
},
},
},
Actions: []string{
"sts:AssumeRole",
},
},
},
}, nil);
if err != nil {
return err
}
myrole, err := iam.NewRole(ctx, "myrole", &iam.RoleArgs{
Name: pulumi.String("myrole"),
AssumeRolePolicy: pulumi.String(assumeRole.Json),
})
if err != nil {
return err
}
mypolicy := mytopic.Arn.ApplyT(func(arn string) (iam.GetPolicyDocumentResult, error) {
return iam.GetPolicyDocumentResult(interface{}(iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{
Statements: []iam.GetPolicyDocumentStatement{
{
Effect: "Allow",
Actions: []string{
"sns:Publish",
},
Resources: interface{}{
arn,
},
},
},
}, nil))), nil
}).(iam.GetPolicyDocumentResultOutput)
_, err = iam.NewRolePolicy(ctx, "mypolicy", &iam.RolePolicyArgs{
Name: pulumi.String("mypolicy"),
Role: myrole.ID(),
Policy: pulumi.String(mypolicy.ApplyT(func(mypolicy iam.GetPolicyDocumentResult) (*string, error) {
return &mypolicy.Json, nil
}).(pulumi.StringPtrOutput)),
})
if err != nil {
return err
}
return nil
})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var mytopic = new Aws.Sns.Topic("mytopic", new()
    {
        Name = "mytopic",
    });

    var myerrortopic = new Aws.Sns.Topic("myerrortopic", new()
    {
        Name = "myerrortopic",
    });

    var rule = new Aws.Iot.TopicRule("rule", new()
    {
        Name = "MyRule",
        Description = "Example rule",
        Enabled = true,
        Sql = "SELECT * FROM 'topic/test'",
        SqlVersion = "2016-03-23",
        Sns = new[]
        {
            new Aws.Iot.Inputs.TopicRuleSnsArgs
            {
                MessageFormat = "RAW",
                RoleArn = role.Arn,
                TargetArn = mytopic.Arn,
            },
        },
        ErrorAction = new Aws.Iot.Inputs.TopicRuleErrorActionArgs
        {
            Sns = new Aws.Iot.Inputs.TopicRuleErrorActionSnsArgs
            {
                MessageFormat = "RAW",
                RoleArn = role.Arn,
                TargetArn = myerrortopic.Arn,
            },
        },
    });

    var assumeRole = Aws.Iam.GetPolicyDocument.Invoke(new()
    {
        Statements = new[]
        {
            new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
            {
                Effect = "Allow",
                Principals = new[]
                {
                    new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs
                    {
                        Type = "Service",
                        Identifiers = new[]
                        {
                            "iot.amazonaws.com",
                        },
                    },
                },
                Actions = new[]
                {
                    "sts:AssumeRole",
                },
            },
        },
    });

    var myrole = new Aws.Iam.Role("myrole", new()
    {
        Name = "myrole",
        AssumeRolePolicy = assumeRole.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
    });

    var mypolicy = Aws.Iam.GetPolicyDocument.Invoke(new()
    {
        Statements = new[]
        {
            new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
            {
                Effect = "Allow",
                Actions = new[]
                {
                    "sns:Publish",
                },
                Resources = new[]
                {
                    mytopic.Arn,
                },
            },
        },
    });

    var mypolicyRolePolicy = new Aws.Iam.RolePolicy("mypolicy", new()
    {
        Name = "mypolicy",
        Role = myrole.Id,
        Policy = mypolicy.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.sns.Topic;
import com.pulumi.aws.sns.TopicArgs;
import com.pulumi.aws.iot.TopicRule;
import com.pulumi.aws.iot.TopicRuleArgs;
import com.pulumi.aws.iot.inputs.TopicRuleSnsArgs;
import com.pulumi.aws.iot.inputs.TopicRuleErrorActionArgs;
import com.pulumi.aws.iot.inputs.TopicRuleErrorActionSnsArgs;
import com.pulumi.aws.iam.IamFunctions;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
import com.pulumi.aws.iam.Role;
import com.pulumi.aws.iam.RoleArgs;
import com.pulumi.aws.iam.RolePolicy;
import com.pulumi.aws.iam.RolePolicyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var mytopic = new Topic("mytopic", TopicArgs.builder()
            .name("mytopic")
            .build());

        var myerrortopic = new Topic("myerrortopic", TopicArgs.builder()
            .name("myerrortopic")
            .build());

        var rule = new TopicRule("rule", TopicRuleArgs.builder()
            .name("MyRule")
            .description("Example rule")
            .enabled(true)
            .sql("SELECT * FROM 'topic/test'")
            .sqlVersion("2016-03-23")
            .sns(TopicRuleSnsArgs.builder()
                .messageFormat("RAW")
                .roleArn(role.arn())
                .targetArn(mytopic.arn())
                .build())
            .errorAction(TopicRuleErrorActionArgs.builder()
                .sns(TopicRuleErrorActionSnsArgs.builder()
                    .messageFormat("RAW")
                    .roleArn(role.arn())
                    .targetArn(myerrortopic.arn())
                    .build())
                .build())
            .build());

        final var assumeRole = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
            .statements(GetPolicyDocumentStatementArgs.builder()
                .effect("Allow")
                .principals(GetPolicyDocumentStatementPrincipalArgs.builder()
                    .type("Service")
                    .identifiers("iot.amazonaws.com")
                    .build())
                .actions("sts:AssumeRole")
                .build())
            .build());

        var myrole = new Role("myrole", RoleArgs.builder()
            .name("myrole")
            .assumeRolePolicy(assumeRole.json())
            .build());

        final var mypolicy = mytopic.arn().applyValue(_arn -> IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
            .statements(GetPolicyDocumentStatementArgs.builder()
                .effect("Allow")
                .actions("sns:Publish")
                .resources(_arn)
                .build())
            .build()));

        var mypolicyRolePolicy = new RolePolicy("mypolicyRolePolicy", RolePolicyArgs.builder()
            .name("mypolicy")
            .role(myrole.id())
            .policy(mypolicy.applyValue(_mypolicy -> _mypolicy.json()))
            .build());

    }
}
Copy
resources:
  rule:
    type: aws:iot:TopicRule
    properties:
      name: MyRule
      description: Example rule
      enabled: true
      sql: SELECT * FROM 'topic/test'
      sqlVersion: 2016-03-23
      sns:
        - messageFormat: RAW
          roleArn: ${role.arn}
          targetArn: ${mytopic.arn}
      errorAction:
        sns:
          messageFormat: RAW
          roleArn: ${role.arn}
          targetArn: ${myerrortopic.arn}
  mytopic:
    type: aws:sns:Topic
    properties:
      name: mytopic
  myerrortopic:
    type: aws:sns:Topic
    properties:
      name: myerrortopic
  myrole:
    type: aws:iam:Role
    properties:
      name: myrole
      assumeRolePolicy: ${assumeRole.json}
  mypolicyRolePolicy:
    type: aws:iam:RolePolicy
    name: mypolicy
    properties:
      name: mypolicy
      role: ${myrole.id}
      policy: ${mypolicy.json}
variables:
  assumeRole:
    fn::invoke:
      function: aws:iam:getPolicyDocument
      arguments:
        statements:
          - effect: Allow
            principals:
              - type: Service
                identifiers:
                  - iot.amazonaws.com
            actions:
              - sts:AssumeRole
  mypolicy:
    fn::invoke:
      function: aws:iam:getPolicyDocument
      arguments:
        statements:
          - effect: Allow
            actions:
              - sns:Publish
            resources:
              - ${mytopic.arn}
Copy

Create TopicRule Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new TopicRule(name: string, args: TopicRuleArgs, opts?: CustomResourceOptions);
@overload
def TopicRule(resource_name: str,
              args: TopicRuleArgs,
              opts: Optional[ResourceOptions] = None)

@overload
def TopicRule(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              enabled: Optional[bool] = None,
              sql_version: Optional[str] = None,
              sql: Optional[str] = None,
              iot_events: Optional[Sequence[TopicRuleIotEventArgs]] = None,
              kineses: Optional[Sequence[TopicRuleKinesisArgs]] = None,
              dynamodbv2s: Optional[Sequence[TopicRuleDynamodbv2Args]] = None,
              elasticsearch: Optional[Sequence[TopicRuleElasticsearchArgs]] = None,
              description: Optional[str] = None,
              error_action: Optional[TopicRuleErrorActionArgs] = None,
              firehoses: Optional[Sequence[TopicRuleFirehoseArgs]] = None,
              https: Optional[Sequence[TopicRuleHttpArgs]] = None,
              iot_analytics: Optional[Sequence[TopicRuleIotAnalyticArgs]] = None,
              cloudwatch_alarms: Optional[Sequence[TopicRuleCloudwatchAlarmArgs]] = None,
              kafkas: Optional[Sequence[TopicRuleKafkaArgs]] = None,
              dynamodbs: Optional[Sequence[TopicRuleDynamodbArgs]] = None,
              lambdas: Optional[Sequence[TopicRuleLambdaArgs]] = None,
              name: Optional[str] = None,
              republishes: Optional[Sequence[TopicRuleRepublishArgs]] = None,
              s3: Optional[Sequence[TopicRuleS3Args]] = None,
              sns: Optional[Sequence[TopicRuleSnsArgs]] = None,
              cloudwatch_metrics: Optional[Sequence[TopicRuleCloudwatchMetricArgs]] = None,
              cloudwatch_logs: Optional[Sequence[TopicRuleCloudwatchLogArgs]] = None,
              sqs: Optional[Sequence[TopicRuleSqsArgs]] = None,
              step_functions: Optional[Sequence[TopicRuleStepFunctionArgs]] = None,
              tags: Optional[Mapping[str, str]] = None,
              timestreams: Optional[Sequence[TopicRuleTimestreamArgs]] = None)
func NewTopicRule(ctx *Context, name string, args TopicRuleArgs, opts ...ResourceOption) (*TopicRule, error)
public TopicRule(string name, TopicRuleArgs args, CustomResourceOptions? opts = null)
public TopicRule(String name, TopicRuleArgs args)
public TopicRule(String name, TopicRuleArgs args, CustomResourceOptions options)
type: aws:iot:TopicRule
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. TopicRuleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. TopicRuleArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. TopicRuleArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. TopicRuleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. TopicRuleArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var topicRuleResource = new Aws.Iot.TopicRule("topicRuleResource", new()
{
    Enabled = false,
    SqlVersion = "string",
    Sql = "string",
    IotEvents = new[]
    {
        new Aws.Iot.Inputs.TopicRuleIotEventArgs
        {
            InputName = "string",
            RoleArn = "string",
            BatchMode = false,
            MessageId = "string",
        },
    },
    Kineses = new[]
    {
        new Aws.Iot.Inputs.TopicRuleKinesisArgs
        {
            RoleArn = "string",
            StreamName = "string",
            PartitionKey = "string",
        },
    },
    Dynamodbv2s = new[]
    {
        new Aws.Iot.Inputs.TopicRuleDynamodbv2Args
        {
            RoleArn = "string",
            PutItem = new Aws.Iot.Inputs.TopicRuleDynamodbv2PutItemArgs
            {
                TableName = "string",
            },
        },
    },
    Elasticsearch = new[]
    {
        new Aws.Iot.Inputs.TopicRuleElasticsearchArgs
        {
            Endpoint = "string",
            Id = "string",
            Index = "string",
            RoleArn = "string",
            Type = "string",
        },
    },
    Description = "string",
    ErrorAction = new Aws.Iot.Inputs.TopicRuleErrorActionArgs
    {
        CloudwatchAlarm = new Aws.Iot.Inputs.TopicRuleErrorActionCloudwatchAlarmArgs
        {
            AlarmName = "string",
            RoleArn = "string",
            StateReason = "string",
            StateValue = "string",
        },
        CloudwatchLogs = new Aws.Iot.Inputs.TopicRuleErrorActionCloudwatchLogsArgs
        {
            LogGroupName = "string",
            RoleArn = "string",
            BatchMode = false,
        },
        CloudwatchMetric = new Aws.Iot.Inputs.TopicRuleErrorActionCloudwatchMetricArgs
        {
            MetricName = "string",
            MetricNamespace = "string",
            MetricUnit = "string",
            MetricValue = "string",
            RoleArn = "string",
            MetricTimestamp = "string",
        },
        Dynamodb = new Aws.Iot.Inputs.TopicRuleErrorActionDynamodbArgs
        {
            HashKeyField = "string",
            HashKeyValue = "string",
            RoleArn = "string",
            TableName = "string",
            HashKeyType = "string",
            Operation = "string",
            PayloadField = "string",
            RangeKeyField = "string",
            RangeKeyType = "string",
            RangeKeyValue = "string",
        },
        Dynamodbv2 = new Aws.Iot.Inputs.TopicRuleErrorActionDynamodbv2Args
        {
            RoleArn = "string",
            PutItem = new Aws.Iot.Inputs.TopicRuleErrorActionDynamodbv2PutItemArgs
            {
                TableName = "string",
            },
        },
        Elasticsearch = new Aws.Iot.Inputs.TopicRuleErrorActionElasticsearchArgs
        {
            Endpoint = "string",
            Id = "string",
            Index = "string",
            RoleArn = "string",
            Type = "string",
        },
        Firehose = new Aws.Iot.Inputs.TopicRuleErrorActionFirehoseArgs
        {
            DeliveryStreamName = "string",
            RoleArn = "string",
            BatchMode = false,
            Separator = "string",
        },
        Http = new Aws.Iot.Inputs.TopicRuleErrorActionHttpArgs
        {
            Url = "string",
            ConfirmationUrl = "string",
            HttpHeaders = new[]
            {
                new Aws.Iot.Inputs.TopicRuleErrorActionHttpHttpHeaderArgs
                {
                    Key = "string",
                    Value = "string",
                },
            },
        },
        IotAnalytics = new Aws.Iot.Inputs.TopicRuleErrorActionIotAnalyticsArgs
        {
            ChannelName = "string",
            RoleArn = "string",
            BatchMode = false,
        },
        IotEvents = new Aws.Iot.Inputs.TopicRuleErrorActionIotEventsArgs
        {
            InputName = "string",
            RoleArn = "string",
            BatchMode = false,
            MessageId = "string",
        },
        Kafka = new Aws.Iot.Inputs.TopicRuleErrorActionKafkaArgs
        {
            ClientProperties = 
            {
                { "string", "string" },
            },
            DestinationArn = "string",
            Topic = "string",
            Headers = new[]
            {
                new Aws.Iot.Inputs.TopicRuleErrorActionKafkaHeaderArgs
                {
                    Key = "string",
                    Value = "string",
                },
            },
            Key = "string",
            Partition = "string",
        },
        Kinesis = new Aws.Iot.Inputs.TopicRuleErrorActionKinesisArgs
        {
            RoleArn = "string",
            StreamName = "string",
            PartitionKey = "string",
        },
        Lambda = new Aws.Iot.Inputs.TopicRuleErrorActionLambdaArgs
        {
            FunctionArn = "string",
        },
        Republish = new Aws.Iot.Inputs.TopicRuleErrorActionRepublishArgs
        {
            RoleArn = "string",
            Topic = "string",
            Qos = 0,
        },
        S3 = new Aws.Iot.Inputs.TopicRuleErrorActionS3Args
        {
            BucketName = "string",
            Key = "string",
            RoleArn = "string",
            CannedAcl = "string",
        },
        Sns = new Aws.Iot.Inputs.TopicRuleErrorActionSnsArgs
        {
            RoleArn = "string",
            TargetArn = "string",
            MessageFormat = "string",
        },
        Sqs = new Aws.Iot.Inputs.TopicRuleErrorActionSqsArgs
        {
            QueueUrl = "string",
            RoleArn = "string",
            UseBase64 = false,
        },
        StepFunctions = new Aws.Iot.Inputs.TopicRuleErrorActionStepFunctionsArgs
        {
            RoleArn = "string",
            StateMachineName = "string",
            ExecutionNamePrefix = "string",
        },
        Timestream = new Aws.Iot.Inputs.TopicRuleErrorActionTimestreamArgs
        {
            DatabaseName = "string",
            Dimensions = new[]
            {
                new Aws.Iot.Inputs.TopicRuleErrorActionTimestreamDimensionArgs
                {
                    Name = "string",
                    Value = "string",
                },
            },
            RoleArn = "string",
            TableName = "string",
            Timestamp = new Aws.Iot.Inputs.TopicRuleErrorActionTimestreamTimestampArgs
            {
                Unit = "string",
                Value = "string",
            },
        },
    },
    Firehoses = new[]
    {
        new Aws.Iot.Inputs.TopicRuleFirehoseArgs
        {
            DeliveryStreamName = "string",
            RoleArn = "string",
            BatchMode = false,
            Separator = "string",
        },
    },
    Https = new[]
    {
        new Aws.Iot.Inputs.TopicRuleHttpArgs
        {
            Url = "string",
            ConfirmationUrl = "string",
            HttpHeaders = new[]
            {
                new Aws.Iot.Inputs.TopicRuleHttpHttpHeaderArgs
                {
                    Key = "string",
                    Value = "string",
                },
            },
        },
    },
    IotAnalytics = new[]
    {
        new Aws.Iot.Inputs.TopicRuleIotAnalyticArgs
        {
            ChannelName = "string",
            RoleArn = "string",
            BatchMode = false,
        },
    },
    CloudwatchAlarms = new[]
    {
        new Aws.Iot.Inputs.TopicRuleCloudwatchAlarmArgs
        {
            AlarmName = "string",
            RoleArn = "string",
            StateReason = "string",
            StateValue = "string",
        },
    },
    Kafkas = new[]
    {
        new Aws.Iot.Inputs.TopicRuleKafkaArgs
        {
            ClientProperties = 
            {
                { "string", "string" },
            },
            DestinationArn = "string",
            Topic = "string",
            Headers = new[]
            {
                new Aws.Iot.Inputs.TopicRuleKafkaHeaderArgs
                {
                    Key = "string",
                    Value = "string",
                },
            },
            Key = "string",
            Partition = "string",
        },
    },
    Dynamodbs = new[]
    {
        new Aws.Iot.Inputs.TopicRuleDynamodbArgs
        {
            HashKeyField = "string",
            HashKeyValue = "string",
            RoleArn = "string",
            TableName = "string",
            HashKeyType = "string",
            Operation = "string",
            PayloadField = "string",
            RangeKeyField = "string",
            RangeKeyType = "string",
            RangeKeyValue = "string",
        },
    },
    Lambdas = new[]
    {
        new Aws.Iot.Inputs.TopicRuleLambdaArgs
        {
            FunctionArn = "string",
        },
    },
    Name = "string",
    Republishes = new[]
    {
        new Aws.Iot.Inputs.TopicRuleRepublishArgs
        {
            RoleArn = "string",
            Topic = "string",
            Qos = 0,
        },
    },
    S3 = new[]
    {
        new Aws.Iot.Inputs.TopicRuleS3Args
        {
            BucketName = "string",
            Key = "string",
            RoleArn = "string",
            CannedAcl = "string",
        },
    },
    Sns = new[]
    {
        new Aws.Iot.Inputs.TopicRuleSnsArgs
        {
            RoleArn = "string",
            TargetArn = "string",
            MessageFormat = "string",
        },
    },
    CloudwatchMetrics = new[]
    {
        new Aws.Iot.Inputs.TopicRuleCloudwatchMetricArgs
        {
            MetricName = "string",
            MetricNamespace = "string",
            MetricUnit = "string",
            MetricValue = "string",
            RoleArn = "string",
            MetricTimestamp = "string",
        },
    },
    CloudwatchLogs = new[]
    {
        new Aws.Iot.Inputs.TopicRuleCloudwatchLogArgs
        {
            LogGroupName = "string",
            RoleArn = "string",
            BatchMode = false,
        },
    },
    Sqs = new[]
    {
        new Aws.Iot.Inputs.TopicRuleSqsArgs
        {
            QueueUrl = "string",
            RoleArn = "string",
            UseBase64 = false,
        },
    },
    StepFunctions = new[]
    {
        new Aws.Iot.Inputs.TopicRuleStepFunctionArgs
        {
            RoleArn = "string",
            StateMachineName = "string",
            ExecutionNamePrefix = "string",
        },
    },
    Tags = 
    {
        { "string", "string" },
    },
    Timestreams = new[]
    {
        new Aws.Iot.Inputs.TopicRuleTimestreamArgs
        {
            DatabaseName = "string",
            Dimensions = new[]
            {
                new Aws.Iot.Inputs.TopicRuleTimestreamDimensionArgs
                {
                    Name = "string",
                    Value = "string",
                },
            },
            RoleArn = "string",
            TableName = "string",
            Timestamp = new Aws.Iot.Inputs.TopicRuleTimestreamTimestampArgs
            {
                Unit = "string",
                Value = "string",
            },
        },
    },
});
Copy
example, err := iot.NewTopicRule(ctx, "topicRuleResource", &iot.TopicRuleArgs{
	Enabled:    pulumi.Bool(false),
	SqlVersion: pulumi.String("string"),
	Sql:        pulumi.String("string"),
	IotEvents: iot.TopicRuleIotEventArray{
		&iot.TopicRuleIotEventArgs{
			InputName: pulumi.String("string"),
			RoleArn:   pulumi.String("string"),
			BatchMode: pulumi.Bool(false),
			MessageId: pulumi.String("string"),
		},
	},
	Kineses: iot.TopicRuleKinesisArray{
		&iot.TopicRuleKinesisArgs{
			RoleArn:      pulumi.String("string"),
			StreamName:   pulumi.String("string"),
			PartitionKey: pulumi.String("string"),
		},
	},
	Dynamodbv2s: iot.TopicRuleDynamodbv2Array{
		&iot.TopicRuleDynamodbv2Args{
			RoleArn: pulumi.String("string"),
			PutItem: &iot.TopicRuleDynamodbv2PutItemArgs{
				TableName: pulumi.String("string"),
			},
		},
	},
	Elasticsearch: iot.TopicRuleElasticsearchArray{
		&iot.TopicRuleElasticsearchArgs{
			Endpoint: pulumi.String("string"),
			Id:       pulumi.String("string"),
			Index:    pulumi.String("string"),
			RoleArn:  pulumi.String("string"),
			Type:     pulumi.String("string"),
		},
	},
	Description: pulumi.String("string"),
	ErrorAction: &iot.TopicRuleErrorActionArgs{
		CloudwatchAlarm: &iot.TopicRuleErrorActionCloudwatchAlarmArgs{
			AlarmName:   pulumi.String("string"),
			RoleArn:     pulumi.String("string"),
			StateReason: pulumi.String("string"),
			StateValue:  pulumi.String("string"),
		},
		CloudwatchLogs: &iot.TopicRuleErrorActionCloudwatchLogsArgs{
			LogGroupName: pulumi.String("string"),
			RoleArn:      pulumi.String("string"),
			BatchMode:    pulumi.Bool(false),
		},
		CloudwatchMetric: &iot.TopicRuleErrorActionCloudwatchMetricArgs{
			MetricName:      pulumi.String("string"),
			MetricNamespace: pulumi.String("string"),
			MetricUnit:      pulumi.String("string"),
			MetricValue:     pulumi.String("string"),
			RoleArn:         pulumi.String("string"),
			MetricTimestamp: pulumi.String("string"),
		},
		Dynamodb: &iot.TopicRuleErrorActionDynamodbArgs{
			HashKeyField:  pulumi.String("string"),
			HashKeyValue:  pulumi.String("string"),
			RoleArn:       pulumi.String("string"),
			TableName:     pulumi.String("string"),
			HashKeyType:   pulumi.String("string"),
			Operation:     pulumi.String("string"),
			PayloadField:  pulumi.String("string"),
			RangeKeyField: pulumi.String("string"),
			RangeKeyType:  pulumi.String("string"),
			RangeKeyValue: pulumi.String("string"),
		},
		Dynamodbv2: &iot.TopicRuleErrorActionDynamodbv2Args{
			RoleArn: pulumi.String("string"),
			PutItem: &iot.TopicRuleErrorActionDynamodbv2PutItemArgs{
				TableName: pulumi.String("string"),
			},
		},
		Elasticsearch: &iot.TopicRuleErrorActionElasticsearchArgs{
			Endpoint: pulumi.String("string"),
			Id:       pulumi.String("string"),
			Index:    pulumi.String("string"),
			RoleArn:  pulumi.String("string"),
			Type:     pulumi.String("string"),
		},
		Firehose: &iot.TopicRuleErrorActionFirehoseArgs{
			DeliveryStreamName: pulumi.String("string"),
			RoleArn:            pulumi.String("string"),
			BatchMode:          pulumi.Bool(false),
			Separator:          pulumi.String("string"),
		},
		Http: &iot.TopicRuleErrorActionHttpArgs{
			Url:             pulumi.String("string"),
			ConfirmationUrl: pulumi.String("string"),
			HttpHeaders: iot.TopicRuleErrorActionHttpHttpHeaderArray{
				&iot.TopicRuleErrorActionHttpHttpHeaderArgs{
					Key:   pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
		},
		IotAnalytics: &iot.TopicRuleErrorActionIotAnalyticsArgs{
			ChannelName: pulumi.String("string"),
			RoleArn:     pulumi.String("string"),
			BatchMode:   pulumi.Bool(false),
		},
		IotEvents: &iot.TopicRuleErrorActionIotEventsArgs{
			InputName: pulumi.String("string"),
			RoleArn:   pulumi.String("string"),
			BatchMode: pulumi.Bool(false),
			MessageId: pulumi.String("string"),
		},
		Kafka: &iot.TopicRuleErrorActionKafkaArgs{
			ClientProperties: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			DestinationArn: pulumi.String("string"),
			Topic:          pulumi.String("string"),
			Headers: iot.TopicRuleErrorActionKafkaHeaderArray{
				&iot.TopicRuleErrorActionKafkaHeaderArgs{
					Key:   pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			Key:       pulumi.String("string"),
			Partition: pulumi.String("string"),
		},
		Kinesis: &iot.TopicRuleErrorActionKinesisArgs{
			RoleArn:      pulumi.String("string"),
			StreamName:   pulumi.String("string"),
			PartitionKey: pulumi.String("string"),
		},
		Lambda: &iot.TopicRuleErrorActionLambdaArgs{
			FunctionArn: pulumi.String("string"),
		},
		Republish: &iot.TopicRuleErrorActionRepublishArgs{
			RoleArn: pulumi.String("string"),
			Topic:   pulumi.String("string"),
			Qos:     pulumi.Int(0),
		},
		S3: &iot.TopicRuleErrorActionS3Args{
			BucketName: pulumi.String("string"),
			Key:        pulumi.String("string"),
			RoleArn:    pulumi.String("string"),
			CannedAcl:  pulumi.String("string"),
		},
		Sns: &iot.TopicRuleErrorActionSnsArgs{
			RoleArn:       pulumi.String("string"),
			TargetArn:     pulumi.String("string"),
			MessageFormat: pulumi.String("string"),
		},
		Sqs: &iot.TopicRuleErrorActionSqsArgs{
			QueueUrl:  pulumi.String("string"),
			RoleArn:   pulumi.String("string"),
			UseBase64: pulumi.Bool(false),
		},
		StepFunctions: &iot.TopicRuleErrorActionStepFunctionsArgs{
			RoleArn:             pulumi.String("string"),
			StateMachineName:    pulumi.String("string"),
			ExecutionNamePrefix: pulumi.String("string"),
		},
		Timestream: &iot.TopicRuleErrorActionTimestreamArgs{
			DatabaseName: pulumi.String("string"),
			Dimensions: iot.TopicRuleErrorActionTimestreamDimensionArray{
				&iot.TopicRuleErrorActionTimestreamDimensionArgs{
					Name:  pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			RoleArn:   pulumi.String("string"),
			TableName: pulumi.String("string"),
			Timestamp: &iot.TopicRuleErrorActionTimestreamTimestampArgs{
				Unit:  pulumi.String("string"),
				Value: pulumi.String("string"),
			},
		},
	},
	Firehoses: iot.TopicRuleFirehoseArray{
		&iot.TopicRuleFirehoseArgs{
			DeliveryStreamName: pulumi.String("string"),
			RoleArn:            pulumi.String("string"),
			BatchMode:          pulumi.Bool(false),
			Separator:          pulumi.String("string"),
		},
	},
	Https: iot.TopicRuleHttpArray{
		&iot.TopicRuleHttpArgs{
			Url:             pulumi.String("string"),
			ConfirmationUrl: pulumi.String("string"),
			HttpHeaders: iot.TopicRuleHttpHttpHeaderArray{
				&iot.TopicRuleHttpHttpHeaderArgs{
					Key:   pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
		},
	},
	IotAnalytics: iot.TopicRuleIotAnalyticArray{
		&iot.TopicRuleIotAnalyticArgs{
			ChannelName: pulumi.String("string"),
			RoleArn:     pulumi.String("string"),
			BatchMode:   pulumi.Bool(false),
		},
	},
	CloudwatchAlarms: iot.TopicRuleCloudwatchAlarmArray{
		&iot.TopicRuleCloudwatchAlarmArgs{
			AlarmName:   pulumi.String("string"),
			RoleArn:     pulumi.String("string"),
			StateReason: pulumi.String("string"),
			StateValue:  pulumi.String("string"),
		},
	},
	Kafkas: iot.TopicRuleKafkaArray{
		&iot.TopicRuleKafkaArgs{
			ClientProperties: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			DestinationArn: pulumi.String("string"),
			Topic:          pulumi.String("string"),
			Headers: iot.TopicRuleKafkaHeaderArray{
				&iot.TopicRuleKafkaHeaderArgs{
					Key:   pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			Key:       pulumi.String("string"),
			Partition: pulumi.String("string"),
		},
	},
	Dynamodbs: iot.TopicRuleDynamodbArray{
		&iot.TopicRuleDynamodbArgs{
			HashKeyField:  pulumi.String("string"),
			HashKeyValue:  pulumi.String("string"),
			RoleArn:       pulumi.String("string"),
			TableName:     pulumi.String("string"),
			HashKeyType:   pulumi.String("string"),
			Operation:     pulumi.String("string"),
			PayloadField:  pulumi.String("string"),
			RangeKeyField: pulumi.String("string"),
			RangeKeyType:  pulumi.String("string"),
			RangeKeyValue: pulumi.String("string"),
		},
	},
	Lambdas: iot.TopicRuleLambdaArray{
		&iot.TopicRuleLambdaArgs{
			FunctionArn: pulumi.String("string"),
		},
	},
	Name: pulumi.String("string"),
	Republishes: iot.TopicRuleRepublishArray{
		&iot.TopicRuleRepublishArgs{
			RoleArn: pulumi.String("string"),
			Topic:   pulumi.String("string"),
			Qos:     pulumi.Int(0),
		},
	},
	S3: iot.TopicRuleS3Array{
		&iot.TopicRuleS3Args{
			BucketName: pulumi.String("string"),
			Key:        pulumi.String("string"),
			RoleArn:    pulumi.String("string"),
			CannedAcl:  pulumi.String("string"),
		},
	},
	Sns: iot.TopicRuleSnsArray{
		&iot.TopicRuleSnsArgs{
			RoleArn:       pulumi.String("string"),
			TargetArn:     pulumi.String("string"),
			MessageFormat: pulumi.String("string"),
		},
	},
	CloudwatchMetrics: iot.TopicRuleCloudwatchMetricArray{
		&iot.TopicRuleCloudwatchMetricArgs{
			MetricName:      pulumi.String("string"),
			MetricNamespace: pulumi.String("string"),
			MetricUnit:      pulumi.String("string"),
			MetricValue:     pulumi.String("string"),
			RoleArn:         pulumi.String("string"),
			MetricTimestamp: pulumi.String("string"),
		},
	},
	CloudwatchLogs: iot.TopicRuleCloudwatchLogArray{
		&iot.TopicRuleCloudwatchLogArgs{
			LogGroupName: pulumi.String("string"),
			RoleArn:      pulumi.String("string"),
			BatchMode:    pulumi.Bool(false),
		},
	},
	Sqs: iot.TopicRuleSqsArray{
		&iot.TopicRuleSqsArgs{
			QueueUrl:  pulumi.String("string"),
			RoleArn:   pulumi.String("string"),
			UseBase64: pulumi.Bool(false),
		},
	},
	StepFunctions: iot.TopicRuleStepFunctionArray{
		&iot.TopicRuleStepFunctionArgs{
			RoleArn:             pulumi.String("string"),
			StateMachineName:    pulumi.String("string"),
			ExecutionNamePrefix: pulumi.String("string"),
		},
	},
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Timestreams: iot.TopicRuleTimestreamArray{
		&iot.TopicRuleTimestreamArgs{
			DatabaseName: pulumi.String("string"),
			Dimensions: iot.TopicRuleTimestreamDimensionArray{
				&iot.TopicRuleTimestreamDimensionArgs{
					Name:  pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			RoleArn:   pulumi.String("string"),
			TableName: pulumi.String("string"),
			Timestamp: &iot.TopicRuleTimestreamTimestampArgs{
				Unit:  pulumi.String("string"),
				Value: pulumi.String("string"),
			},
		},
	},
})
Copy
var topicRuleResource = new TopicRule("topicRuleResource", TopicRuleArgs.builder()
    .enabled(false)
    .sqlVersion("string")
    .sql("string")
    .iotEvents(TopicRuleIotEventArgs.builder()
        .inputName("string")
        .roleArn("string")
        .batchMode(false)
        .messageId("string")
        .build())
    .kineses(TopicRuleKinesisArgs.builder()
        .roleArn("string")
        .streamName("string")
        .partitionKey("string")
        .build())
    .dynamodbv2s(TopicRuleDynamodbv2Args.builder()
        .roleArn("string")
        .putItem(TopicRuleDynamodbv2PutItemArgs.builder()
            .tableName("string")
            .build())
        .build())
    .elasticsearch(TopicRuleElasticsearchArgs.builder()
        .endpoint("string")
        .id("string")
        .index("string")
        .roleArn("string")
        .type("string")
        .build())
    .description("string")
    .errorAction(TopicRuleErrorActionArgs.builder()
        .cloudwatchAlarm(TopicRuleErrorActionCloudwatchAlarmArgs.builder()
            .alarmName("string")
            .roleArn("string")
            .stateReason("string")
            .stateValue("string")
            .build())
        .cloudwatchLogs(TopicRuleErrorActionCloudwatchLogsArgs.builder()
            .logGroupName("string")
            .roleArn("string")
            .batchMode(false)
            .build())
        .cloudwatchMetric(TopicRuleErrorActionCloudwatchMetricArgs.builder()
            .metricName("string")
            .metricNamespace("string")
            .metricUnit("string")
            .metricValue("string")
            .roleArn("string")
            .metricTimestamp("string")
            .build())
        .dynamodb(TopicRuleErrorActionDynamodbArgs.builder()
            .hashKeyField("string")
            .hashKeyValue("string")
            .roleArn("string")
            .tableName("string")
            .hashKeyType("string")
            .operation("string")
            .payloadField("string")
            .rangeKeyField("string")
            .rangeKeyType("string")
            .rangeKeyValue("string")
            .build())
        .dynamodbv2(TopicRuleErrorActionDynamodbv2Args.builder()
            .roleArn("string")
            .putItem(TopicRuleErrorActionDynamodbv2PutItemArgs.builder()
                .tableName("string")
                .build())
            .build())
        .elasticsearch(TopicRuleErrorActionElasticsearchArgs.builder()
            .endpoint("string")
            .id("string")
            .index("string")
            .roleArn("string")
            .type("string")
            .build())
        .firehose(TopicRuleErrorActionFirehoseArgs.builder()
            .deliveryStreamName("string")
            .roleArn("string")
            .batchMode(false)
            .separator("string")
            .build())
        .http(TopicRuleErrorActionHttpArgs.builder()
            .url("string")
            .confirmationUrl("string")
            .httpHeaders(TopicRuleErrorActionHttpHttpHeaderArgs.builder()
                .key("string")
                .value("string")
                .build())
            .build())
        .iotAnalytics(TopicRuleErrorActionIotAnalyticsArgs.builder()
            .channelName("string")
            .roleArn("string")
            .batchMode(false)
            .build())
        .iotEvents(TopicRuleErrorActionIotEventsArgs.builder()
            .inputName("string")
            .roleArn("string")
            .batchMode(false)
            .messageId("string")
            .build())
        .kafka(TopicRuleErrorActionKafkaArgs.builder()
            .clientProperties(Map.of("string", "string"))
            .destinationArn("string")
            .topic("string")
            .headers(TopicRuleErrorActionKafkaHeaderArgs.builder()
                .key("string")
                .value("string")
                .build())
            .key("string")
            .partition("string")
            .build())
        .kinesis(TopicRuleErrorActionKinesisArgs.builder()
            .roleArn("string")
            .streamName("string")
            .partitionKey("string")
            .build())
        .lambda(TopicRuleErrorActionLambdaArgs.builder()
            .functionArn("string")
            .build())
        .republish(TopicRuleErrorActionRepublishArgs.builder()
            .roleArn("string")
            .topic("string")
            .qos(0)
            .build())
        .s3(TopicRuleErrorActionS3Args.builder()
            .bucketName("string")
            .key("string")
            .roleArn("string")
            .cannedAcl("string")
            .build())
        .sns(TopicRuleErrorActionSnsArgs.builder()
            .roleArn("string")
            .targetArn("string")
            .messageFormat("string")
            .build())
        .sqs(TopicRuleErrorActionSqsArgs.builder()
            .queueUrl("string")
            .roleArn("string")
            .useBase64(false)
            .build())
        .stepFunctions(TopicRuleErrorActionStepFunctionsArgs.builder()
            .roleArn("string")
            .stateMachineName("string")
            .executionNamePrefix("string")
            .build())
        .timestream(TopicRuleErrorActionTimestreamArgs.builder()
            .databaseName("string")
            .dimensions(TopicRuleErrorActionTimestreamDimensionArgs.builder()
                .name("string")
                .value("string")
                .build())
            .roleArn("string")
            .tableName("string")
            .timestamp(TopicRuleErrorActionTimestreamTimestampArgs.builder()
                .unit("string")
                .value("string")
                .build())
            .build())
        .build())
    .firehoses(TopicRuleFirehoseArgs.builder()
        .deliveryStreamName("string")
        .roleArn("string")
        .batchMode(false)
        .separator("string")
        .build())
    .https(TopicRuleHttpArgs.builder()
        .url("string")
        .confirmationUrl("string")
        .httpHeaders(TopicRuleHttpHttpHeaderArgs.builder()
            .key("string")
            .value("string")
            .build())
        .build())
    .iotAnalytics(TopicRuleIotAnalyticArgs.builder()
        .channelName("string")
        .roleArn("string")
        .batchMode(false)
        .build())
    .cloudwatchAlarms(TopicRuleCloudwatchAlarmArgs.builder()
        .alarmName("string")
        .roleArn("string")
        .stateReason("string")
        .stateValue("string")
        .build())
    .kafkas(TopicRuleKafkaArgs.builder()
        .clientProperties(Map.of("string", "string"))
        .destinationArn("string")
        .topic("string")
        .headers(TopicRuleKafkaHeaderArgs.builder()
            .key("string")
            .value("string")
            .build())
        .key("string")
        .partition("string")
        .build())
    .dynamodbs(TopicRuleDynamodbArgs.builder()
        .hashKeyField("string")
        .hashKeyValue("string")
        .roleArn("string")
        .tableName("string")
        .hashKeyType("string")
        .operation("string")
        .payloadField("string")
        .rangeKeyField("string")
        .rangeKeyType("string")
        .rangeKeyValue("string")
        .build())
    .lambdas(TopicRuleLambdaArgs.builder()
        .functionArn("string")
        .build())
    .name("string")
    .republishes(TopicRuleRepublishArgs.builder()
        .roleArn("string")
        .topic("string")
        .qos(0)
        .build())
    .s3(TopicRuleS3Args.builder()
        .bucketName("string")
        .key("string")
        .roleArn("string")
        .cannedAcl("string")
        .build())
    .sns(TopicRuleSnsArgs.builder()
        .roleArn("string")
        .targetArn("string")
        .messageFormat("string")
        .build())
    .cloudwatchMetrics(TopicRuleCloudwatchMetricArgs.builder()
        .metricName("string")
        .metricNamespace("string")
        .metricUnit("string")
        .metricValue("string")
        .roleArn("string")
        .metricTimestamp("string")
        .build())
    .cloudwatchLogs(TopicRuleCloudwatchLogArgs.builder()
        .logGroupName("string")
        .roleArn("string")
        .batchMode(false)
        .build())
    .sqs(TopicRuleSqsArgs.builder()
        .queueUrl("string")
        .roleArn("string")
        .useBase64(false)
        .build())
    .stepFunctions(TopicRuleStepFunctionArgs.builder()
        .roleArn("string")
        .stateMachineName("string")
        .executionNamePrefix("string")
        .build())
    .tags(Map.of("string", "string"))
    .timestreams(TopicRuleTimestreamArgs.builder()
        .databaseName("string")
        .dimensions(TopicRuleTimestreamDimensionArgs.builder()
            .name("string")
            .value("string")
            .build())
        .roleArn("string")
        .tableName("string")
        .timestamp(TopicRuleTimestreamTimestampArgs.builder()
            .unit("string")
            .value("string")
            .build())
        .build())
    .build());
Copy
topic_rule_resource = aws.iot.TopicRule("topicRuleResource",
    enabled=False,
    sql_version="string",
    sql="string",
    iot_events=[{
        "input_name": "string",
        "role_arn": "string",
        "batch_mode": False,
        "message_id": "string",
    }],
    kineses=[{
        "role_arn": "string",
        "stream_name": "string",
        "partition_key": "string",
    }],
    dynamodbv2s=[{
        "role_arn": "string",
        "put_item": {
            "table_name": "string",
        },
    }],
    elasticsearch=[{
        "endpoint": "string",
        "id": "string",
        "index": "string",
        "role_arn": "string",
        "type": "string",
    }],
    description="string",
    error_action={
        "cloudwatch_alarm": {
            "alarm_name": "string",
            "role_arn": "string",
            "state_reason": "string",
            "state_value": "string",
        },
        "cloudwatch_logs": {
            "log_group_name": "string",
            "role_arn": "string",
            "batch_mode": False,
        },
        "cloudwatch_metric": {
            "metric_name": "string",
            "metric_namespace": "string",
            "metric_unit": "string",
            "metric_value": "string",
            "role_arn": "string",
            "metric_timestamp": "string",
        },
        "dynamodb": {
            "hash_key_field": "string",
            "hash_key_value": "string",
            "role_arn": "string",
            "table_name": "string",
            "hash_key_type": "string",
            "operation": "string",
            "payload_field": "string",
            "range_key_field": "string",
            "range_key_type": "string",
            "range_key_value": "string",
        },
        "dynamodbv2": {
            "role_arn": "string",
            "put_item": {
                "table_name": "string",
            },
        },
        "elasticsearch": {
            "endpoint": "string",
            "id": "string",
            "index": "string",
            "role_arn": "string",
            "type": "string",
        },
        "firehose": {
            "delivery_stream_name": "string",
            "role_arn": "string",
            "batch_mode": False,
            "separator": "string",
        },
        "http": {
            "url": "string",
            "confirmation_url": "string",
            "http_headers": [{
                "key": "string",
                "value": "string",
            }],
        },
        "iot_analytics": {
            "channel_name": "string",
            "role_arn": "string",
            "batch_mode": False,
        },
        "iot_events": {
            "input_name": "string",
            "role_arn": "string",
            "batch_mode": False,
            "message_id": "string",
        },
        "kafka": {
            "client_properties": {
                "string": "string",
            },
            "destination_arn": "string",
            "topic": "string",
            "headers": [{
                "key": "string",
                "value": "string",
            }],
            "key": "string",
            "partition": "string",
        },
        "kinesis": {
            "role_arn": "string",
            "stream_name": "string",
            "partition_key": "string",
        },
        "lambda_": {
            "function_arn": "string",
        },
        "republish": {
            "role_arn": "string",
            "topic": "string",
            "qos": 0,
        },
        "s3": {
            "bucket_name": "string",
            "key": "string",
            "role_arn": "string",
            "canned_acl": "string",
        },
        "sns": {
            "role_arn": "string",
            "target_arn": "string",
            "message_format": "string",
        },
        "sqs": {
            "queue_url": "string",
            "role_arn": "string",
            "use_base64": False,
        },
        "step_functions": {
            "role_arn": "string",
            "state_machine_name": "string",
            "execution_name_prefix": "string",
        },
        "timestream": {
            "database_name": "string",
            "dimensions": [{
                "name": "string",
                "value": "string",
            }],
            "role_arn": "string",
            "table_name": "string",
            "timestamp": {
                "unit": "string",
                "value": "string",
            },
        },
    },
    firehoses=[{
        "delivery_stream_name": "string",
        "role_arn": "string",
        "batch_mode": False,
        "separator": "string",
    }],
    https=[{
        "url": "string",
        "confirmation_url": "string",
        "http_headers": [{
            "key": "string",
            "value": "string",
        }],
    }],
    iot_analytics=[{
        "channel_name": "string",
        "role_arn": "string",
        "batch_mode": False,
    }],
    cloudwatch_alarms=[{
        "alarm_name": "string",
        "role_arn": "string",
        "state_reason": "string",
        "state_value": "string",
    }],
    kafkas=[{
        "client_properties": {
            "string": "string",
        },
        "destination_arn": "string",
        "topic": "string",
        "headers": [{
            "key": "string",
            "value": "string",
        }],
        "key": "string",
        "partition": "string",
    }],
    dynamodbs=[{
        "hash_key_field": "string",
        "hash_key_value": "string",
        "role_arn": "string",
        "table_name": "string",
        "hash_key_type": "string",
        "operation": "string",
        "payload_field": "string",
        "range_key_field": "string",
        "range_key_type": "string",
        "range_key_value": "string",
    }],
    lambdas=[{
        "function_arn": "string",
    }],
    name="string",
    republishes=[{
        "role_arn": "string",
        "topic": "string",
        "qos": 0,
    }],
    s3=[{
        "bucket_name": "string",
        "key": "string",
        "role_arn": "string",
        "canned_acl": "string",
    }],
    sns=[{
        "role_arn": "string",
        "target_arn": "string",
        "message_format": "string",
    }],
    cloudwatch_metrics=[{
        "metric_name": "string",
        "metric_namespace": "string",
        "metric_unit": "string",
        "metric_value": "string",
        "role_arn": "string",
        "metric_timestamp": "string",
    }],
    cloudwatch_logs=[{
        "log_group_name": "string",
        "role_arn": "string",
        "batch_mode": False,
    }],
    sqs=[{
        "queue_url": "string",
        "role_arn": "string",
        "use_base64": False,
    }],
    step_functions=[{
        "role_arn": "string",
        "state_machine_name": "string",
        "execution_name_prefix": "string",
    }],
    tags={
        "string": "string",
    },
    timestreams=[{
        "database_name": "string",
        "dimensions": [{
            "name": "string",
            "value": "string",
        }],
        "role_arn": "string",
        "table_name": "string",
        "timestamp": {
            "unit": "string",
            "value": "string",
        },
    }])
Copy
const topicRuleResource = new aws.iot.TopicRule("topicRuleResource", {
    enabled: false,
    sqlVersion: "string",
    sql: "string",
    iotEvents: [{
        inputName: "string",
        roleArn: "string",
        batchMode: false,
        messageId: "string",
    }],
    kineses: [{
        roleArn: "string",
        streamName: "string",
        partitionKey: "string",
    }],
    dynamodbv2s: [{
        roleArn: "string",
        putItem: {
            tableName: "string",
        },
    }],
    elasticsearch: [{
        endpoint: "string",
        id: "string",
        index: "string",
        roleArn: "string",
        type: "string",
    }],
    description: "string",
    errorAction: {
        cloudwatchAlarm: {
            alarmName: "string",
            roleArn: "string",
            stateReason: "string",
            stateValue: "string",
        },
        cloudwatchLogs: {
            logGroupName: "string",
            roleArn: "string",
            batchMode: false,
        },
        cloudwatchMetric: {
            metricName: "string",
            metricNamespace: "string",
            metricUnit: "string",
            metricValue: "string",
            roleArn: "string",
            metricTimestamp: "string",
        },
        dynamodb: {
            hashKeyField: "string",
            hashKeyValue: "string",
            roleArn: "string",
            tableName: "string",
            hashKeyType: "string",
            operation: "string",
            payloadField: "string",
            rangeKeyField: "string",
            rangeKeyType: "string",
            rangeKeyValue: "string",
        },
        dynamodbv2: {
            roleArn: "string",
            putItem: {
                tableName: "string",
            },
        },
        elasticsearch: {
            endpoint: "string",
            id: "string",
            index: "string",
            roleArn: "string",
            type: "string",
        },
        firehose: {
            deliveryStreamName: "string",
            roleArn: "string",
            batchMode: false,
            separator: "string",
        },
        http: {
            url: "string",
            confirmationUrl: "string",
            httpHeaders: [{
                key: "string",
                value: "string",
            }],
        },
        iotAnalytics: {
            channelName: "string",
            roleArn: "string",
            batchMode: false,
        },
        iotEvents: {
            inputName: "string",
            roleArn: "string",
            batchMode: false,
            messageId: "string",
        },
        kafka: {
            clientProperties: {
                string: "string",
            },
            destinationArn: "string",
            topic: "string",
            headers: [{
                key: "string",
                value: "string",
            }],
            key: "string",
            partition: "string",
        },
        kinesis: {
            roleArn: "string",
            streamName: "string",
            partitionKey: "string",
        },
        lambda: {
            functionArn: "string",
        },
        republish: {
            roleArn: "string",
            topic: "string",
            qos: 0,
        },
        s3: {
            bucketName: "string",
            key: "string",
            roleArn: "string",
            cannedAcl: "string",
        },
        sns: {
            roleArn: "string",
            targetArn: "string",
            messageFormat: "string",
        },
        sqs: {
            queueUrl: "string",
            roleArn: "string",
            useBase64: false,
        },
        stepFunctions: {
            roleArn: "string",
            stateMachineName: "string",
            executionNamePrefix: "string",
        },
        timestream: {
            databaseName: "string",
            dimensions: [{
                name: "string",
                value: "string",
            }],
            roleArn: "string",
            tableName: "string",
            timestamp: {
                unit: "string",
                value: "string",
            },
        },
    },
    firehoses: [{
        deliveryStreamName: "string",
        roleArn: "string",
        batchMode: false,
        separator: "string",
    }],
    https: [{
        url: "string",
        confirmationUrl: "string",
        httpHeaders: [{
            key: "string",
            value: "string",
        }],
    }],
    iotAnalytics: [{
        channelName: "string",
        roleArn: "string",
        batchMode: false,
    }],
    cloudwatchAlarms: [{
        alarmName: "string",
        roleArn: "string",
        stateReason: "string",
        stateValue: "string",
    }],
    kafkas: [{
        clientProperties: {
            string: "string",
        },
        destinationArn: "string",
        topic: "string",
        headers: [{
            key: "string",
            value: "string",
        }],
        key: "string",
        partition: "string",
    }],
    dynamodbs: [{
        hashKeyField: "string",
        hashKeyValue: "string",
        roleArn: "string",
        tableName: "string",
        hashKeyType: "string",
        operation: "string",
        payloadField: "string",
        rangeKeyField: "string",
        rangeKeyType: "string",
        rangeKeyValue: "string",
    }],
    lambdas: [{
        functionArn: "string",
    }],
    name: "string",
    republishes: [{
        roleArn: "string",
        topic: "string",
        qos: 0,
    }],
    s3: [{
        bucketName: "string",
        key: "string",
        roleArn: "string",
        cannedAcl: "string",
    }],
    sns: [{
        roleArn: "string",
        targetArn: "string",
        messageFormat: "string",
    }],
    cloudwatchMetrics: [{
        metricName: "string",
        metricNamespace: "string",
        metricUnit: "string",
        metricValue: "string",
        roleArn: "string",
        metricTimestamp: "string",
    }],
    cloudwatchLogs: [{
        logGroupName: "string",
        roleArn: "string",
        batchMode: false,
    }],
    sqs: [{
        queueUrl: "string",
        roleArn: "string",
        useBase64: false,
    }],
    stepFunctions: [{
        roleArn: "string",
        stateMachineName: "string",
        executionNamePrefix: "string",
    }],
    tags: {
        string: "string",
    },
    timestreams: [{
        databaseName: "string",
        dimensions: [{
            name: "string",
            value: "string",
        }],
        roleArn: "string",
        tableName: "string",
        timestamp: {
            unit: "string",
            value: "string",
        },
    }],
});
Copy
type: aws:iot:TopicRule
properties:
    cloudwatchAlarms:
        - alarmName: string
          roleArn: string
          stateReason: string
          stateValue: string
    cloudwatchLogs:
        - batchMode: false
          logGroupName: string
          roleArn: string
    cloudwatchMetrics:
        - metricName: string
          metricNamespace: string
          metricTimestamp: string
          metricUnit: string
          metricValue: string
          roleArn: string
    description: string
    dynamodbs:
        - hashKeyField: string
          hashKeyType: string
          hashKeyValue: string
          operation: string
          payloadField: string
          rangeKeyField: string
          rangeKeyType: string
          rangeKeyValue: string
          roleArn: string
          tableName: string
    dynamodbv2s:
        - putItem:
            tableName: string
          roleArn: string
    elasticsearch:
        - endpoint: string
          id: string
          index: string
          roleArn: string
          type: string
    enabled: false
    errorAction:
        cloudwatchAlarm:
            alarmName: string
            roleArn: string
            stateReason: string
            stateValue: string
        cloudwatchLogs:
            batchMode: false
            logGroupName: string
            roleArn: string
        cloudwatchMetric:
            metricName: string
            metricNamespace: string
            metricTimestamp: string
            metricUnit: string
            metricValue: string
            roleArn: string
        dynamodb:
            hashKeyField: string
            hashKeyType: string
            hashKeyValue: string
            operation: string
            payloadField: string
            rangeKeyField: string
            rangeKeyType: string
            rangeKeyValue: string
            roleArn: string
            tableName: string
        dynamodbv2:
            putItem:
                tableName: string
            roleArn: string
        elasticsearch:
            endpoint: string
            id: string
            index: string
            roleArn: string
            type: string
        firehose:
            batchMode: false
            deliveryStreamName: string
            roleArn: string
            separator: string
        http:
            confirmationUrl: string
            httpHeaders:
                - key: string
                  value: string
            url: string
        iotAnalytics:
            batchMode: false
            channelName: string
            roleArn: string
        iotEvents:
            batchMode: false
            inputName: string
            messageId: string
            roleArn: string
        kafka:
            clientProperties:
                string: string
            destinationArn: string
            headers:
                - key: string
                  value: string
            key: string
            partition: string
            topic: string
        kinesis:
            partitionKey: string
            roleArn: string
            streamName: string
        lambda:
            functionArn: string
        republish:
            qos: 0
            roleArn: string
            topic: string
        s3:
            bucketName: string
            cannedAcl: string
            key: string
            roleArn: string
        sns:
            messageFormat: string
            roleArn: string
            targetArn: string
        sqs:
            queueUrl: string
            roleArn: string
            useBase64: false
        stepFunctions:
            executionNamePrefix: string
            roleArn: string
            stateMachineName: string
        timestream:
            databaseName: string
            dimensions:
                - name: string
                  value: string
            roleArn: string
            tableName: string
            timestamp:
                unit: string
                value: string
    firehoses:
        - batchMode: false
          deliveryStreamName: string
          roleArn: string
          separator: string
    https:
        - confirmationUrl: string
          httpHeaders:
            - key: string
              value: string
          url: string
    iotAnalytics:
        - batchMode: false
          channelName: string
          roleArn: string
    iotEvents:
        - batchMode: false
          inputName: string
          messageId: string
          roleArn: string
    kafkas:
        - clientProperties:
            string: string
          destinationArn: string
          headers:
            - key: string
              value: string
          key: string
          partition: string
          topic: string
    kineses:
        - partitionKey: string
          roleArn: string
          streamName: string
    lambdas:
        - functionArn: string
    name: string
    republishes:
        - qos: 0
          roleArn: string
          topic: string
    s3:
        - bucketName: string
          cannedAcl: string
          key: string
          roleArn: string
    sns:
        - messageFormat: string
          roleArn: string
          targetArn: string
    sql: string
    sqlVersion: string
    sqs:
        - queueUrl: string
          roleArn: string
          useBase64: false
    stepFunctions:
        - executionNamePrefix: string
          roleArn: string
          stateMachineName: string
    tags:
        string: string
    timestreams:
        - databaseName: string
          dimensions:
            - name: string
              value: string
          roleArn: string
          tableName: string
          timestamp:
            unit: string
            value: string
Copy

TopicRule Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The TopicRule resource accepts the following input properties:

Enabled This property is required. bool
Specifies whether the rule is enabled.
Sql This property is required. string
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
SqlVersion This property is required. string
The version of the SQL rules engine to use when evaluating the rule.
CloudwatchAlarms List<TopicRuleCloudwatchAlarm>
CloudwatchLogs List<TopicRuleCloudwatchLog>
CloudwatchMetrics List<TopicRuleCloudwatchMetric>
Description string
The description of the rule.
Dynamodbs List<TopicRuleDynamodb>
Dynamodbv2s List<TopicRuleDynamodbv2>
Elasticsearch List<TopicRuleElasticsearch>
ErrorAction TopicRuleErrorAction
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
Firehoses List<TopicRuleFirehose>
Https List<TopicRuleHttp>
IotAnalytics List<TopicRuleIotAnalytic>
IotEvents List<TopicRuleIotEvent>
Kafkas List<TopicRuleKafka>
Kineses List<TopicRuleKinesis>
Lambdas List<TopicRuleLambda>
Name Changes to this property will trigger replacement. string
The name of the rule.
Republishes List<TopicRuleRepublish>
S3 List<TopicRuleS3>
Sns List<TopicRuleSns>
Sqs List<TopicRuleSqs>
StepFunctions List<TopicRuleStepFunction>
Tags Dictionary<string, string>
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
Timestreams List<TopicRuleTimestream>
Enabled This property is required. bool
Specifies whether the rule is enabled.
Sql This property is required. string
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
SqlVersion This property is required. string
The version of the SQL rules engine to use when evaluating the rule.
CloudwatchAlarms []TopicRuleCloudwatchAlarmArgs
CloudwatchLogs []TopicRuleCloudwatchLogArgs
CloudwatchMetrics []TopicRuleCloudwatchMetricArgs
Description string
The description of the rule.
Dynamodbs []TopicRuleDynamodbArgs
Dynamodbv2s []TopicRuleDynamodbv2Args
Elasticsearch []TopicRuleElasticsearchArgs
ErrorAction TopicRuleErrorActionArgs
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
Firehoses []TopicRuleFirehoseArgs
Https []TopicRuleHttpArgs
IotAnalytics []TopicRuleIotAnalyticArgs
IotEvents []TopicRuleIotEventArgs
Kafkas []TopicRuleKafkaArgs
Kineses []TopicRuleKinesisArgs
Lambdas []TopicRuleLambdaArgs
Name Changes to this property will trigger replacement. string
The name of the rule.
Republishes []TopicRuleRepublishArgs
S3 []TopicRuleS3Args
Sns []TopicRuleSnsArgs
Sqs []TopicRuleSqsArgs
StepFunctions []TopicRuleStepFunctionArgs
Tags map[string]string
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
Timestreams []TopicRuleTimestreamArgs
enabled This property is required. Boolean
Specifies whether the rule is enabled.
sql This property is required. String
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sqlVersion This property is required. String
The version of the SQL rules engine to use when evaluating the rule.
cloudwatchAlarms List<TopicRuleCloudwatchAlarm>
cloudwatchLogs List<TopicRuleCloudwatchLog>
cloudwatchMetrics List<TopicRuleCloudwatchMetric>
description String
The description of the rule.
dynamodbs List<TopicRuleDynamodb>
dynamodbv2s List<TopicRuleDynamodbv2>
elasticsearch List<TopicRuleElasticsearch>
errorAction TopicRuleErrorAction
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses List<TopicRuleFirehose>
https List<TopicRuleHttp>
iotAnalytics List<TopicRuleIotAnalytic>
iotEvents List<TopicRuleIotEvent>
kafkas List<TopicRuleKafka>
kineses List<TopicRuleKinesis>
lambdas List<TopicRuleLambda>
name Changes to this property will trigger replacement. String
The name of the rule.
republishes List<TopicRuleRepublish>
s3 List<TopicRuleS3>
sns List<TopicRuleSns>
sqs List<TopicRuleSqs>
stepFunctions List<TopicRuleStepFunction>
tags Map<String,String>
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
timestreams List<TopicRuleTimestream>
enabled This property is required. boolean
Specifies whether the rule is enabled.
sql This property is required. string
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sqlVersion This property is required. string
The version of the SQL rules engine to use when evaluating the rule.
cloudwatchAlarms TopicRuleCloudwatchAlarm[]
cloudwatchLogs TopicRuleCloudwatchLog[]
cloudwatchMetrics TopicRuleCloudwatchMetric[]
description string
The description of the rule.
dynamodbs TopicRuleDynamodb[]
dynamodbv2s TopicRuleDynamodbv2[]
elasticsearch TopicRuleElasticsearch[]
errorAction TopicRuleErrorAction
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses TopicRuleFirehose[]
https TopicRuleHttp[]
iotAnalytics TopicRuleIotAnalytic[]
iotEvents TopicRuleIotEvent[]
kafkas TopicRuleKafka[]
kineses TopicRuleKinesis[]
lambdas TopicRuleLambda[]
name Changes to this property will trigger replacement. string
The name of the rule.
republishes TopicRuleRepublish[]
s3 TopicRuleS3[]
sns TopicRuleSns[]
sqs TopicRuleSqs[]
stepFunctions TopicRuleStepFunction[]
tags {[key: string]: string}
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
timestreams TopicRuleTimestream[]
enabled This property is required. bool
Specifies whether the rule is enabled.
sql This property is required. str
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sql_version This property is required. str
The version of the SQL rules engine to use when evaluating the rule.
cloudwatch_alarms Sequence[TopicRuleCloudwatchAlarmArgs]
cloudwatch_logs Sequence[TopicRuleCloudwatchLogArgs]
cloudwatch_metrics Sequence[TopicRuleCloudwatchMetricArgs]
description str
The description of the rule.
dynamodbs Sequence[TopicRuleDynamodbArgs]
dynamodbv2s Sequence[TopicRuleDynamodbv2Args]
elasticsearch Sequence[TopicRuleElasticsearchArgs]
error_action TopicRuleErrorActionArgs
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses Sequence[TopicRuleFirehoseArgs]
https Sequence[TopicRuleHttpArgs]
iot_analytics Sequence[TopicRuleIotAnalyticArgs]
iot_events Sequence[TopicRuleIotEventArgs]
kafkas Sequence[TopicRuleKafkaArgs]
kineses Sequence[TopicRuleKinesisArgs]
lambdas Sequence[TopicRuleLambdaArgs]
name Changes to this property will trigger replacement. str
The name of the rule.
republishes Sequence[TopicRuleRepublishArgs]
s3 Sequence[TopicRuleS3Args]
sns Sequence[TopicRuleSnsArgs]
sqs Sequence[TopicRuleSqsArgs]
step_functions Sequence[TopicRuleStepFunctionArgs]
tags Mapping[str, str]
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
timestreams Sequence[TopicRuleTimestreamArgs]
enabled This property is required. Boolean
Specifies whether the rule is enabled.
sql This property is required. String
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sqlVersion This property is required. String
The version of the SQL rules engine to use when evaluating the rule.
cloudwatchAlarms List<Property Map>
cloudwatchLogs List<Property Map>
cloudwatchMetrics List<Property Map>
description String
The description of the rule.
dynamodbs List<Property Map>
dynamodbv2s List<Property Map>
elasticsearch List<Property Map>
errorAction Property Map
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses List<Property Map>
https List<Property Map>
iotAnalytics List<Property Map>
iotEvents List<Property Map>
kafkas List<Property Map>
kineses List<Property Map>
lambdas List<Property Map>
name Changes to this property will trigger replacement. String
The name of the rule.
republishes List<Property Map>
s3 List<Property Map>
sns List<Property Map>
sqs List<Property Map>
stepFunctions List<Property Map>
tags Map<String>
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
timestreams List<Property Map>

Outputs

All input properties are implicitly available as output properties. Additionally, the TopicRule resource produces the following output properties:

Arn string
The ARN of the topic rule
Id string
The provider-assigned unique ID for this managed resource.
TagsAll Dictionary<string, string>
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Arn string
The ARN of the topic rule
Id string
The provider-assigned unique ID for this managed resource.
TagsAll map[string]string
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn String
The ARN of the topic rule
id String
The provider-assigned unique ID for this managed resource.
tagsAll Map<String,String>
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn string
The ARN of the topic rule
id string
The provider-assigned unique ID for this managed resource.
tagsAll {[key: string]: string}
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn str
The ARN of the topic rule
id str
The provider-assigned unique ID for this managed resource.
tags_all Mapping[str, str]
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn String
The ARN of the topic rule
id String
The provider-assigned unique ID for this managed resource.
tagsAll Map<String>
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Look up Existing TopicRule Resource

Get an existing TopicRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: TopicRuleState, opts?: CustomResourceOptions): TopicRule
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        arn: Optional[str] = None,
        cloudwatch_alarms: Optional[Sequence[TopicRuleCloudwatchAlarmArgs]] = None,
        cloudwatch_logs: Optional[Sequence[TopicRuleCloudwatchLogArgs]] = None,
        cloudwatch_metrics: Optional[Sequence[TopicRuleCloudwatchMetricArgs]] = None,
        description: Optional[str] = None,
        dynamodbs: Optional[Sequence[TopicRuleDynamodbArgs]] = None,
        dynamodbv2s: Optional[Sequence[TopicRuleDynamodbv2Args]] = None,
        elasticsearch: Optional[Sequence[TopicRuleElasticsearchArgs]] = None,
        enabled: Optional[bool] = None,
        error_action: Optional[TopicRuleErrorActionArgs] = None,
        firehoses: Optional[Sequence[TopicRuleFirehoseArgs]] = None,
        https: Optional[Sequence[TopicRuleHttpArgs]] = None,
        iot_analytics: Optional[Sequence[TopicRuleIotAnalyticArgs]] = None,
        iot_events: Optional[Sequence[TopicRuleIotEventArgs]] = None,
        kafkas: Optional[Sequence[TopicRuleKafkaArgs]] = None,
        kineses: Optional[Sequence[TopicRuleKinesisArgs]] = None,
        lambdas: Optional[Sequence[TopicRuleLambdaArgs]] = None,
        name: Optional[str] = None,
        republishes: Optional[Sequence[TopicRuleRepublishArgs]] = None,
        s3: Optional[Sequence[TopicRuleS3Args]] = None,
        sns: Optional[Sequence[TopicRuleSnsArgs]] = None,
        sql: Optional[str] = None,
        sql_version: Optional[str] = None,
        sqs: Optional[Sequence[TopicRuleSqsArgs]] = None,
        step_functions: Optional[Sequence[TopicRuleStepFunctionArgs]] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None,
        timestreams: Optional[Sequence[TopicRuleTimestreamArgs]] = None) -> TopicRule
func GetTopicRule(ctx *Context, name string, id IDInput, state *TopicRuleState, opts ...ResourceOption) (*TopicRule, error)
public static TopicRule Get(string name, Input<string> id, TopicRuleState? state, CustomResourceOptions? opts = null)
public static TopicRule get(String name, Output<String> id, TopicRuleState state, CustomResourceOptions options)
resources:  _:    type: aws:iot:TopicRule    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
Arn string
The ARN of the topic rule
CloudwatchAlarms List<TopicRuleCloudwatchAlarm>
CloudwatchLogs List<TopicRuleCloudwatchLog>
CloudwatchMetrics List<TopicRuleCloudwatchMetric>
Description string
The description of the rule.
Dynamodbs List<TopicRuleDynamodb>
Dynamodbv2s List<TopicRuleDynamodbv2>
Elasticsearch List<TopicRuleElasticsearch>
Enabled bool
Specifies whether the rule is enabled.
ErrorAction TopicRuleErrorAction
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
Firehoses List<TopicRuleFirehose>
Https List<TopicRuleHttp>
IotAnalytics List<TopicRuleIotAnalytic>
IotEvents List<TopicRuleIotEvent>
Kafkas List<TopicRuleKafka>
Kineses List<TopicRuleKinesis>
Lambdas List<TopicRuleLambda>
Name Changes to this property will trigger replacement. string
The name of the rule.
Republishes List<TopicRuleRepublish>
S3 List<TopicRuleS3>
Sns List<TopicRuleSns>
Sql string
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
SqlVersion string
The version of the SQL rules engine to use when evaluating the rule.
Sqs List<TopicRuleSqs>
StepFunctions List<TopicRuleStepFunction>
Tags Dictionary<string, string>
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll Dictionary<string, string>
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Timestreams List<TopicRuleTimestream>
Arn string
The ARN of the topic rule
CloudwatchAlarms []TopicRuleCloudwatchAlarmArgs
CloudwatchLogs []TopicRuleCloudwatchLogArgs
CloudwatchMetrics []TopicRuleCloudwatchMetricArgs
Description string
The description of the rule.
Dynamodbs []TopicRuleDynamodbArgs
Dynamodbv2s []TopicRuleDynamodbv2Args
Elasticsearch []TopicRuleElasticsearchArgs
Enabled bool
Specifies whether the rule is enabled.
ErrorAction TopicRuleErrorActionArgs
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
Firehoses []TopicRuleFirehoseArgs
Https []TopicRuleHttpArgs
IotAnalytics []TopicRuleIotAnalyticArgs
IotEvents []TopicRuleIotEventArgs
Kafkas []TopicRuleKafkaArgs
Kineses []TopicRuleKinesisArgs
Lambdas []TopicRuleLambdaArgs
Name Changes to this property will trigger replacement. string
The name of the rule.
Republishes []TopicRuleRepublishArgs
S3 []TopicRuleS3Args
Sns []TopicRuleSnsArgs
Sql string
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
SqlVersion string
The version of the SQL rules engine to use when evaluating the rule.
Sqs []TopicRuleSqsArgs
StepFunctions []TopicRuleStepFunctionArgs
Tags map[string]string
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll map[string]string
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Timestreams []TopicRuleTimestreamArgs
arn String
The ARN of the topic rule
cloudwatchAlarms List<TopicRuleCloudwatchAlarm>
cloudwatchLogs List<TopicRuleCloudwatchLog>
cloudwatchMetrics List<TopicRuleCloudwatchMetric>
description String
The description of the rule.
dynamodbs List<TopicRuleDynamodb>
dynamodbv2s List<TopicRuleDynamodbv2>
elasticsearch List<TopicRuleElasticsearch>
enabled Boolean
Specifies whether the rule is enabled.
errorAction TopicRuleErrorAction
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses List<TopicRuleFirehose>
https List<TopicRuleHttp>
iotAnalytics List<TopicRuleIotAnalytic>
iotEvents List<TopicRuleIotEvent>
kafkas List<TopicRuleKafka>
kineses List<TopicRuleKinesis>
lambdas List<TopicRuleLambda>
name Changes to this property will trigger replacement. String
The name of the rule.
republishes List<TopicRuleRepublish>
s3 List<TopicRuleS3>
sns List<TopicRuleSns>
sql String
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sqlVersion String
The version of the SQL rules engine to use when evaluating the rule.
sqs List<TopicRuleSqs>
stepFunctions List<TopicRuleStepFunction>
tags Map<String,String>
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll Map<String,String>
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

timestreams List<TopicRuleTimestream>
arn string
The ARN of the topic rule
cloudwatchAlarms TopicRuleCloudwatchAlarm[]
cloudwatchLogs TopicRuleCloudwatchLog[]
cloudwatchMetrics TopicRuleCloudwatchMetric[]
description string
The description of the rule.
dynamodbs TopicRuleDynamodb[]
dynamodbv2s TopicRuleDynamodbv2[]
elasticsearch TopicRuleElasticsearch[]
enabled boolean
Specifies whether the rule is enabled.
errorAction TopicRuleErrorAction
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses TopicRuleFirehose[]
https TopicRuleHttp[]
iotAnalytics TopicRuleIotAnalytic[]
iotEvents TopicRuleIotEvent[]
kafkas TopicRuleKafka[]
kineses TopicRuleKinesis[]
lambdas TopicRuleLambda[]
name Changes to this property will trigger replacement. string
The name of the rule.
republishes TopicRuleRepublish[]
s3 TopicRuleS3[]
sns TopicRuleSns[]
sql string
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sqlVersion string
The version of the SQL rules engine to use when evaluating the rule.
sqs TopicRuleSqs[]
stepFunctions TopicRuleStepFunction[]
tags {[key: string]: string}
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll {[key: string]: string}
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

timestreams TopicRuleTimestream[]
arn str
The ARN of the topic rule
cloudwatch_alarms Sequence[TopicRuleCloudwatchAlarmArgs]
cloudwatch_logs Sequence[TopicRuleCloudwatchLogArgs]
cloudwatch_metrics Sequence[TopicRuleCloudwatchMetricArgs]
description str
The description of the rule.
dynamodbs Sequence[TopicRuleDynamodbArgs]
dynamodbv2s Sequence[TopicRuleDynamodbv2Args]
elasticsearch Sequence[TopicRuleElasticsearchArgs]
enabled bool
Specifies whether the rule is enabled.
error_action TopicRuleErrorActionArgs
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses Sequence[TopicRuleFirehoseArgs]
https Sequence[TopicRuleHttpArgs]
iot_analytics Sequence[TopicRuleIotAnalyticArgs]
iot_events Sequence[TopicRuleIotEventArgs]
kafkas Sequence[TopicRuleKafkaArgs]
kineses Sequence[TopicRuleKinesisArgs]
lambdas Sequence[TopicRuleLambdaArgs]
name Changes to this property will trigger replacement. str
The name of the rule.
republishes Sequence[TopicRuleRepublishArgs]
s3 Sequence[TopicRuleS3Args]
sns Sequence[TopicRuleSnsArgs]
sql str
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sql_version str
The version of the SQL rules engine to use when evaluating the rule.
sqs Sequence[TopicRuleSqsArgs]
step_functions Sequence[TopicRuleStepFunctionArgs]
tags Mapping[str, str]
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tags_all Mapping[str, str]
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

timestreams Sequence[TopicRuleTimestreamArgs]
arn String
The ARN of the topic rule
cloudwatchAlarms List<Property Map>
cloudwatchLogs List<Property Map>
cloudwatchMetrics List<Property Map>
description String
The description of the rule.
dynamodbs List<Property Map>
dynamodbv2s List<Property Map>
elasticsearch List<Property Map>
enabled Boolean
Specifies whether the rule is enabled.
errorAction Property Map
Configuration block with error action to be associated with the rule. See the documentation for cloudwatch_alarm, cloudwatch_logs, cloudwatch_metric, dynamodb, dynamodbv2, elasticsearch, firehose, http, iot_analytics, iot_events, kafka, kinesis, lambda, republish, s3, sns, sqs, step_functions, timestream configuration blocks for further configuration details.
firehoses List<Property Map>
https List<Property Map>
iotAnalytics List<Property Map>
iotEvents List<Property Map>
kafkas List<Property Map>
kineses List<Property Map>
lambdas List<Property Map>
name Changes to this property will trigger replacement. String
The name of the rule.
republishes List<Property Map>
s3 List<Property Map>
sns List<Property Map>
sql String
The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
sqlVersion String
The version of the SQL rules engine to use when evaluating the rule.
sqs List<Property Map>
stepFunctions List<Property Map>
tags Map<String>
Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll Map<String>
A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

timestreams List<Property Map>

Supporting Types

TopicRuleCloudwatchAlarm
, TopicRuleCloudwatchAlarmArgs

AlarmName This property is required. string
The CloudWatch alarm name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
StateReason This property is required. string
The reason for the alarm change.
StateValue This property is required. string
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
AlarmName This property is required. string
The CloudWatch alarm name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
StateReason This property is required. string
The reason for the alarm change.
StateValue This property is required. string
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarmName This property is required. String
The CloudWatch alarm name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
stateReason This property is required. String
The reason for the alarm change.
stateValue This property is required. String
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarmName This property is required. string
The CloudWatch alarm name.
roleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
stateReason This property is required. string
The reason for the alarm change.
stateValue This property is required. string
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarm_name This property is required. str
The CloudWatch alarm name.
role_arn This property is required. str
The IAM role ARN that allows access to the CloudWatch alarm.
state_reason This property is required. str
The reason for the alarm change.
state_value This property is required. str
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarmName This property is required. String
The CloudWatch alarm name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
stateReason This property is required. String
The reason for the alarm change.
stateValue This property is required. String
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.

TopicRuleCloudwatchLog
, TopicRuleCloudwatchLogArgs

LogGroupName This property is required. string
The CloudWatch log group name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
BatchMode bool
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
LogGroupName This property is required. string
The CloudWatch log group name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
BatchMode bool
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
logGroupName This property is required. String
The CloudWatch log group name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
batchMode Boolean
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
logGroupName This property is required. string
The CloudWatch log group name.
roleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
batchMode boolean
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
log_group_name This property is required. str
The CloudWatch log group name.
role_arn This property is required. str
The IAM role ARN that allows access to the CloudWatch alarm.
batch_mode bool
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
logGroupName This property is required. String
The CloudWatch log group name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
batchMode Boolean
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.

TopicRuleCloudwatchMetric
, TopicRuleCloudwatchMetricArgs

MetricName This property is required. string
The CloudWatch metric name.
MetricNamespace This property is required. string
The CloudWatch metric namespace name.
MetricUnit This property is required. string
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
MetricValue This property is required. string
The CloudWatch metric value.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch metric.
MetricTimestamp string
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
MetricName This property is required. string
The CloudWatch metric name.
MetricNamespace This property is required. string
The CloudWatch metric namespace name.
MetricUnit This property is required. string
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
MetricValue This property is required. string
The CloudWatch metric value.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch metric.
MetricTimestamp string
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metricName This property is required. String
The CloudWatch metric name.
metricNamespace This property is required. String
The CloudWatch metric namespace name.
metricUnit This property is required. String
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metricValue This property is required. String
The CloudWatch metric value.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch metric.
metricTimestamp String
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metricName This property is required. string
The CloudWatch metric name.
metricNamespace This property is required. string
The CloudWatch metric namespace name.
metricUnit This property is required. string
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metricValue This property is required. string
The CloudWatch metric value.
roleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch metric.
metricTimestamp string
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metric_name This property is required. str
The CloudWatch metric name.
metric_namespace This property is required. str
The CloudWatch metric namespace name.
metric_unit This property is required. str
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metric_value This property is required. str
The CloudWatch metric value.
role_arn This property is required. str
The IAM role ARN that allows access to the CloudWatch metric.
metric_timestamp str
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metricName This property is required. String
The CloudWatch metric name.
metricNamespace This property is required. String
The CloudWatch metric namespace name.
metricUnit This property is required. String
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metricValue This property is required. String
The CloudWatch metric value.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch metric.
metricTimestamp String
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).

TopicRuleDynamodb
, TopicRuleDynamodbArgs

HashKeyField This property is required. string
The hash key name.
HashKeyValue This property is required. string
The hash key value.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
TableName This property is required. string
The name of the DynamoDB table.
HashKeyType string
The hash key type. Valid values are "STRING" or "NUMBER".
Operation string
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
PayloadField string
The action payload.
RangeKeyField string
The range key name.
RangeKeyType string
The range key type. Valid values are "STRING" or "NUMBER".
RangeKeyValue string
The range key value.
HashKeyField This property is required. string
The hash key name.
HashKeyValue This property is required. string
The hash key value.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
TableName This property is required. string
The name of the DynamoDB table.
HashKeyType string
The hash key type. Valid values are "STRING" or "NUMBER".
Operation string
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
PayloadField string
The action payload.
RangeKeyField string
The range key name.
RangeKeyType string
The range key type. Valid values are "STRING" or "NUMBER".
RangeKeyValue string
The range key value.
hashKeyField This property is required. String
The hash key name.
hashKeyValue This property is required. String
The hash key value.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.
hashKeyType String
The hash key type. Valid values are "STRING" or "NUMBER".
operation String
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payloadField String
The action payload.
rangeKeyField String
The range key name.
rangeKeyType String
The range key type. Valid values are "STRING" or "NUMBER".
rangeKeyValue String
The range key value.
hashKeyField This property is required. string
The hash key name.
hashKeyValue This property is required. string
The hash key value.
roleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
tableName This property is required. string
The name of the DynamoDB table.
hashKeyType string
The hash key type. Valid values are "STRING" or "NUMBER".
operation string
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payloadField string
The action payload.
rangeKeyField string
The range key name.
rangeKeyType string
The range key type. Valid values are "STRING" or "NUMBER".
rangeKeyValue string
The range key value.
hash_key_field This property is required. str
The hash key name.
hash_key_value This property is required. str
The hash key value.
role_arn This property is required. str
The ARN of the IAM role that grants access to the DynamoDB table.
table_name This property is required. str
The name of the DynamoDB table.
hash_key_type str
The hash key type. Valid values are "STRING" or "NUMBER".
operation str
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payload_field str
The action payload.
range_key_field str
The range key name.
range_key_type str
The range key type. Valid values are "STRING" or "NUMBER".
range_key_value str
The range key value.
hashKeyField This property is required. String
The hash key name.
hashKeyValue This property is required. String
The hash key value.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.
hashKeyType String
The hash key type. Valid values are "STRING" or "NUMBER".
operation String
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payloadField String
The action payload.
rangeKeyField String
The range key name.
rangeKeyType String
The range key type. Valid values are "STRING" or "NUMBER".
rangeKeyValue String
The range key value.

TopicRuleDynamodbv2
, TopicRuleDynamodbv2Args

RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
PutItem TopicRuleDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
PutItem TopicRuleDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
putItem TopicRuleDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
roleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
putItem TopicRuleDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
role_arn This property is required. str
The ARN of the IAM role that grants access to the DynamoDB table.
put_item TopicRuleDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
putItem Property Map
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.

TopicRuleDynamodbv2PutItem
, TopicRuleDynamodbv2PutItemArgs

TableName This property is required. string
The name of the DynamoDB table.
TableName This property is required. string
The name of the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.
tableName This property is required. string
The name of the DynamoDB table.
table_name This property is required. str
The name of the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.

TopicRuleElasticsearch
, TopicRuleElasticsearchArgs

Endpoint This property is required. string
The endpoint of your Elasticsearch domain.
Id This property is required. string
The unique identifier for the document you are storing.
Index This property is required. string
The Elasticsearch index where you want to store your data.
RoleArn This property is required. string
The IAM role ARN that has access to Elasticsearch.
Type This property is required. string
The type of document you are storing.
Endpoint This property is required. string
The endpoint of your Elasticsearch domain.
Id This property is required. string
The unique identifier for the document you are storing.
Index This property is required. string
The Elasticsearch index where you want to store your data.
RoleArn This property is required. string
The IAM role ARN that has access to Elasticsearch.
Type This property is required. string
The type of document you are storing.
endpoint This property is required. String
The endpoint of your Elasticsearch domain.
id This property is required. String
The unique identifier for the document you are storing.
index This property is required. String
The Elasticsearch index where you want to store your data.
roleArn This property is required. String
The IAM role ARN that has access to Elasticsearch.
type This property is required. String
The type of document you are storing.
endpoint This property is required. string
The endpoint of your Elasticsearch domain.
id This property is required. string
The unique identifier for the document you are storing.
index This property is required. string
The Elasticsearch index where you want to store your data.
roleArn This property is required. string
The IAM role ARN that has access to Elasticsearch.
type This property is required. string
The type of document you are storing.
endpoint This property is required. str
The endpoint of your Elasticsearch domain.
id This property is required. str
The unique identifier for the document you are storing.
index This property is required. str
The Elasticsearch index where you want to store your data.
role_arn This property is required. str
The IAM role ARN that has access to Elasticsearch.
type This property is required. str
The type of document you are storing.
endpoint This property is required. String
The endpoint of your Elasticsearch domain.
id This property is required. String
The unique identifier for the document you are storing.
index This property is required. String
The Elasticsearch index where you want to store your data.
roleArn This property is required. String
The IAM role ARN that has access to Elasticsearch.
type This property is required. String
The type of document you are storing.

TopicRuleErrorAction
, TopicRuleErrorActionArgs

TopicRuleErrorActionCloudwatchAlarm
, TopicRuleErrorActionCloudwatchAlarmArgs

AlarmName This property is required. string
The CloudWatch alarm name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
StateReason This property is required. string
The reason for the alarm change.
StateValue This property is required. string
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
AlarmName This property is required. string
The CloudWatch alarm name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
StateReason This property is required. string
The reason for the alarm change.
StateValue This property is required. string
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarmName This property is required. String
The CloudWatch alarm name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
stateReason This property is required. String
The reason for the alarm change.
stateValue This property is required. String
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarmName This property is required. string
The CloudWatch alarm name.
roleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
stateReason This property is required. string
The reason for the alarm change.
stateValue This property is required. string
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarm_name This property is required. str
The CloudWatch alarm name.
role_arn This property is required. str
The IAM role ARN that allows access to the CloudWatch alarm.
state_reason This property is required. str
The reason for the alarm change.
state_value This property is required. str
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
alarmName This property is required. String
The CloudWatch alarm name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
stateReason This property is required. String
The reason for the alarm change.
stateValue This property is required. String
The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.

TopicRuleErrorActionCloudwatchLogs
, TopicRuleErrorActionCloudwatchLogsArgs

LogGroupName This property is required. string
The CloudWatch log group name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
BatchMode bool
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
LogGroupName This property is required. string
The CloudWatch log group name.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
BatchMode bool
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
logGroupName This property is required. String
The CloudWatch log group name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
batchMode Boolean
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
logGroupName This property is required. string
The CloudWatch log group name.
roleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch alarm.
batchMode boolean
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
log_group_name This property is required. str
The CloudWatch log group name.
role_arn This property is required. str
The IAM role ARN that allows access to the CloudWatch alarm.
batch_mode bool
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.
logGroupName This property is required. String
The CloudWatch log group name.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch alarm.
batchMode Boolean
The payload that contains a JSON array of records will be sent to CloudWatch via a batch call.

TopicRuleErrorActionCloudwatchMetric
, TopicRuleErrorActionCloudwatchMetricArgs

MetricName This property is required. string
The CloudWatch metric name.
MetricNamespace This property is required. string
The CloudWatch metric namespace name.
MetricUnit This property is required. string
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
MetricValue This property is required. string
The CloudWatch metric value.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch metric.
MetricTimestamp string
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
MetricName This property is required. string
The CloudWatch metric name.
MetricNamespace This property is required. string
The CloudWatch metric namespace name.
MetricUnit This property is required. string
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
MetricValue This property is required. string
The CloudWatch metric value.
RoleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch metric.
MetricTimestamp string
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metricName This property is required. String
The CloudWatch metric name.
metricNamespace This property is required. String
The CloudWatch metric namespace name.
metricUnit This property is required. String
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metricValue This property is required. String
The CloudWatch metric value.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch metric.
metricTimestamp String
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metricName This property is required. string
The CloudWatch metric name.
metricNamespace This property is required. string
The CloudWatch metric namespace name.
metricUnit This property is required. string
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metricValue This property is required. string
The CloudWatch metric value.
roleArn This property is required. string
The IAM role ARN that allows access to the CloudWatch metric.
metricTimestamp string
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metric_name This property is required. str
The CloudWatch metric name.
metric_namespace This property is required. str
The CloudWatch metric namespace name.
metric_unit This property is required. str
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metric_value This property is required. str
The CloudWatch metric value.
role_arn This property is required. str
The IAM role ARN that allows access to the CloudWatch metric.
metric_timestamp str
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
metricName This property is required. String
The CloudWatch metric name.
metricNamespace This property is required. String
The CloudWatch metric namespace name.
metricUnit This property is required. String
The metric unit (supported units can be found here: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
metricValue This property is required. String
The CloudWatch metric value.
roleArn This property is required. String
The IAM role ARN that allows access to the CloudWatch metric.
metricTimestamp String
An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).

TopicRuleErrorActionDynamodb
, TopicRuleErrorActionDynamodbArgs

HashKeyField This property is required. string
The hash key name.
HashKeyValue This property is required. string
The hash key value.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
TableName This property is required. string
The name of the DynamoDB table.
HashKeyType string
The hash key type. Valid values are "STRING" or "NUMBER".
Operation string
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
PayloadField string
The action payload.
RangeKeyField string
The range key name.
RangeKeyType string
The range key type. Valid values are "STRING" or "NUMBER".
RangeKeyValue string
The range key value.
HashKeyField This property is required. string
The hash key name.
HashKeyValue This property is required. string
The hash key value.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
TableName This property is required. string
The name of the DynamoDB table.
HashKeyType string
The hash key type. Valid values are "STRING" or "NUMBER".
Operation string
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
PayloadField string
The action payload.
RangeKeyField string
The range key name.
RangeKeyType string
The range key type. Valid values are "STRING" or "NUMBER".
RangeKeyValue string
The range key value.
hashKeyField This property is required. String
The hash key name.
hashKeyValue This property is required. String
The hash key value.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.
hashKeyType String
The hash key type. Valid values are "STRING" or "NUMBER".
operation String
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payloadField String
The action payload.
rangeKeyField String
The range key name.
rangeKeyType String
The range key type. Valid values are "STRING" or "NUMBER".
rangeKeyValue String
The range key value.
hashKeyField This property is required. string
The hash key name.
hashKeyValue This property is required. string
The hash key value.
roleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
tableName This property is required. string
The name of the DynamoDB table.
hashKeyType string
The hash key type. Valid values are "STRING" or "NUMBER".
operation string
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payloadField string
The action payload.
rangeKeyField string
The range key name.
rangeKeyType string
The range key type. Valid values are "STRING" or "NUMBER".
rangeKeyValue string
The range key value.
hash_key_field This property is required. str
The hash key name.
hash_key_value This property is required. str
The hash key value.
role_arn This property is required. str
The ARN of the IAM role that grants access to the DynamoDB table.
table_name This property is required. str
The name of the DynamoDB table.
hash_key_type str
The hash key type. Valid values are "STRING" or "NUMBER".
operation str
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payload_field str
The action payload.
range_key_field str
The range key name.
range_key_type str
The range key type. Valid values are "STRING" or "NUMBER".
range_key_value str
The range key value.
hashKeyField This property is required. String
The hash key name.
hashKeyValue This property is required. String
The hash key value.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.
hashKeyType String
The hash key type. Valid values are "STRING" or "NUMBER".
operation String
The operation. Valid values are "INSERT", "UPDATE", or "DELETE".
payloadField String
The action payload.
rangeKeyField String
The range key name.
rangeKeyType String
The range key type. Valid values are "STRING" or "NUMBER".
rangeKeyValue String
The range key value.

TopicRuleErrorActionDynamodbv2
, TopicRuleErrorActionDynamodbv2Args

RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
PutItem TopicRuleErrorActionDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
PutItem TopicRuleErrorActionDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
putItem TopicRuleErrorActionDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
roleArn This property is required. string
The ARN of the IAM role that grants access to the DynamoDB table.
putItem TopicRuleErrorActionDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
role_arn This property is required. str
The ARN of the IAM role that grants access to the DynamoDB table.
put_item TopicRuleErrorActionDynamodbv2PutItem
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.
roleArn This property is required. String
The ARN of the IAM role that grants access to the DynamoDB table.
putItem Property Map
Configuration block with DynamoDB Table to which the message will be written. Nested arguments below.

TopicRuleErrorActionDynamodbv2PutItem
, TopicRuleErrorActionDynamodbv2PutItemArgs

TableName This property is required. string
The name of the DynamoDB table.
TableName This property is required. string
The name of the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.
tableName This property is required. string
The name of the DynamoDB table.
table_name This property is required. str
The name of the DynamoDB table.
tableName This property is required. String
The name of the DynamoDB table.

TopicRuleErrorActionElasticsearch
, TopicRuleErrorActionElasticsearchArgs

Endpoint This property is required. string
The endpoint of your Elasticsearch domain.
Id This property is required. string
The unique identifier for the document you are storing.
Index This property is required. string
The Elasticsearch index where you want to store your data.
RoleArn This property is required. string
The IAM role ARN that has access to Elasticsearch.
Type This property is required. string
The type of document you are storing.
Endpoint This property is required. string
The endpoint of your Elasticsearch domain.
Id This property is required. string
The unique identifier for the document you are storing.
Index This property is required. string
The Elasticsearch index where you want to store your data.
RoleArn This property is required. string
The IAM role ARN that has access to Elasticsearch.
Type This property is required. string
The type of document you are storing.
endpoint This property is required. String
The endpoint of your Elasticsearch domain.
id This property is required. String
The unique identifier for the document you are storing.
index This property is required. String
The Elasticsearch index where you want to store your data.
roleArn This property is required. String
The IAM role ARN that has access to Elasticsearch.
type This property is required. String
The type of document you are storing.
endpoint This property is required. string
The endpoint of your Elasticsearch domain.
id This property is required. string
The unique identifier for the document you are storing.
index This property is required. string
The Elasticsearch index where you want to store your data.
roleArn This property is required. string
The IAM role ARN that has access to Elasticsearch.
type This property is required. string
The type of document you are storing.
endpoint This property is required. str
The endpoint of your Elasticsearch domain.
id This property is required. str
The unique identifier for the document you are storing.
index This property is required. str
The Elasticsearch index where you want to store your data.
role_arn This property is required. str
The IAM role ARN that has access to Elasticsearch.
type This property is required. str
The type of document you are storing.
endpoint This property is required. String
The endpoint of your Elasticsearch domain.
id This property is required. String
The unique identifier for the document you are storing.
index This property is required. String
The Elasticsearch index where you want to store your data.
roleArn This property is required. String
The IAM role ARN that has access to Elasticsearch.
type This property is required. String
The type of document you are storing.

TopicRuleErrorActionFirehose
, TopicRuleErrorActionFirehoseArgs

DeliveryStreamName This property is required. string
The delivery stream name.
RoleArn This property is required. string
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
BatchMode bool
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
Separator string
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
DeliveryStreamName This property is required. string
The delivery stream name.
RoleArn This property is required. string
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
BatchMode bool
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
Separator string
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
deliveryStreamName This property is required. String
The delivery stream name.
roleArn This property is required. String
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batchMode Boolean
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator String
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
deliveryStreamName This property is required. string
The delivery stream name.
roleArn This property is required. string
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batchMode boolean
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator string
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
delivery_stream_name This property is required. str
The delivery stream name.
role_arn This property is required. str
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batch_mode bool
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator str
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
deliveryStreamName This property is required. String
The delivery stream name.
roleArn This property is required. String
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batchMode Boolean
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator String
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).

TopicRuleErrorActionHttp
, TopicRuleErrorActionHttpArgs

Url This property is required. string
The HTTPS URL.
ConfirmationUrl string
The HTTPS URL used to verify ownership of url.
HttpHeaders List<TopicRuleErrorActionHttpHttpHeader>
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
Url This property is required. string
The HTTPS URL.
ConfirmationUrl string
The HTTPS URL used to verify ownership of url.
HttpHeaders []TopicRuleErrorActionHttpHttpHeader
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. String
The HTTPS URL.
confirmationUrl String
The HTTPS URL used to verify ownership of url.
httpHeaders List<TopicRuleErrorActionHttpHttpHeader>
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. string
The HTTPS URL.
confirmationUrl string
The HTTPS URL used to verify ownership of url.
httpHeaders TopicRuleErrorActionHttpHttpHeader[]
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. str
The HTTPS URL.
confirmation_url str
The HTTPS URL used to verify ownership of url.
http_headers Sequence[TopicRuleErrorActionHttpHttpHeader]
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. String
The HTTPS URL.
confirmationUrl String
The HTTPS URL used to verify ownership of url.
httpHeaders List<Property Map>
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.

TopicRuleErrorActionHttpHttpHeader
, TopicRuleErrorActionHttpHttpHeaderArgs

Key This property is required. string
The name of the HTTP header.
Value This property is required. string
The value of the HTTP header.
Key This property is required. string
The name of the HTTP header.
Value This property is required. string
The value of the HTTP header.
key This property is required. String
The name of the HTTP header.
value This property is required. String
The value of the HTTP header.
key This property is required. string
The name of the HTTP header.
value This property is required. string
The value of the HTTP header.
key This property is required. str
The name of the HTTP header.
value This property is required. str
The value of the HTTP header.
key This property is required. String
The name of the HTTP header.
value This property is required. String
The value of the HTTP header.

TopicRuleErrorActionIotAnalytics
, TopicRuleErrorActionIotAnalyticsArgs

ChannelName This property is required. string
Name of AWS IOT Analytics channel.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
ChannelName This property is required. string
Name of AWS IOT Analytics channel.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channelName This property is required. String
Name of AWS IOT Analytics channel.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channelName This property is required. string
Name of AWS IOT Analytics channel.
roleArn This property is required. string
The ARN of the IAM role that grants access.
batchMode boolean
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channel_name This property is required. str
Name of AWS IOT Analytics channel.
role_arn This property is required. str
The ARN of the IAM role that grants access.
batch_mode bool
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channelName This property is required. String
Name of AWS IOT Analytics channel.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.

TopicRuleErrorActionIotEvents
, TopicRuleErrorActionIotEventsArgs

InputName This property is required. string
The name of the AWS IoT Events input.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
MessageId string
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
InputName This property is required. string
The name of the AWS IoT Events input.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
MessageId string
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
inputName This property is required. String
The name of the AWS IoT Events input.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
messageId String
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
inputName This property is required. string
The name of the AWS IoT Events input.
roleArn This property is required. string
The ARN of the IAM role that grants access.
batchMode boolean
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
messageId string
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
input_name This property is required. str
The name of the AWS IoT Events input.
role_arn This property is required. str
The ARN of the IAM role that grants access.
batch_mode bool
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
message_id str
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
inputName This property is required. String
The name of the AWS IoT Events input.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
messageId String
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.

TopicRuleErrorActionKafka
, TopicRuleErrorActionKafkaArgs

ClientProperties This property is required. Dictionary<string, string>
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
DestinationArn This property is required. string
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
Topic This property is required. string
The Kafka topic for messages to be sent to the Kafka broker.
Headers List<TopicRuleErrorActionKafkaHeader>
The list of Kafka headers that you specify. Nested arguments below.
Key string
The Kafka message key.
Partition string
The Kafka message partition.
ClientProperties This property is required. map[string]string
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
DestinationArn This property is required. string
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
Topic This property is required. string
The Kafka topic for messages to be sent to the Kafka broker.
Headers []TopicRuleErrorActionKafkaHeader
The list of Kafka headers that you specify. Nested arguments below.
Key string
The Kafka message key.
Partition string
The Kafka message partition.
clientProperties This property is required. Map<String,String>
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destinationArn This property is required. String
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. String
The Kafka topic for messages to be sent to the Kafka broker.
headers List<TopicRuleErrorActionKafkaHeader>
The list of Kafka headers that you specify. Nested arguments below.
key String
The Kafka message key.
partition String
The Kafka message partition.
clientProperties This property is required. {[key: string]: string}
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destinationArn This property is required. string
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. string
The Kafka topic for messages to be sent to the Kafka broker.
headers TopicRuleErrorActionKafkaHeader[]
The list of Kafka headers that you specify. Nested arguments below.
key string
The Kafka message key.
partition string
The Kafka message partition.
client_properties This property is required. Mapping[str, str]
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destination_arn This property is required. str
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. str
The Kafka topic for messages to be sent to the Kafka broker.
headers Sequence[TopicRuleErrorActionKafkaHeader]
The list of Kafka headers that you specify. Nested arguments below.
key str
The Kafka message key.
partition str
The Kafka message partition.
clientProperties This property is required. Map<String>
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destinationArn This property is required. String
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. String
The Kafka topic for messages to be sent to the Kafka broker.
headers List<Property Map>
The list of Kafka headers that you specify. Nested arguments below.
key String
The Kafka message key.
partition String
The Kafka message partition.

TopicRuleErrorActionKafkaHeader
, TopicRuleErrorActionKafkaHeaderArgs

Key This property is required. string
The key of the Kafka header.
Value This property is required. string
The value of the Kafka header.
Key This property is required. string
The key of the Kafka header.
Value This property is required. string
The value of the Kafka header.
key This property is required. String
The key of the Kafka header.
value This property is required. String
The value of the Kafka header.
key This property is required. string
The key of the Kafka header.
value This property is required. string
The value of the Kafka header.
key This property is required. str
The key of the Kafka header.
value This property is required. str
The value of the Kafka header.
key This property is required. String
The key of the Kafka header.
value This property is required. String
The value of the Kafka header.

TopicRuleErrorActionKinesis
, TopicRuleErrorActionKinesisArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
StreamName This property is required. string
The name of the Amazon Kinesis stream.
PartitionKey string
The partition key.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
StreamName This property is required. string
The name of the Amazon Kinesis stream.
PartitionKey string
The partition key.
roleArn This property is required. String
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
streamName This property is required. String
The name of the Amazon Kinesis stream.
partitionKey String
The partition key.
roleArn This property is required. string
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
streamName This property is required. string
The name of the Amazon Kinesis stream.
partitionKey string
The partition key.
role_arn This property is required. str
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
stream_name This property is required. str
The name of the Amazon Kinesis stream.
partition_key str
The partition key.
roleArn This property is required. String
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
streamName This property is required. String
The name of the Amazon Kinesis stream.
partitionKey String
The partition key.

TopicRuleErrorActionLambda
, TopicRuleErrorActionLambdaArgs

FunctionArn This property is required. string
The ARN of the Lambda function.
FunctionArn This property is required. string
The ARN of the Lambda function.
functionArn This property is required. String
The ARN of the Lambda function.
functionArn This property is required. string
The ARN of the Lambda function.
function_arn This property is required. str
The ARN of the Lambda function.
functionArn This property is required. String
The ARN of the Lambda function.

TopicRuleErrorActionRepublish
, TopicRuleErrorActionRepublishArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access.
Topic This property is required. string
The name of the MQTT topic the message should be republished to.
Qos int
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
Topic This property is required. string
The name of the MQTT topic the message should be republished to.
Qos int
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
roleArn This property is required. String
The ARN of the IAM role that grants access.
topic This property is required. String
The name of the MQTT topic the message should be republished to.
qos Integer
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
roleArn This property is required. string
The ARN of the IAM role that grants access.
topic This property is required. string
The name of the MQTT topic the message should be republished to.
qos number
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
role_arn This property is required. str
The ARN of the IAM role that grants access.
topic This property is required. str
The name of the MQTT topic the message should be republished to.
qos int
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
roleArn This property is required. String
The ARN of the IAM role that grants access.
topic This property is required. String
The name of the MQTT topic the message should be republished to.
qos Number
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.

TopicRuleErrorActionS3
, TopicRuleErrorActionS3Args

BucketName This property is required. string
The Amazon S3 bucket name.
Key This property is required. string
The object key.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
CannedAcl string
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
BucketName This property is required. string
The Amazon S3 bucket name.
Key This property is required. string
The object key.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
CannedAcl string
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucketName This property is required. String
The Amazon S3 bucket name.
key This property is required. String
The object key.
roleArn This property is required. String
The ARN of the IAM role that grants access.
cannedAcl String
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucketName This property is required. string
The Amazon S3 bucket name.
key This property is required. string
The object key.
roleArn This property is required. string
The ARN of the IAM role that grants access.
cannedAcl string
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucket_name This property is required. str
The Amazon S3 bucket name.
key This property is required. str
The object key.
role_arn This property is required. str
The ARN of the IAM role that grants access.
canned_acl str
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucketName This property is required. String
The Amazon S3 bucket name.
key This property is required. String
The object key.
roleArn This property is required. String
The ARN of the IAM role that grants access.
cannedAcl String
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.

TopicRuleErrorActionSns
, TopicRuleErrorActionSnsArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access.
TargetArn This property is required. string
The ARN of the SNS topic.
MessageFormat string
The message format of the message to publish. Accepted values are "JSON" and "RAW".
RoleArn This property is required. string
The ARN of the IAM role that grants access.
TargetArn This property is required. string
The ARN of the SNS topic.
MessageFormat string
The message format of the message to publish. Accepted values are "JSON" and "RAW".
roleArn This property is required. String
The ARN of the IAM role that grants access.
targetArn This property is required. String
The ARN of the SNS topic.
messageFormat String
The message format of the message to publish. Accepted values are "JSON" and "RAW".
roleArn This property is required. string
The ARN of the IAM role that grants access.
targetArn This property is required. string
The ARN of the SNS topic.
messageFormat string
The message format of the message to publish. Accepted values are "JSON" and "RAW".
role_arn This property is required. str
The ARN of the IAM role that grants access.
target_arn This property is required. str
The ARN of the SNS topic.
message_format str
The message format of the message to publish. Accepted values are "JSON" and "RAW".
roleArn This property is required. String
The ARN of the IAM role that grants access.
targetArn This property is required. String
The ARN of the SNS topic.
messageFormat String
The message format of the message to publish. Accepted values are "JSON" and "RAW".

TopicRuleErrorActionSqs
, TopicRuleErrorActionSqsArgs

QueueUrl This property is required. string
The URL of the Amazon SQS queue.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
UseBase64 This property is required. bool
Specifies whether to use Base64 encoding.
QueueUrl This property is required. string
The URL of the Amazon SQS queue.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
UseBase64 This property is required. bool
Specifies whether to use Base64 encoding.
queueUrl This property is required. String
The URL of the Amazon SQS queue.
roleArn This property is required. String
The ARN of the IAM role that grants access.
useBase64 This property is required. Boolean
Specifies whether to use Base64 encoding.
queueUrl This property is required. string
The URL of the Amazon SQS queue.
roleArn This property is required. string
The ARN of the IAM role that grants access.
useBase64 This property is required. boolean
Specifies whether to use Base64 encoding.
queue_url This property is required. str
The URL of the Amazon SQS queue.
role_arn This property is required. str
The ARN of the IAM role that grants access.
use_base64 This property is required. bool
Specifies whether to use Base64 encoding.
queueUrl This property is required. String
The URL of the Amazon SQS queue.
roleArn This property is required. String
The ARN of the IAM role that grants access.
useBase64 This property is required. Boolean
Specifies whether to use Base64 encoding.

TopicRuleErrorActionStepFunctions
, TopicRuleErrorActionStepFunctionsArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access to start execution of the state machine.
StateMachineName This property is required. string
The name of the Step Functions state machine whose execution will be started.
ExecutionNamePrefix string
The prefix used to generate, along with a UUID, the unique state machine execution name.
RoleArn This property is required. string
The ARN of the IAM role that grants access to start execution of the state machine.
StateMachineName This property is required. string
The name of the Step Functions state machine whose execution will be started.
ExecutionNamePrefix string
The prefix used to generate, along with a UUID, the unique state machine execution name.
roleArn This property is required. String
The ARN of the IAM role that grants access to start execution of the state machine.
stateMachineName This property is required. String
The name of the Step Functions state machine whose execution will be started.
executionNamePrefix String
The prefix used to generate, along with a UUID, the unique state machine execution name.
roleArn This property is required. string
The ARN of the IAM role that grants access to start execution of the state machine.
stateMachineName This property is required. string
The name of the Step Functions state machine whose execution will be started.
executionNamePrefix string
The prefix used to generate, along with a UUID, the unique state machine execution name.
role_arn This property is required. str
The ARN of the IAM role that grants access to start execution of the state machine.
state_machine_name This property is required. str
The name of the Step Functions state machine whose execution will be started.
execution_name_prefix str
The prefix used to generate, along with a UUID, the unique state machine execution name.
roleArn This property is required. String
The ARN of the IAM role that grants access to start execution of the state machine.
stateMachineName This property is required. String
The name of the Step Functions state machine whose execution will be started.
executionNamePrefix String
The prefix used to generate, along with a UUID, the unique state machine execution name.

TopicRuleErrorActionTimestream
, TopicRuleErrorActionTimestreamArgs

DatabaseName This property is required. string
The name of an Amazon Timestream database.
Dimensions This property is required. List<TopicRuleErrorActionTimestreamDimension>
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
RoleArn This property is required. string
The ARN of the role that grants permission to write to the Amazon Timestream database table.
TableName This property is required. string
The name of the database table into which to write the measure records.
Timestamp TopicRuleErrorActionTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
DatabaseName This property is required. string
The name of an Amazon Timestream database.
Dimensions This property is required. []TopicRuleErrorActionTimestreamDimension
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
RoleArn This property is required. string
The ARN of the role that grants permission to write to the Amazon Timestream database table.
TableName This property is required. string
The name of the database table into which to write the measure records.
Timestamp TopicRuleErrorActionTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
databaseName This property is required. String
The name of an Amazon Timestream database.
dimensions This property is required. List<TopicRuleErrorActionTimestreamDimension>
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
roleArn This property is required. String
The ARN of the role that grants permission to write to the Amazon Timestream database table.
tableName This property is required. String
The name of the database table into which to write the measure records.
timestamp TopicRuleErrorActionTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
databaseName This property is required. string
The name of an Amazon Timestream database.
dimensions This property is required. TopicRuleErrorActionTimestreamDimension[]
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
roleArn This property is required. string
The ARN of the role that grants permission to write to the Amazon Timestream database table.
tableName This property is required. string
The name of the database table into which to write the measure records.
timestamp TopicRuleErrorActionTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
database_name This property is required. str
The name of an Amazon Timestream database.
dimensions This property is required. Sequence[TopicRuleErrorActionTimestreamDimension]
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
role_arn This property is required. str
The ARN of the role that grants permission to write to the Amazon Timestream database table.
table_name This property is required. str
The name of the database table into which to write the measure records.
timestamp TopicRuleErrorActionTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
databaseName This property is required. String
The name of an Amazon Timestream database.
dimensions This property is required. List<Property Map>
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
roleArn This property is required. String
The ARN of the role that grants permission to write to the Amazon Timestream database table.
tableName This property is required. String
The name of the database table into which to write the measure records.
timestamp Property Map
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.

TopicRuleErrorActionTimestreamDimension
, TopicRuleErrorActionTimestreamDimensionArgs

Name This property is required. string
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
Value This property is required. string
The value to write in this column of the database record.
Name This property is required. string
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
Value This property is required. string
The value to write in this column of the database record.
name This property is required. String
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. String
The value to write in this column of the database record.
name This property is required. string
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. string
The value to write in this column of the database record.
name This property is required. str
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. str
The value to write in this column of the database record.
name This property is required. String
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. String
The value to write in this column of the database record.

TopicRuleErrorActionTimestreamTimestamp
, TopicRuleErrorActionTimestreamTimestampArgs

Unit This property is required. string
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
Value This property is required. string
An expression that returns a long epoch time value.
Unit This property is required. string
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
Value This property is required. string
An expression that returns a long epoch time value.
unit This property is required. String
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. String
An expression that returns a long epoch time value.
unit This property is required. string
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. string
An expression that returns a long epoch time value.
unit This property is required. str
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. str
An expression that returns a long epoch time value.
unit This property is required. String
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. String
An expression that returns a long epoch time value.

TopicRuleFirehose
, TopicRuleFirehoseArgs

DeliveryStreamName This property is required. string
The delivery stream name.
RoleArn This property is required. string
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
BatchMode bool
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
Separator string
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
DeliveryStreamName This property is required. string
The delivery stream name.
RoleArn This property is required. string
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
BatchMode bool
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
Separator string
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
deliveryStreamName This property is required. String
The delivery stream name.
roleArn This property is required. String
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batchMode Boolean
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator String
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
deliveryStreamName This property is required. string
The delivery stream name.
roleArn This property is required. string
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batchMode boolean
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator string
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
delivery_stream_name This property is required. str
The delivery stream name.
role_arn This property is required. str
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batch_mode bool
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator str
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).
deliveryStreamName This property is required. String
The delivery stream name.
roleArn This property is required. String
The IAM role ARN that grants access to the Amazon Kinesis Firehose stream.
batchMode Boolean
The payload that contains a JSON array of records will be sent to Kinesis Firehose via a batch call.
separator String
A character separator that is used to separate records written to the Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows newline), ',' (comma).

TopicRuleHttp
, TopicRuleHttpArgs

Url This property is required. string
The HTTPS URL.
ConfirmationUrl string
The HTTPS URL used to verify ownership of url.
HttpHeaders List<TopicRuleHttpHttpHeader>
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
Url This property is required. string
The HTTPS URL.
ConfirmationUrl string
The HTTPS URL used to verify ownership of url.
HttpHeaders []TopicRuleHttpHttpHeader
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. String
The HTTPS URL.
confirmationUrl String
The HTTPS URL used to verify ownership of url.
httpHeaders List<TopicRuleHttpHttpHeader>
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. string
The HTTPS URL.
confirmationUrl string
The HTTPS URL used to verify ownership of url.
httpHeaders TopicRuleHttpHttpHeader[]
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. str
The HTTPS URL.
confirmation_url str
The HTTPS URL used to verify ownership of url.
http_headers Sequence[TopicRuleHttpHttpHeader]
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.
url This property is required. String
The HTTPS URL.
confirmationUrl String
The HTTPS URL used to verify ownership of url.
httpHeaders List<Property Map>
Custom HTTP header IoT Core should send. It is possible to define more than one custom header.

TopicRuleHttpHttpHeader
, TopicRuleHttpHttpHeaderArgs

Key This property is required. string
The name of the HTTP header.
Value This property is required. string
The value of the HTTP header.
Key This property is required. string
The name of the HTTP header.
Value This property is required. string
The value of the HTTP header.
key This property is required. String
The name of the HTTP header.
value This property is required. String
The value of the HTTP header.
key This property is required. string
The name of the HTTP header.
value This property is required. string
The value of the HTTP header.
key This property is required. str
The name of the HTTP header.
value This property is required. str
The value of the HTTP header.
key This property is required. String
The name of the HTTP header.
value This property is required. String
The value of the HTTP header.

TopicRuleIotAnalytic
, TopicRuleIotAnalyticArgs

ChannelName This property is required. string
Name of AWS IOT Analytics channel.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
ChannelName This property is required. string
Name of AWS IOT Analytics channel.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channelName This property is required. String
Name of AWS IOT Analytics channel.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channelName This property is required. string
Name of AWS IOT Analytics channel.
roleArn This property is required. string
The ARN of the IAM role that grants access.
batchMode boolean
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channel_name This property is required. str
Name of AWS IOT Analytics channel.
role_arn This property is required. str
The ARN of the IAM role that grants access.
batch_mode bool
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.
channelName This property is required. String
Name of AWS IOT Analytics channel.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Analytics via a batch call.

TopicRuleIotEvent
, TopicRuleIotEventArgs

InputName This property is required. string
The name of the AWS IoT Events input.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
MessageId string
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
InputName This property is required. string
The name of the AWS IoT Events input.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
BatchMode bool
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
MessageId string
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
inputName This property is required. String
The name of the AWS IoT Events input.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
messageId String
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
inputName This property is required. string
The name of the AWS IoT Events input.
roleArn This property is required. string
The ARN of the IAM role that grants access.
batchMode boolean
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
messageId string
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
input_name This property is required. str
The name of the AWS IoT Events input.
role_arn This property is required. str
The ARN of the IAM role that grants access.
batch_mode bool
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
message_id str
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.
inputName This property is required. String
The name of the AWS IoT Events input.
roleArn This property is required. String
The ARN of the IAM role that grants access.
batchMode Boolean
The payload that contains a JSON array of records will be sent to IoT Events via a batch call.
messageId String
Use this to ensure that only one input (message) with a given messageId is processed by an AWS IoT Events detector.

TopicRuleKafka
, TopicRuleKafkaArgs

ClientProperties This property is required. Dictionary<string, string>
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
DestinationArn This property is required. string
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
Topic This property is required. string
The Kafka topic for messages to be sent to the Kafka broker.
Headers List<TopicRuleKafkaHeader>
The list of Kafka headers that you specify. Nested arguments below.
Key string
The Kafka message key.
Partition string
The Kafka message partition.
ClientProperties This property is required. map[string]string
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
DestinationArn This property is required. string
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
Topic This property is required. string
The Kafka topic for messages to be sent to the Kafka broker.
Headers []TopicRuleKafkaHeader
The list of Kafka headers that you specify. Nested arguments below.
Key string
The Kafka message key.
Partition string
The Kafka message partition.
clientProperties This property is required. Map<String,String>
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destinationArn This property is required. String
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. String
The Kafka topic for messages to be sent to the Kafka broker.
headers List<TopicRuleKafkaHeader>
The list of Kafka headers that you specify. Nested arguments below.
key String
The Kafka message key.
partition String
The Kafka message partition.
clientProperties This property is required. {[key: string]: string}
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destinationArn This property is required. string
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. string
The Kafka topic for messages to be sent to the Kafka broker.
headers TopicRuleKafkaHeader[]
The list of Kafka headers that you specify. Nested arguments below.
key string
The Kafka message key.
partition string
The Kafka message partition.
client_properties This property is required. Mapping[str, str]
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destination_arn This property is required. str
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. str
The Kafka topic for messages to be sent to the Kafka broker.
headers Sequence[TopicRuleKafkaHeader]
The list of Kafka headers that you specify. Nested arguments below.
key str
The Kafka message key.
partition str
The Kafka message partition.
clientProperties This property is required. Map<String>
Properties of the Apache Kafka producer client. For more info, see the AWS documentation.
destinationArn This property is required. String
The ARN of Kafka action's VPC aws.iot.TopicRuleDestination.
topic This property is required. String
The Kafka topic for messages to be sent to the Kafka broker.
headers List<Property Map>
The list of Kafka headers that you specify. Nested arguments below.
key String
The Kafka message key.
partition String
The Kafka message partition.

TopicRuleKafkaHeader
, TopicRuleKafkaHeaderArgs

Key This property is required. string
The key of the Kafka header.
Value This property is required. string
The value of the Kafka header.
Key This property is required. string
The key of the Kafka header.
Value This property is required. string
The value of the Kafka header.
key This property is required. String
The key of the Kafka header.
value This property is required. String
The value of the Kafka header.
key This property is required. string
The key of the Kafka header.
value This property is required. string
The value of the Kafka header.
key This property is required. str
The key of the Kafka header.
value This property is required. str
The value of the Kafka header.
key This property is required. String
The key of the Kafka header.
value This property is required. String
The value of the Kafka header.

TopicRuleKinesis
, TopicRuleKinesisArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
StreamName This property is required. string
The name of the Amazon Kinesis stream.
PartitionKey string
The partition key.
RoleArn This property is required. string
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
StreamName This property is required. string
The name of the Amazon Kinesis stream.
PartitionKey string
The partition key.
roleArn This property is required. String
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
streamName This property is required. String
The name of the Amazon Kinesis stream.
partitionKey String
The partition key.
roleArn This property is required. string
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
streamName This property is required. string
The name of the Amazon Kinesis stream.
partitionKey string
The partition key.
role_arn This property is required. str
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
stream_name This property is required. str
The name of the Amazon Kinesis stream.
partition_key str
The partition key.
roleArn This property is required. String
The ARN of the IAM role that grants access to the Amazon Kinesis stream.
streamName This property is required. String
The name of the Amazon Kinesis stream.
partitionKey String
The partition key.

TopicRuleLambda
, TopicRuleLambdaArgs

FunctionArn This property is required. string
The ARN of the Lambda function.
FunctionArn This property is required. string
The ARN of the Lambda function.
functionArn This property is required. String
The ARN of the Lambda function.
functionArn This property is required. string
The ARN of the Lambda function.
function_arn This property is required. str
The ARN of the Lambda function.
functionArn This property is required. String
The ARN of the Lambda function.

TopicRuleRepublish
, TopicRuleRepublishArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access.
Topic This property is required. string
The name of the MQTT topic the message should be republished to.
Qos int
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
Topic This property is required. string
The name of the MQTT topic the message should be republished to.
Qos int
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
roleArn This property is required. String
The ARN of the IAM role that grants access.
topic This property is required. String
The name of the MQTT topic the message should be republished to.
qos Integer
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
roleArn This property is required. string
The ARN of the IAM role that grants access.
topic This property is required. string
The name of the MQTT topic the message should be republished to.
qos number
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
role_arn This property is required. str
The ARN of the IAM role that grants access.
topic This property is required. str
The name of the MQTT topic the message should be republished to.
qos int
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.
roleArn This property is required. String
The ARN of the IAM role that grants access.
topic This property is required. String
The name of the MQTT topic the message should be republished to.
qos Number
The Quality of Service (QoS) level to use when republishing messages. Valid values are 0 or 1. The default value is 0.

TopicRuleS3
, TopicRuleS3Args

BucketName This property is required. string
The Amazon S3 bucket name.
Key This property is required. string
The object key.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
CannedAcl string
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
BucketName This property is required. string
The Amazon S3 bucket name.
Key This property is required. string
The object key.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
CannedAcl string
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucketName This property is required. String
The Amazon S3 bucket name.
key This property is required. String
The object key.
roleArn This property is required. String
The ARN of the IAM role that grants access.
cannedAcl String
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucketName This property is required. string
The Amazon S3 bucket name.
key This property is required. string
The object key.
roleArn This property is required. string
The ARN of the IAM role that grants access.
cannedAcl string
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucket_name This property is required. str
The Amazon S3 bucket name.
key This property is required. str
The object key.
role_arn This property is required. str
The ARN of the IAM role that grants access.
canned_acl str
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.
bucketName This property is required. String
The Amazon S3 bucket name.
key This property is required. String
The object key.
roleArn This property is required. String
The ARN of the IAM role that grants access.
cannedAcl String
The Amazon S3 canned ACL that controls access to the object identified by the object key. Valid values.

TopicRuleSns
, TopicRuleSnsArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access.
TargetArn This property is required. string
The ARN of the SNS topic.
MessageFormat string
The message format of the message to publish. Accepted values are "JSON" and "RAW".
RoleArn This property is required. string
The ARN of the IAM role that grants access.
TargetArn This property is required. string
The ARN of the SNS topic.
MessageFormat string
The message format of the message to publish. Accepted values are "JSON" and "RAW".
roleArn This property is required. String
The ARN of the IAM role that grants access.
targetArn This property is required. String
The ARN of the SNS topic.
messageFormat String
The message format of the message to publish. Accepted values are "JSON" and "RAW".
roleArn This property is required. string
The ARN of the IAM role that grants access.
targetArn This property is required. string
The ARN of the SNS topic.
messageFormat string
The message format of the message to publish. Accepted values are "JSON" and "RAW".
role_arn This property is required. str
The ARN of the IAM role that grants access.
target_arn This property is required. str
The ARN of the SNS topic.
message_format str
The message format of the message to publish. Accepted values are "JSON" and "RAW".
roleArn This property is required. String
The ARN of the IAM role that grants access.
targetArn This property is required. String
The ARN of the SNS topic.
messageFormat String
The message format of the message to publish. Accepted values are "JSON" and "RAW".

TopicRuleSqs
, TopicRuleSqsArgs

QueueUrl This property is required. string
The URL of the Amazon SQS queue.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
UseBase64 This property is required. bool
Specifies whether to use Base64 encoding.
QueueUrl This property is required. string
The URL of the Amazon SQS queue.
RoleArn This property is required. string
The ARN of the IAM role that grants access.
UseBase64 This property is required. bool
Specifies whether to use Base64 encoding.
queueUrl This property is required. String
The URL of the Amazon SQS queue.
roleArn This property is required. String
The ARN of the IAM role that grants access.
useBase64 This property is required. Boolean
Specifies whether to use Base64 encoding.
queueUrl This property is required. string
The URL of the Amazon SQS queue.
roleArn This property is required. string
The ARN of the IAM role that grants access.
useBase64 This property is required. boolean
Specifies whether to use Base64 encoding.
queue_url This property is required. str
The URL of the Amazon SQS queue.
role_arn This property is required. str
The ARN of the IAM role that grants access.
use_base64 This property is required. bool
Specifies whether to use Base64 encoding.
queueUrl This property is required. String
The URL of the Amazon SQS queue.
roleArn This property is required. String
The ARN of the IAM role that grants access.
useBase64 This property is required. Boolean
Specifies whether to use Base64 encoding.

TopicRuleStepFunction
, TopicRuleStepFunctionArgs

RoleArn This property is required. string
The ARN of the IAM role that grants access to start execution of the state machine.
StateMachineName This property is required. string
The name of the Step Functions state machine whose execution will be started.
ExecutionNamePrefix string
The prefix used to generate, along with a UUID, the unique state machine execution name.
RoleArn This property is required. string
The ARN of the IAM role that grants access to start execution of the state machine.
StateMachineName This property is required. string
The name of the Step Functions state machine whose execution will be started.
ExecutionNamePrefix string
The prefix used to generate, along with a UUID, the unique state machine execution name.
roleArn This property is required. String
The ARN of the IAM role that grants access to start execution of the state machine.
stateMachineName This property is required. String
The name of the Step Functions state machine whose execution will be started.
executionNamePrefix String
The prefix used to generate, along with a UUID, the unique state machine execution name.
roleArn This property is required. string
The ARN of the IAM role that grants access to start execution of the state machine.
stateMachineName This property is required. string
The name of the Step Functions state machine whose execution will be started.
executionNamePrefix string
The prefix used to generate, along with a UUID, the unique state machine execution name.
role_arn This property is required. str
The ARN of the IAM role that grants access to start execution of the state machine.
state_machine_name This property is required. str
The name of the Step Functions state machine whose execution will be started.
execution_name_prefix str
The prefix used to generate, along with a UUID, the unique state machine execution name.
roleArn This property is required. String
The ARN of the IAM role that grants access to start execution of the state machine.
stateMachineName This property is required. String
The name of the Step Functions state machine whose execution will be started.
executionNamePrefix String
The prefix used to generate, along with a UUID, the unique state machine execution name.

TopicRuleTimestream
, TopicRuleTimestreamArgs

DatabaseName This property is required. string
The name of an Amazon Timestream database.
Dimensions This property is required. List<TopicRuleTimestreamDimension>
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
RoleArn This property is required. string
The ARN of the role that grants permission to write to the Amazon Timestream database table.
TableName This property is required. string
The name of the database table into which to write the measure records.
Timestamp TopicRuleTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
DatabaseName This property is required. string
The name of an Amazon Timestream database.
Dimensions This property is required. []TopicRuleTimestreamDimension
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
RoleArn This property is required. string
The ARN of the role that grants permission to write to the Amazon Timestream database table.
TableName This property is required. string
The name of the database table into which to write the measure records.
Timestamp TopicRuleTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
databaseName This property is required. String
The name of an Amazon Timestream database.
dimensions This property is required. List<TopicRuleTimestreamDimension>
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
roleArn This property is required. String
The ARN of the role that grants permission to write to the Amazon Timestream database table.
tableName This property is required. String
The name of the database table into which to write the measure records.
timestamp TopicRuleTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
databaseName This property is required. string
The name of an Amazon Timestream database.
dimensions This property is required. TopicRuleTimestreamDimension[]
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
roleArn This property is required. string
The ARN of the role that grants permission to write to the Amazon Timestream database table.
tableName This property is required. string
The name of the database table into which to write the measure records.
timestamp TopicRuleTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
database_name This property is required. str
The name of an Amazon Timestream database.
dimensions This property is required. Sequence[TopicRuleTimestreamDimension]
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
role_arn This property is required. str
The ARN of the role that grants permission to write to the Amazon Timestream database table.
table_name This property is required. str
The name of the database table into which to write the measure records.
timestamp TopicRuleTimestreamTimestamp
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.
databaseName This property is required. String
The name of an Amazon Timestream database.
dimensions This property is required. List<Property Map>
Configuration blocks with metadata attributes of the time series that are written in each measure record. Nested arguments below.
roleArn This property is required. String
The ARN of the role that grants permission to write to the Amazon Timestream database table.
tableName This property is required. String
The name of the database table into which to write the measure records.
timestamp Property Map
Configuration block specifying an application-defined value to replace the default value assigned to the Timestream record's timestamp in the time column. Nested arguments below.

TopicRuleTimestreamDimension
, TopicRuleTimestreamDimensionArgs

Name This property is required. string
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
Value This property is required. string
The value to write in this column of the database record.
Name This property is required. string
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
Value This property is required. string
The value to write in this column of the database record.
name This property is required. String
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. String
The value to write in this column of the database record.
name This property is required. string
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. string
The value to write in this column of the database record.
name This property is required. str
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. str
The value to write in this column of the database record.
name This property is required. String
The metadata dimension name. This is the name of the column in the Amazon Timestream database table record.
value This property is required. String
The value to write in this column of the database record.

TopicRuleTimestreamTimestamp
, TopicRuleTimestreamTimestampArgs

Unit This property is required. string
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
Value This property is required. string
An expression that returns a long epoch time value.
Unit This property is required. string
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
Value This property is required. string
An expression that returns a long epoch time value.
unit This property is required. String
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. String
An expression that returns a long epoch time value.
unit This property is required. string
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. string
An expression that returns a long epoch time value.
unit This property is required. str
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. str
An expression that returns a long epoch time value.
unit This property is required. String
The precision of the timestamp value that results from the expression described in value. Valid values: SECONDS, MILLISECONDS, MICROSECONDS, NANOSECONDS.
value This property is required. String
An expression that returns a long epoch time value.

Import

Using pulumi import, import IoT Topic Rules using the name. For example:

$ pulumi import aws:iot/topicRule:TopicRule rule <name>
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
AWS Classic pulumi/pulumi-aws
License
Apache-2.0
Notes
This Pulumi package is based on the aws Terraform Provider.