Try AWS Native preview for resources not in the classic version.
aws.costexplorer.AnomalySubscription
Explore with Pulumi AI
Try AWS Native preview for resources not in the classic version.
Provides a CE Anomaly Subscription.
Example Usage
Basic Example
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.costexplorer.AnomalyMonitor("test", {
    name: "AWSServiceMonitor",
    monitorType: "DIMENSIONAL",
    monitorDimension: "SERVICE",
});
const testAnomalySubscription = new aws.costexplorer.AnomalySubscription("test", {
    name: "DAILYSUBSCRIPTION",
    frequency: "DAILY",
    monitorArnLists: [test.arn],
    subscribers: [{
        type: "EMAIL",
        address: "abc@example.com",
    }],
    thresholdExpression: {
        dimension: {
            key: "ANOMALY_TOTAL_IMPACT_ABSOLUTE",
            matchOptions: ["GREATER_THAN_OR_EQUAL"],
            values: ["100"],
        },
    },
});
import pulumi
import pulumi_aws as aws
test = aws.costexplorer.AnomalyMonitor("test",
    name="AWSServiceMonitor",
    monitor_type="DIMENSIONAL",
    monitor_dimension="SERVICE")
test_anomaly_subscription = aws.costexplorer.AnomalySubscription("test",
    name="DAILYSUBSCRIPTION",
    frequency="DAILY",
    monitor_arn_lists=[test.arn],
    subscribers=[{
        "type": "EMAIL",
        "address": "abc@example.com",
    }],
    threshold_expression={
        "dimension": {
            "key": "ANOMALY_TOTAL_IMPACT_ABSOLUTE",
            "matchOptions": ["GREATER_THAN_OR_EQUAL"],
            "values": ["100"],
        },
    })
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/costexplorer"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := costexplorer.NewAnomalyMonitor(ctx, "test", &costexplorer.AnomalyMonitorArgs{
			Name:             pulumi.String("AWSServiceMonitor"),
			MonitorType:      pulumi.String("DIMENSIONAL"),
			MonitorDimension: pulumi.String("SERVICE"),
		})
		if err != nil {
			return err
		}
		_, err = costexplorer.NewAnomalySubscription(ctx, "test", &costexplorer.AnomalySubscriptionArgs{
			Name:      pulumi.String("DAILYSUBSCRIPTION"),
			Frequency: pulumi.String("DAILY"),
			MonitorArnLists: pulumi.StringArray{
				test.Arn,
			},
			Subscribers: costexplorer.AnomalySubscriptionSubscriberArray{
				&costexplorer.AnomalySubscriptionSubscriberArgs{
					Type:    pulumi.String("EMAIL"),
					Address: pulumi.String("abc@example.com"),
				},
			},
			ThresholdExpression: &costexplorer.AnomalySubscriptionThresholdExpressionArgs{
				Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionDimensionArgs{
					Key: pulumi.String("ANOMALY_TOTAL_IMPACT_ABSOLUTE"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("GREATER_THAN_OR_EQUAL"),
					},
					Values: pulumi.StringArray{
						pulumi.String("100"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var test = new Aws.CostExplorer.AnomalyMonitor("test", new()
    {
        Name = "AWSServiceMonitor",
        MonitorType = "DIMENSIONAL",
        MonitorDimension = "SERVICE",
    });
    var testAnomalySubscription = new Aws.CostExplorer.AnomalySubscription("test", new()
    {
        Name = "DAILYSUBSCRIPTION",
        Frequency = "DAILY",
        MonitorArnLists = new[]
        {
            test.Arn,
        },
        Subscribers = new[]
        {
            new Aws.CostExplorer.Inputs.AnomalySubscriptionSubscriberArgs
            {
                Type = "EMAIL",
                Address = "abc@example.com",
            },
        },
        ThresholdExpression = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionArgs
        {
            Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionDimensionArgs
            {
                Key = "ANOMALY_TOTAL_IMPACT_ABSOLUTE",
                MatchOptions = new[]
                {
                    "GREATER_THAN_OR_EQUAL",
                },
                Values = new[]
                {
                    "100",
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.costexplorer.AnomalyMonitor;
import com.pulumi.aws.costexplorer.AnomalyMonitorArgs;
import com.pulumi.aws.costexplorer.AnomalySubscription;
import com.pulumi.aws.costexplorer.AnomalySubscriptionArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionSubscriberArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionThresholdExpressionArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionThresholdExpressionDimensionArgs;
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 test = new AnomalyMonitor("test", AnomalyMonitorArgs.builder()
            .name("AWSServiceMonitor")
            .monitorType("DIMENSIONAL")
            .monitorDimension("SERVICE")
            .build());
        var testAnomalySubscription = new AnomalySubscription("testAnomalySubscription", AnomalySubscriptionArgs.builder()
            .name("DAILYSUBSCRIPTION")
            .frequency("DAILY")
            .monitorArnLists(test.arn())
            .subscribers(AnomalySubscriptionSubscriberArgs.builder()
                .type("EMAIL")
                .address("abc@example.com")
                .build())
            .thresholdExpression(AnomalySubscriptionThresholdExpressionArgs.builder()
                .dimension(AnomalySubscriptionThresholdExpressionDimensionArgs.builder()
                    .key("ANOMALY_TOTAL_IMPACT_ABSOLUTE")
                    .matchOptions("GREATER_THAN_OR_EQUAL")
                    .values("100")
                    .build())
                .build())
            .build());
    }
}
resources:
  test:
    type: aws:costexplorer:AnomalyMonitor
    properties:
      name: AWSServiceMonitor
      monitorType: DIMENSIONAL
      monitorDimension: SERVICE
  testAnomalySubscription:
    type: aws:costexplorer:AnomalySubscription
    name: test
    properties:
      name: DAILYSUBSCRIPTION
      frequency: DAILY
      monitorArnLists:
        - ${test.arn}
      subscribers:
        - type: EMAIL
          address: abc@example.com
      thresholdExpression:
        dimension:
          key: ANOMALY_TOTAL_IMPACT_ABSOLUTE
          matchOptions:
            - GREATER_THAN_OR_EQUAL
          values:
            - '100'
Threshold Expression Example
Using a Percentage Threshold
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.costexplorer.AnomalySubscription("test", {
    name: "AWSServiceMonitor",
    frequency: "DAILY",
    monitorArnLists: [testAwsCeAnomalyMonitor.arn],
    subscribers: [{
        type: "EMAIL",
        address: "abc@example.com",
    }],
    thresholdExpression: {
        dimension: {
            key: "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
            matchOptions: ["GREATER_THAN_OR_EQUAL"],
            values: ["100"],
        },
    },
});
import pulumi
import pulumi_aws as aws
test = aws.costexplorer.AnomalySubscription("test",
    name="AWSServiceMonitor",
    frequency="DAILY",
    monitor_arn_lists=[test_aws_ce_anomaly_monitor["arn"]],
    subscribers=[{
        "type": "EMAIL",
        "address": "abc@example.com",
    }],
    threshold_expression={
        "dimension": {
            "key": "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
            "matchOptions": ["GREATER_THAN_OR_EQUAL"],
            "values": ["100"],
        },
    })
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/costexplorer"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := costexplorer.NewAnomalySubscription(ctx, "test", &costexplorer.AnomalySubscriptionArgs{
			Name:      pulumi.String("AWSServiceMonitor"),
			Frequency: pulumi.String("DAILY"),
			MonitorArnLists: pulumi.StringArray{
				testAwsCeAnomalyMonitor.Arn,
			},
			Subscribers: costexplorer.AnomalySubscriptionSubscriberArray{
				&costexplorer.AnomalySubscriptionSubscriberArgs{
					Type:    pulumi.String("EMAIL"),
					Address: pulumi.String("abc@example.com"),
				},
			},
			ThresholdExpression: &costexplorer.AnomalySubscriptionThresholdExpressionArgs{
				Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionDimensionArgs{
					Key: pulumi.String("ANOMALY_TOTAL_IMPACT_PERCENTAGE"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("GREATER_THAN_OR_EQUAL"),
					},
					Values: pulumi.StringArray{
						pulumi.String("100"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var test = new Aws.CostExplorer.AnomalySubscription("test", new()
    {
        Name = "AWSServiceMonitor",
        Frequency = "DAILY",
        MonitorArnLists = new[]
        {
            testAwsCeAnomalyMonitor.Arn,
        },
        Subscribers = new[]
        {
            new Aws.CostExplorer.Inputs.AnomalySubscriptionSubscriberArgs
            {
                Type = "EMAIL",
                Address = "abc@example.com",
            },
        },
        ThresholdExpression = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionArgs
        {
            Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionDimensionArgs
            {
                Key = "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
                MatchOptions = new[]
                {
                    "GREATER_THAN_OR_EQUAL",
                },
                Values = new[]
                {
                    "100",
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.costexplorer.AnomalySubscription;
import com.pulumi.aws.costexplorer.AnomalySubscriptionArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionSubscriberArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionThresholdExpressionArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionThresholdExpressionDimensionArgs;
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 test = new AnomalySubscription("test", AnomalySubscriptionArgs.builder()
            .name("AWSServiceMonitor")
            .frequency("DAILY")
            .monitorArnLists(testAwsCeAnomalyMonitor.arn())
            .subscribers(AnomalySubscriptionSubscriberArgs.builder()
                .type("EMAIL")
                .address("abc@example.com")
                .build())
            .thresholdExpression(AnomalySubscriptionThresholdExpressionArgs.builder()
                .dimension(AnomalySubscriptionThresholdExpressionDimensionArgs.builder()
                    .key("ANOMALY_TOTAL_IMPACT_PERCENTAGE")
                    .matchOptions("GREATER_THAN_OR_EQUAL")
                    .values("100")
                    .build())
                .build())
            .build());
    }
}
resources:
  test:
    type: aws:costexplorer:AnomalySubscription
    properties:
      name: AWSServiceMonitor
      frequency: DAILY
      monitorArnLists:
        - ${testAwsCeAnomalyMonitor.arn}
      subscribers:
        - type: EMAIL
          address: abc@example.com
      thresholdExpression:
        dimension:
          key: ANOMALY_TOTAL_IMPACT_PERCENTAGE
          matchOptions:
            - GREATER_THAN_OR_EQUAL
          values:
            - '100'
Using an and Expression
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.costexplorer.AnomalySubscription("test", {
    name: "AWSServiceMonitor",
    frequency: "DAILY",
    monitorArnLists: [testAwsCeAnomalyMonitor.arn],
    subscribers: [{
        type: "EMAIL",
        address: "abc@example.com",
    }],
    thresholdExpression: {
        ands: [
            {
                dimension: {
                    key: "ANOMALY_TOTAL_IMPACT_ABSOLUTE",
                    matchOptions: ["GREATER_THAN_OR_EQUAL"],
                    values: ["100"],
                },
            },
            {
                dimension: {
                    key: "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
                    matchOptions: ["GREATER_THAN_OR_EQUAL"],
                    values: ["50"],
                },
            },
        ],
    },
});
import pulumi
import pulumi_aws as aws
test = aws.costexplorer.AnomalySubscription("test",
    name="AWSServiceMonitor",
    frequency="DAILY",
    monitor_arn_lists=[test_aws_ce_anomaly_monitor["arn"]],
    subscribers=[{
        "type": "EMAIL",
        "address": "abc@example.com",
    }],
    threshold_expression={
        "ands": [
            {
                "dimension": {
                    "key": "ANOMALY_TOTAL_IMPACT_ABSOLUTE",
                    "matchOptions": ["GREATER_THAN_OR_EQUAL"],
                    "values": ["100"],
                },
            },
            {
                "dimension": {
                    "key": "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
                    "matchOptions": ["GREATER_THAN_OR_EQUAL"],
                    "values": ["50"],
                },
            },
        ],
    })
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/costexplorer"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := costexplorer.NewAnomalySubscription(ctx, "test", &costexplorer.AnomalySubscriptionArgs{
			Name:      pulumi.String("AWSServiceMonitor"),
			Frequency: pulumi.String("DAILY"),
			MonitorArnLists: pulumi.StringArray{
				testAwsCeAnomalyMonitor.Arn,
			},
			Subscribers: costexplorer.AnomalySubscriptionSubscriberArray{
				&costexplorer.AnomalySubscriptionSubscriberArgs{
					Type:    pulumi.String("EMAIL"),
					Address: pulumi.String("abc@example.com"),
				},
			},
			ThresholdExpression: &costexplorer.AnomalySubscriptionThresholdExpressionArgs{
				Ands: costexplorer.AnomalySubscriptionThresholdExpressionAndArray{
					&costexplorer.AnomalySubscriptionThresholdExpressionAndArgs{
						Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionAndDimensionArgs{
							Key: pulumi.String("ANOMALY_TOTAL_IMPACT_ABSOLUTE"),
							MatchOptions: pulumi.StringArray{
								pulumi.String("GREATER_THAN_OR_EQUAL"),
							},
							Values: pulumi.StringArray{
								pulumi.String("100"),
							},
						},
					},
					&costexplorer.AnomalySubscriptionThresholdExpressionAndArgs{
						Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionAndDimensionArgs{
							Key: pulumi.String("ANOMALY_TOTAL_IMPACT_PERCENTAGE"),
							MatchOptions: pulumi.StringArray{
								pulumi.String("GREATER_THAN_OR_EQUAL"),
							},
							Values: pulumi.StringArray{
								pulumi.String("50"),
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var test = new Aws.CostExplorer.AnomalySubscription("test", new()
    {
        Name = "AWSServiceMonitor",
        Frequency = "DAILY",
        MonitorArnLists = new[]
        {
            testAwsCeAnomalyMonitor.Arn,
        },
        Subscribers = new[]
        {
            new Aws.CostExplorer.Inputs.AnomalySubscriptionSubscriberArgs
            {
                Type = "EMAIL",
                Address = "abc@example.com",
            },
        },
        ThresholdExpression = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionArgs
        {
            Ands = new[]
            {
                new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndArgs
                {
                    Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndDimensionArgs
                    {
                        Key = "ANOMALY_TOTAL_IMPACT_ABSOLUTE",
                        MatchOptions = new[]
                        {
                            "GREATER_THAN_OR_EQUAL",
                        },
                        Values = new[]
                        {
                            "100",
                        },
                    },
                },
                new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndArgs
                {
                    Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndDimensionArgs
                    {
                        Key = "ANOMALY_TOTAL_IMPACT_PERCENTAGE",
                        MatchOptions = new[]
                        {
                            "GREATER_THAN_OR_EQUAL",
                        },
                        Values = new[]
                        {
                            "50",
                        },
                    },
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.costexplorer.AnomalySubscription;
import com.pulumi.aws.costexplorer.AnomalySubscriptionArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionSubscriberArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionThresholdExpressionArgs;
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 test = new AnomalySubscription("test", AnomalySubscriptionArgs.builder()
            .name("AWSServiceMonitor")
            .frequency("DAILY")
            .monitorArnLists(testAwsCeAnomalyMonitor.arn())
            .subscribers(AnomalySubscriptionSubscriberArgs.builder()
                .type("EMAIL")
                .address("abc@example.com")
                .build())
            .thresholdExpression(AnomalySubscriptionThresholdExpressionArgs.builder()
                .ands(                
                    AnomalySubscriptionThresholdExpressionAndArgs.builder()
                        .dimension(AnomalySubscriptionThresholdExpressionAndDimensionArgs.builder()
                            .key("ANOMALY_TOTAL_IMPACT_ABSOLUTE")
                            .matchOptions("GREATER_THAN_OR_EQUAL")
                            .values("100")
                            .build())
                        .build(),
                    AnomalySubscriptionThresholdExpressionAndArgs.builder()
                        .dimension(AnomalySubscriptionThresholdExpressionAndDimensionArgs.builder()
                            .key("ANOMALY_TOTAL_IMPACT_PERCENTAGE")
                            .matchOptions("GREATER_THAN_OR_EQUAL")
                            .values("50")
                            .build())
                        .build())
                .build())
            .build());
    }
}
resources:
  test:
    type: aws:costexplorer:AnomalySubscription
    properties:
      name: AWSServiceMonitor
      frequency: DAILY
      monitorArnLists:
        - ${testAwsCeAnomalyMonitor.arn}
      subscribers:
        - type: EMAIL
          address: abc@example.com
      thresholdExpression:
        ands:
          - dimension:
              key: ANOMALY_TOTAL_IMPACT_ABSOLUTE
              matchOptions:
                - GREATER_THAN_OR_EQUAL
              values:
                - '100'
          - dimension:
              key: ANOMALY_TOTAL_IMPACT_PERCENTAGE
              matchOptions:
                - GREATER_THAN_OR_EQUAL
              values:
                - '50'
SNS Example
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const costAnomalyUpdates = new aws.sns.Topic("cost_anomaly_updates", {name: "CostAnomalyUpdates"});
const snsTopicPolicy = pulumi.all([costAnomalyUpdates.arn, costAnomalyUpdates.arn]).apply(([costAnomalyUpdatesArn, costAnomalyUpdatesArn1]) => aws.iam.getPolicyDocumentOutput({
    policyId: "__default_policy_ID",
    statements: [
        {
            sid: "AWSAnomalyDetectionSNSPublishingPermissions",
            actions: ["SNS:Publish"],
            effect: "Allow",
            principals: [{
                type: "Service",
                identifiers: ["costalerts.amazonaws.com"],
            }],
            resources: [costAnomalyUpdatesArn],
        },
        {
            sid: "__default_statement_ID",
            actions: [
                "SNS:Subscribe",
                "SNS:SetTopicAttributes",
                "SNS:RemovePermission",
                "SNS:Receive",
                "SNS:Publish",
                "SNS:ListSubscriptionsByTopic",
                "SNS:GetTopicAttributes",
                "SNS:DeleteTopic",
                "SNS:AddPermission",
            ],
            conditions: [{
                test: "StringEquals",
                variable: "AWS:SourceOwner",
                values: [accountId],
            }],
            effect: "Allow",
            principals: [{
                type: "AWS",
                identifiers: ["*"],
            }],
            resources: [costAnomalyUpdatesArn1],
        },
    ],
}));
const _default = new aws.sns.TopicPolicy("default", {
    arn: costAnomalyUpdates.arn,
    policy: snsTopicPolicy.apply(snsTopicPolicy => snsTopicPolicy.json),
});
const anomalyMonitor = new aws.costexplorer.AnomalyMonitor("anomaly_monitor", {
    name: "AWSServiceMonitor",
    monitorType: "DIMENSIONAL",
    monitorDimension: "SERVICE",
});
const realtimeSubscription = new aws.costexplorer.AnomalySubscription("realtime_subscription", {
    name: "RealtimeAnomalySubscription",
    frequency: "IMMEDIATE",
    monitorArnLists: [anomalyMonitor.arn],
    subscribers: [{
        type: "SNS",
        address: costAnomalyUpdates.arn,
    }],
}, {
    dependsOn: [_default],
});
import pulumi
import pulumi_aws as aws
cost_anomaly_updates = aws.sns.Topic("cost_anomaly_updates", name="CostAnomalyUpdates")
sns_topic_policy = pulumi.Output.all(cost_anomaly_updates.arn, cost_anomaly_updates.arn).apply(lambda costAnomalyUpdatesArn, costAnomalyUpdatesArn1: aws.iam.get_policy_document_output(policy_id="__default_policy_ID",
    statements=[
        {
            "sid": "AWSAnomalyDetectionSNSPublishingPermissions",
            "actions": ["SNS:Publish"],
            "effect": "Allow",
            "principals": [{
                "type": "Service",
                "identifiers": ["costalerts.amazonaws.com"],
            }],
            "resources": [cost_anomaly_updates_arn],
        },
        {
            "sid": "__default_statement_ID",
            "actions": [
                "SNS:Subscribe",
                "SNS:SetTopicAttributes",
                "SNS:RemovePermission",
                "SNS:Receive",
                "SNS:Publish",
                "SNS:ListSubscriptionsByTopic",
                "SNS:GetTopicAttributes",
                "SNS:DeleteTopic",
                "SNS:AddPermission",
            ],
            "conditions": [{
                "test": "StringEquals",
                "variable": "AWS:SourceOwner",
                "values": [account_id],
            }],
            "effect": "Allow",
            "principals": [{
                "type": "AWS",
                "identifiers": ["*"],
            }],
            "resources": [cost_anomaly_updates_arn1],
        },
    ]))
default = aws.sns.TopicPolicy("default",
    arn=cost_anomaly_updates.arn,
    policy=sns_topic_policy.json)
anomaly_monitor = aws.costexplorer.AnomalyMonitor("anomaly_monitor",
    name="AWSServiceMonitor",
    monitor_type="DIMENSIONAL",
    monitor_dimension="SERVICE")
realtime_subscription = aws.costexplorer.AnomalySubscription("realtime_subscription",
    name="RealtimeAnomalySubscription",
    frequency="IMMEDIATE",
    monitor_arn_lists=[anomaly_monitor.arn],
    subscribers=[{
        "type": "SNS",
        "address": cost_anomaly_updates.arn,
    }],
    opts = pulumi.ResourceOptions(depends_on=[default]))
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/costexplorer"
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
	"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 {
costAnomalyUpdates, err := sns.NewTopic(ctx, "cost_anomaly_updates", &sns.TopicArgs{
Name: pulumi.String("CostAnomalyUpdates"),
})
if err != nil {
return err
}
snsTopicPolicy := pulumi.All(costAnomalyUpdates.Arn,costAnomalyUpdates.Arn).ApplyT(func(_args []interface{}) (iam.GetPolicyDocumentResult, error) {
costAnomalyUpdatesArn := _args[0].(string)
costAnomalyUpdatesArn1 := _args[1].(string)
return iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{
PolicyId: "__default_policy_ID",
Statements: []iam.GetPolicyDocumentStatement{
{
Sid: "AWSAnomalyDetectionSNSPublishingPermissions",
Actions: []string{
"SNS:Publish",
},
Effect: "Allow",
Principals: []iam.GetPolicyDocumentStatementPrincipal{
{
Type: "Service",
Identifiers: []string{
"costalerts.amazonaws.com",
},
},
},
Resources: interface{}{
costAnomalyUpdatesArn,
},
},
{
Sid: "__default_statement_ID",
Actions: []string{
"SNS:Subscribe",
"SNS:SetTopicAttributes",
"SNS:RemovePermission",
"SNS:Receive",
"SNS:Publish",
"SNS:ListSubscriptionsByTopic",
"SNS:GetTopicAttributes",
"SNS:DeleteTopic",
"SNS:AddPermission",
},
Conditions: []iam.GetPolicyDocumentStatementCondition{
{
Test: "StringEquals",
Variable: "AWS:SourceOwner",
Values: interface{}{
accountId,
},
},
},
Effect: "Allow",
Principals: []iam.GetPolicyDocumentStatementPrincipal{
{
Type: "AWS",
Identifiers: []string{
"*",
},
},
},
Resources: interface{}{
costAnomalyUpdatesArn1,
},
},
},
}, nil), nil
}).(iam.GetPolicyDocumentResultOutput)
_, err = sns.NewTopicPolicy(ctx, "default", &sns.TopicPolicyArgs{
Arn: costAnomalyUpdates.Arn,
Policy: snsTopicPolicy.ApplyT(func(snsTopicPolicy iam.GetPolicyDocumentResult) (*string, error) {
return &snsTopicPolicy.Json, nil
}).(pulumi.StringPtrOutput),
})
if err != nil {
return err
}
anomalyMonitor, err := costexplorer.NewAnomalyMonitor(ctx, "anomaly_monitor", &costexplorer.AnomalyMonitorArgs{
Name: pulumi.String("AWSServiceMonitor"),
MonitorType: pulumi.String("DIMENSIONAL"),
MonitorDimension: pulumi.String("SERVICE"),
})
if err != nil {
return err
}
_, err = costexplorer.NewAnomalySubscription(ctx, "realtime_subscription", &costexplorer.AnomalySubscriptionArgs{
Name: pulumi.String("RealtimeAnomalySubscription"),
Frequency: pulumi.String("IMMEDIATE"),
MonitorArnLists: pulumi.StringArray{
anomalyMonitor.Arn,
},
Subscribers: costexplorer.AnomalySubscriptionSubscriberArray{
&costexplorer.AnomalySubscriptionSubscriberArgs{
Type: pulumi.String("SNS"),
Address: costAnomalyUpdates.Arn,
},
},
}, pulumi.DependsOn([]pulumi.Resource{
_default,
}))
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var costAnomalyUpdates = new Aws.Sns.Topic("cost_anomaly_updates", new()
    {
        Name = "CostAnomalyUpdates",
    });
    var snsTopicPolicy = Aws.Iam.GetPolicyDocument.Invoke(new()
    {
        PolicyId = "__default_policy_ID",
        Statements = new[]
        {
            new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
            {
                Sid = "AWSAnomalyDetectionSNSPublishingPermissions",
                Actions = new[]
                {
                    "SNS:Publish",
                },
                Effect = "Allow",
                Principals = new[]
                {
                    new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs
                    {
                        Type = "Service",
                        Identifiers = new[]
                        {
                            "costalerts.amazonaws.com",
                        },
                    },
                },
                Resources = new[]
                {
                    costAnomalyUpdates.Arn,
                },
            },
            new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
            {
                Sid = "__default_statement_ID",
                Actions = new[]
                {
                    "SNS:Subscribe",
                    "SNS:SetTopicAttributes",
                    "SNS:RemovePermission",
                    "SNS:Receive",
                    "SNS:Publish",
                    "SNS:ListSubscriptionsByTopic",
                    "SNS:GetTopicAttributes",
                    "SNS:DeleteTopic",
                    "SNS:AddPermission",
                },
                Conditions = new[]
                {
                    new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionInputArgs
                    {
                        Test = "StringEquals",
                        Variable = "AWS:SourceOwner",
                        Values = new[]
                        {
                            accountId,
                        },
                    },
                },
                Effect = "Allow",
                Principals = new[]
                {
                    new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs
                    {
                        Type = "AWS",
                        Identifiers = new[]
                        {
                            "*",
                        },
                    },
                },
                Resources = new[]
                {
                    costAnomalyUpdates.Arn,
                },
            },
        },
    });
    var @default = new Aws.Sns.TopicPolicy("default", new()
    {
        Arn = costAnomalyUpdates.Arn,
        Policy = snsTopicPolicy.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
    });
    var anomalyMonitor = new Aws.CostExplorer.AnomalyMonitor("anomaly_monitor", new()
    {
        Name = "AWSServiceMonitor",
        MonitorType = "DIMENSIONAL",
        MonitorDimension = "SERVICE",
    });
    var realtimeSubscription = new Aws.CostExplorer.AnomalySubscription("realtime_subscription", new()
    {
        Name = "RealtimeAnomalySubscription",
        Frequency = "IMMEDIATE",
        MonitorArnLists = new[]
        {
            anomalyMonitor.Arn,
        },
        Subscribers = new[]
        {
            new Aws.CostExplorer.Inputs.AnomalySubscriptionSubscriberArgs
            {
                Type = "SNS",
                Address = costAnomalyUpdates.Arn,
            },
        },
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            @default,
        },
    });
});
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.iam.IamFunctions;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
import com.pulumi.aws.sns.TopicPolicy;
import com.pulumi.aws.sns.TopicPolicyArgs;
import com.pulumi.aws.costexplorer.AnomalyMonitor;
import com.pulumi.aws.costexplorer.AnomalyMonitorArgs;
import com.pulumi.aws.costexplorer.AnomalySubscription;
import com.pulumi.aws.costexplorer.AnomalySubscriptionArgs;
import com.pulumi.aws.costexplorer.inputs.AnomalySubscriptionSubscriberArgs;
import com.pulumi.resources.CustomResourceOptions;
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 costAnomalyUpdates = new Topic("costAnomalyUpdates", TopicArgs.builder()
            .name("CostAnomalyUpdates")
            .build());
        final var snsTopicPolicy = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
            .policyId("__default_policy_ID")
            .statements(            
                GetPolicyDocumentStatementArgs.builder()
                    .sid("AWSAnomalyDetectionSNSPublishingPermissions")
                    .actions("SNS:Publish")
                    .effect("Allow")
                    .principals(GetPolicyDocumentStatementPrincipalArgs.builder()
                        .type("Service")
                        .identifiers("costalerts.amazonaws.com")
                        .build())
                    .resources(costAnomalyUpdates.arn())
                    .build(),
                GetPolicyDocumentStatementArgs.builder()
                    .sid("__default_statement_ID")
                    .actions(                    
                        "SNS:Subscribe",
                        "SNS:SetTopicAttributes",
                        "SNS:RemovePermission",
                        "SNS:Receive",
                        "SNS:Publish",
                        "SNS:ListSubscriptionsByTopic",
                        "SNS:GetTopicAttributes",
                        "SNS:DeleteTopic",
                        "SNS:AddPermission")
                    .conditions(GetPolicyDocumentStatementConditionArgs.builder()
                        .test("StringEquals")
                        .variable("AWS:SourceOwner")
                        .values(accountId)
                        .build())
                    .effect("Allow")
                    .principals(GetPolicyDocumentStatementPrincipalArgs.builder()
                        .type("AWS")
                        .identifiers("*")
                        .build())
                    .resources(costAnomalyUpdates.arn())
                    .build())
            .build());
        var default_ = new TopicPolicy("default", TopicPolicyArgs.builder()
            .arn(costAnomalyUpdates.arn())
            .policy(snsTopicPolicy.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult).applyValue(snsTopicPolicy -> snsTopicPolicy.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json())))
            .build());
        var anomalyMonitor = new AnomalyMonitor("anomalyMonitor", AnomalyMonitorArgs.builder()
            .name("AWSServiceMonitor")
            .monitorType("DIMENSIONAL")
            .monitorDimension("SERVICE")
            .build());
        var realtimeSubscription = new AnomalySubscription("realtimeSubscription", AnomalySubscriptionArgs.builder()
            .name("RealtimeAnomalySubscription")
            .frequency("IMMEDIATE")
            .monitorArnLists(anomalyMonitor.arn())
            .subscribers(AnomalySubscriptionSubscriberArgs.builder()
                .type("SNS")
                .address(costAnomalyUpdates.arn())
                .build())
            .build(), CustomResourceOptions.builder()
                .dependsOn(default_)
                .build());
    }
}
resources:
  costAnomalyUpdates:
    type: aws:sns:Topic
    name: cost_anomaly_updates
    properties:
      name: CostAnomalyUpdates
  default:
    type: aws:sns:TopicPolicy
    properties:
      arn: ${costAnomalyUpdates.arn}
      policy: ${snsTopicPolicy.json}
  anomalyMonitor:
    type: aws:costexplorer:AnomalyMonitor
    name: anomaly_monitor
    properties:
      name: AWSServiceMonitor
      monitorType: DIMENSIONAL
      monitorDimension: SERVICE
  realtimeSubscription:
    type: aws:costexplorer:AnomalySubscription
    name: realtime_subscription
    properties:
      name: RealtimeAnomalySubscription
      frequency: IMMEDIATE
      monitorArnLists:
        - ${anomalyMonitor.arn}
      subscribers:
        - type: SNS
          address: ${costAnomalyUpdates.arn}
    options:
      dependson:
        - ${default}
variables:
  snsTopicPolicy:
    fn::invoke:
      Function: aws:iam:getPolicyDocument
      Arguments:
        policyId: __default_policy_ID
        statements:
          - sid: AWSAnomalyDetectionSNSPublishingPermissions
            actions:
              - SNS:Publish
            effect: Allow
            principals:
              - type: Service
                identifiers:
                  - costalerts.amazonaws.com
            resources:
              - ${costAnomalyUpdates.arn}
          - sid: __default_statement_ID
            actions:
              - SNS:Subscribe
              - SNS:SetTopicAttributes
              - SNS:RemovePermission
              - SNS:Receive
              - SNS:Publish
              - SNS:ListSubscriptionsByTopic
              - SNS:GetTopicAttributes
              - SNS:DeleteTopic
              - SNS:AddPermission
            conditions:
              - test: StringEquals
                variable: AWS:SourceOwner
                values:
                  - ${accountId}
            effect: Allow
            principals:
              - type: AWS
                identifiers:
                  - '*'
            resources:
              - ${costAnomalyUpdates.arn}
Create AnomalySubscription Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new AnomalySubscription(name: string, args: AnomalySubscriptionArgs, opts?: CustomResourceOptions);@overload
def AnomalySubscription(resource_name: str,
                        args: AnomalySubscriptionArgs,
                        opts: Optional[ResourceOptions] = None)
@overload
def AnomalySubscription(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        frequency: Optional[str] = None,
                        monitor_arn_lists: Optional[Sequence[str]] = None,
                        subscribers: Optional[Sequence[AnomalySubscriptionSubscriberArgs]] = None,
                        account_id: Optional[str] = None,
                        name: Optional[str] = None,
                        tags: Optional[Mapping[str, str]] = None,
                        threshold_expression: Optional[AnomalySubscriptionThresholdExpressionArgs] = None)func NewAnomalySubscription(ctx *Context, name string, args AnomalySubscriptionArgs, opts ...ResourceOption) (*AnomalySubscription, error)public AnomalySubscription(string name, AnomalySubscriptionArgs args, CustomResourceOptions? opts = null)
public AnomalySubscription(String name, AnomalySubscriptionArgs args)
public AnomalySubscription(String name, AnomalySubscriptionArgs args, CustomResourceOptions options)
type: aws:costexplorer:AnomalySubscription
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args AnomalySubscriptionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args AnomalySubscriptionArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args AnomalySubscriptionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args AnomalySubscriptionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args AnomalySubscriptionArgs
- 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 anomalySubscriptionResource = new Aws.CostExplorer.AnomalySubscription("anomalySubscriptionResource", new()
{
    Frequency = "string",
    MonitorArnLists = new[]
    {
        "string",
    },
    Subscribers = new[]
    {
        new Aws.CostExplorer.Inputs.AnomalySubscriptionSubscriberArgs
        {
            Address = "string",
            Type = "string",
        },
    },
    AccountId = "string",
    Name = "string",
    Tags = 
    {
        { "string", "string" },
    },
    ThresholdExpression = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionArgs
    {
        Ands = new[]
        {
            new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndArgs
            {
                CostCategory = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndCostCategoryArgs
                {
                    Key = "string",
                    MatchOptions = new[]
                    {
                        "string",
                    },
                    Values = new[]
                    {
                        "string",
                    },
                },
                Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndDimensionArgs
                {
                    Key = "string",
                    MatchOptions = new[]
                    {
                        "string",
                    },
                    Values = new[]
                    {
                        "string",
                    },
                },
                Tags = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionAndTagsArgs
                {
                    Key = "string",
                    MatchOptions = new[]
                    {
                        "string",
                    },
                    Values = new[]
                    {
                        "string",
                    },
                },
            },
        },
        CostCategory = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionCostCategoryArgs
        {
            Key = "string",
            MatchOptions = new[]
            {
                "string",
            },
            Values = new[]
            {
                "string",
            },
        },
        Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionDimensionArgs
        {
            Key = "string",
            MatchOptions = new[]
            {
                "string",
            },
            Values = new[]
            {
                "string",
            },
        },
        Not = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionNotArgs
        {
            CostCategory = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionNotCostCategoryArgs
            {
                Key = "string",
                MatchOptions = new[]
                {
                    "string",
                },
                Values = new[]
                {
                    "string",
                },
            },
            Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionNotDimensionArgs
            {
                Key = "string",
                MatchOptions = new[]
                {
                    "string",
                },
                Values = new[]
                {
                    "string",
                },
            },
            Tags = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionNotTagsArgs
            {
                Key = "string",
                MatchOptions = new[]
                {
                    "string",
                },
                Values = new[]
                {
                    "string",
                },
            },
        },
        Ors = new[]
        {
            new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionOrArgs
            {
                CostCategory = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionOrCostCategoryArgs
                {
                    Key = "string",
                    MatchOptions = new[]
                    {
                        "string",
                    },
                    Values = new[]
                    {
                        "string",
                    },
                },
                Dimension = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionOrDimensionArgs
                {
                    Key = "string",
                    MatchOptions = new[]
                    {
                        "string",
                    },
                    Values = new[]
                    {
                        "string",
                    },
                },
                Tags = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionOrTagsArgs
                {
                    Key = "string",
                    MatchOptions = new[]
                    {
                        "string",
                    },
                    Values = new[]
                    {
                        "string",
                    },
                },
            },
        },
        Tags = new Aws.CostExplorer.Inputs.AnomalySubscriptionThresholdExpressionTagsArgs
        {
            Key = "string",
            MatchOptions = new[]
            {
                "string",
            },
            Values = new[]
            {
                "string",
            },
        },
    },
});
example, err := costexplorer.NewAnomalySubscription(ctx, "anomalySubscriptionResource", &costexplorer.AnomalySubscriptionArgs{
	Frequency: pulumi.String("string"),
	MonitorArnLists: pulumi.StringArray{
		pulumi.String("string"),
	},
	Subscribers: costexplorer.AnomalySubscriptionSubscriberArray{
		&costexplorer.AnomalySubscriptionSubscriberArgs{
			Address: pulumi.String("string"),
			Type:    pulumi.String("string"),
		},
	},
	AccountId: pulumi.String("string"),
	Name:      pulumi.String("string"),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	ThresholdExpression: &costexplorer.AnomalySubscriptionThresholdExpressionArgs{
		Ands: costexplorer.AnomalySubscriptionThresholdExpressionAndArray{
			&costexplorer.AnomalySubscriptionThresholdExpressionAndArgs{
				CostCategory: &costexplorer.AnomalySubscriptionThresholdExpressionAndCostCategoryArgs{
					Key: pulumi.String("string"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("string"),
					},
					Values: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionAndDimensionArgs{
					Key: pulumi.String("string"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("string"),
					},
					Values: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				Tags: &costexplorer.AnomalySubscriptionThresholdExpressionAndTagsArgs{
					Key: pulumi.String("string"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("string"),
					},
					Values: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
			},
		},
		CostCategory: &costexplorer.AnomalySubscriptionThresholdExpressionCostCategoryArgs{
			Key: pulumi.String("string"),
			MatchOptions: pulumi.StringArray{
				pulumi.String("string"),
			},
			Values: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
		Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionDimensionArgs{
			Key: pulumi.String("string"),
			MatchOptions: pulumi.StringArray{
				pulumi.String("string"),
			},
			Values: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
		Not: &costexplorer.AnomalySubscriptionThresholdExpressionNotArgs{
			CostCategory: &costexplorer.AnomalySubscriptionThresholdExpressionNotCostCategoryArgs{
				Key: pulumi.String("string"),
				MatchOptions: pulumi.StringArray{
					pulumi.String("string"),
				},
				Values: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionNotDimensionArgs{
				Key: pulumi.String("string"),
				MatchOptions: pulumi.StringArray{
					pulumi.String("string"),
				},
				Values: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			Tags: &costexplorer.AnomalySubscriptionThresholdExpressionNotTagsArgs{
				Key: pulumi.String("string"),
				MatchOptions: pulumi.StringArray{
					pulumi.String("string"),
				},
				Values: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
		},
		Ors: costexplorer.AnomalySubscriptionThresholdExpressionOrArray{
			&costexplorer.AnomalySubscriptionThresholdExpressionOrArgs{
				CostCategory: &costexplorer.AnomalySubscriptionThresholdExpressionOrCostCategoryArgs{
					Key: pulumi.String("string"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("string"),
					},
					Values: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				Dimension: &costexplorer.AnomalySubscriptionThresholdExpressionOrDimensionArgs{
					Key: pulumi.String("string"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("string"),
					},
					Values: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				Tags: &costexplorer.AnomalySubscriptionThresholdExpressionOrTagsArgs{
					Key: pulumi.String("string"),
					MatchOptions: pulumi.StringArray{
						pulumi.String("string"),
					},
					Values: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
			},
		},
		Tags: &costexplorer.AnomalySubscriptionThresholdExpressionTagsArgs{
			Key: pulumi.String("string"),
			MatchOptions: pulumi.StringArray{
				pulumi.String("string"),
			},
			Values: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
	},
})
var anomalySubscriptionResource = new AnomalySubscription("anomalySubscriptionResource", AnomalySubscriptionArgs.builder()
    .frequency("string")
    .monitorArnLists("string")
    .subscribers(AnomalySubscriptionSubscriberArgs.builder()
        .address("string")
        .type("string")
        .build())
    .accountId("string")
    .name("string")
    .tags(Map.of("string", "string"))
    .thresholdExpression(AnomalySubscriptionThresholdExpressionArgs.builder()
        .ands(AnomalySubscriptionThresholdExpressionAndArgs.builder()
            .costCategory(AnomalySubscriptionThresholdExpressionAndCostCategoryArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .dimension(AnomalySubscriptionThresholdExpressionAndDimensionArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .tags(AnomalySubscriptionThresholdExpressionAndTagsArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .build())
        .costCategory(AnomalySubscriptionThresholdExpressionCostCategoryArgs.builder()
            .key("string")
            .matchOptions("string")
            .values("string")
            .build())
        .dimension(AnomalySubscriptionThresholdExpressionDimensionArgs.builder()
            .key("string")
            .matchOptions("string")
            .values("string")
            .build())
        .not(AnomalySubscriptionThresholdExpressionNotArgs.builder()
            .costCategory(AnomalySubscriptionThresholdExpressionNotCostCategoryArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .dimension(AnomalySubscriptionThresholdExpressionNotDimensionArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .tags(AnomalySubscriptionThresholdExpressionNotTagsArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .build())
        .ors(AnomalySubscriptionThresholdExpressionOrArgs.builder()
            .costCategory(AnomalySubscriptionThresholdExpressionOrCostCategoryArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .dimension(AnomalySubscriptionThresholdExpressionOrDimensionArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .tags(AnomalySubscriptionThresholdExpressionOrTagsArgs.builder()
                .key("string")
                .matchOptions("string")
                .values("string")
                .build())
            .build())
        .tags(AnomalySubscriptionThresholdExpressionTagsArgs.builder()
            .key("string")
            .matchOptions("string")
            .values("string")
            .build())
        .build())
    .build());
anomaly_subscription_resource = aws.costexplorer.AnomalySubscription("anomalySubscriptionResource",
    frequency="string",
    monitor_arn_lists=["string"],
    subscribers=[{
        "address": "string",
        "type": "string",
    }],
    account_id="string",
    name="string",
    tags={
        "string": "string",
    },
    threshold_expression={
        "ands": [{
            "costCategory": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
            "dimension": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
            "tags": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
        }],
        "costCategory": {
            "key": "string",
            "matchOptions": ["string"],
            "values": ["string"],
        },
        "dimension": {
            "key": "string",
            "matchOptions": ["string"],
            "values": ["string"],
        },
        "not": {
            "costCategory": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
            "dimension": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
            "tags": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
        },
        "ors": [{
            "costCategory": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
            "dimension": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
            "tags": {
                "key": "string",
                "matchOptions": ["string"],
                "values": ["string"],
            },
        }],
        "tags": {
            "key": "string",
            "matchOptions": ["string"],
            "values": ["string"],
        },
    })
const anomalySubscriptionResource = new aws.costexplorer.AnomalySubscription("anomalySubscriptionResource", {
    frequency: "string",
    monitorArnLists: ["string"],
    subscribers: [{
        address: "string",
        type: "string",
    }],
    accountId: "string",
    name: "string",
    tags: {
        string: "string",
    },
    thresholdExpression: {
        ands: [{
            costCategory: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
            dimension: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
            tags: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
        }],
        costCategory: {
            key: "string",
            matchOptions: ["string"],
            values: ["string"],
        },
        dimension: {
            key: "string",
            matchOptions: ["string"],
            values: ["string"],
        },
        not: {
            costCategory: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
            dimension: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
            tags: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
        },
        ors: [{
            costCategory: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
            dimension: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
            tags: {
                key: "string",
                matchOptions: ["string"],
                values: ["string"],
            },
        }],
        tags: {
            key: "string",
            matchOptions: ["string"],
            values: ["string"],
        },
    },
});
type: aws:costexplorer:AnomalySubscription
properties:
    accountId: string
    frequency: string
    monitorArnLists:
        - string
    name: string
    subscribers:
        - address: string
          type: string
    tags:
        string: string
    thresholdExpression:
        ands:
            - costCategory:
                key: string
                matchOptions:
                    - string
                values:
                    - string
              dimension:
                key: string
                matchOptions:
                    - string
                values:
                    - string
              tags:
                key: string
                matchOptions:
                    - string
                values:
                    - string
        costCategory:
            key: string
            matchOptions:
                - string
            values:
                - string
        dimension:
            key: string
            matchOptions:
                - string
            values:
                - string
        not:
            costCategory:
                key: string
                matchOptions:
                    - string
                values:
                    - string
            dimension:
                key: string
                matchOptions:
                    - string
                values:
                    - string
            tags:
                key: string
                matchOptions:
                    - string
                values:
                    - string
        ors:
            - costCategory:
                key: string
                matchOptions:
                    - string
                values:
                    - string
              dimension:
                key: string
                matchOptions:
                    - string
                values:
                    - string
              tags:
                key: string
                matchOptions:
                    - string
                values:
                    - string
        tags:
            key: string
            matchOptions:
                - string
            values:
                - string
AnomalySubscription Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The AnomalySubscription resource accepts the following input properties:
- Frequency string
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- MonitorArn List<string>Lists 
- A list of cost anomaly monitors.
- Subscribers
List<AnomalySubscription Subscriber> 
- A subscriber configuration. Multiple subscribers can be defined.
- AccountId string
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- Name string
- The name for the subscription.
- Dictionary<string, string>
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- ThresholdExpression AnomalySubscription Threshold Expression 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- Frequency string
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- MonitorArn []stringLists 
- A list of cost anomaly monitors.
- Subscribers
[]AnomalySubscription Subscriber Args 
- A subscriber configuration. Multiple subscribers can be defined.
- AccountId string
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- Name string
- The name for the subscription.
- map[string]string
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- ThresholdExpression AnomalySubscription Threshold Expression Args 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- frequency String
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitorArn List<String>Lists 
- A list of cost anomaly monitors.
- subscribers
List<AnomalySubscription Subscriber> 
- A subscriber configuration. Multiple subscribers can be defined.
- accountId String
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- name String
- The name for the subscription.
- Map<String,String>
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- thresholdExpression AnomalySubscription Threshold Expression 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- frequency string
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitorArn string[]Lists 
- A list of cost anomaly monitors.
- subscribers
AnomalySubscription Subscriber[] 
- A subscriber configuration. Multiple subscribers can be defined.
- accountId string
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- name string
- The name for the subscription.
- {[key: string]: string}
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- thresholdExpression AnomalySubscription Threshold Expression 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- frequency str
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitor_arn_ Sequence[str]lists 
- A list of cost anomaly monitors.
- subscribers
Sequence[AnomalySubscription Subscriber Args] 
- A subscriber configuration. Multiple subscribers can be defined.
- account_id str
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- name str
- The name for the subscription.
- Mapping[str, str]
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- threshold_expression AnomalySubscription Threshold Expression Args 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- frequency String
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitorArn List<String>Lists 
- A list of cost anomaly monitors.
- subscribers List<Property Map>
- A subscriber configuration. Multiple subscribers can be defined.
- accountId String
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- name String
- The name for the subscription.
- Map<String>
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- thresholdExpression Property Map
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
Outputs
All input properties are implicitly available as output properties. Additionally, the AnomalySubscription resource produces the following output properties:
Look up Existing AnomalySubscription Resource
Get an existing AnomalySubscription 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?: AnomalySubscriptionState, opts?: CustomResourceOptions): AnomalySubscription@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        account_id: Optional[str] = None,
        arn: Optional[str] = None,
        frequency: Optional[str] = None,
        monitor_arn_lists: Optional[Sequence[str]] = None,
        name: Optional[str] = None,
        subscribers: Optional[Sequence[AnomalySubscriptionSubscriberArgs]] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None,
        threshold_expression: Optional[AnomalySubscriptionThresholdExpressionArgs] = None) -> AnomalySubscriptionfunc GetAnomalySubscription(ctx *Context, name string, id IDInput, state *AnomalySubscriptionState, opts ...ResourceOption) (*AnomalySubscription, error)public static AnomalySubscription Get(string name, Input<string> id, AnomalySubscriptionState? state, CustomResourceOptions? opts = null)public static AnomalySubscription get(String name, Output<String> id, AnomalySubscriptionState state, CustomResourceOptions options)Resource lookup is not supported in YAML- name
- The unique name of the resulting resource.
- id
- 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
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- 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
- The unique name of the resulting resource.
- id
- 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
- The unique name of the resulting resource.
- id
- 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.
- AccountId string
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- Arn string
- ARN of the anomaly subscription.
- Frequency string
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- MonitorArn List<string>Lists 
- A list of cost anomaly monitors.
- Name string
- The name for the subscription.
- Subscribers
List<AnomalySubscription Subscriber> 
- A subscriber configuration. Multiple subscribers can be defined.
- Dictionary<string, string>
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Dictionary<string, string>
- A map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- ThresholdExpression AnomalySubscription Threshold Expression 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- AccountId string
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- Arn string
- ARN of the anomaly subscription.
- Frequency string
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- MonitorArn []stringLists 
- A list of cost anomaly monitors.
- Name string
- The name for the subscription.
- Subscribers
[]AnomalySubscription Subscriber Args 
- A subscriber configuration. Multiple subscribers can be defined.
- map[string]string
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- map[string]string
- A map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- ThresholdExpression AnomalySubscription Threshold Expression Args 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- accountId String
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- arn String
- ARN of the anomaly subscription.
- frequency String
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitorArn List<String>Lists 
- A list of cost anomaly monitors.
- name String
- The name for the subscription.
- subscribers
List<AnomalySubscription Subscriber> 
- A subscriber configuration. Multiple subscribers can be defined.
- Map<String,String>
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Map<String,String>
- A map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- thresholdExpression AnomalySubscription Threshold Expression 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- accountId string
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- arn string
- ARN of the anomaly subscription.
- frequency string
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitorArn string[]Lists 
- A list of cost anomaly monitors.
- name string
- The name for the subscription.
- subscribers
AnomalySubscription Subscriber[] 
- A subscriber configuration. Multiple subscribers can be defined.
- {[key: string]: string}
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- {[key: string]: string}
- A map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- thresholdExpression AnomalySubscription Threshold Expression 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- account_id str
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- arn str
- ARN of the anomaly subscription.
- frequency str
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitor_arn_ Sequence[str]lists 
- A list of cost anomaly monitors.
- name str
- The name for the subscription.
- subscribers
Sequence[AnomalySubscription Subscriber Args] 
- A subscriber configuration. Multiple subscribers can be defined.
- Mapping[str, str]
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Mapping[str, str]
- A map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- threshold_expression AnomalySubscription Threshold Expression Args 
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
- accountId String
- The unique identifier for the AWS account in which the anomaly subscription ought to be created.
- arn String
- ARN of the anomaly subscription.
- frequency String
- The frequency that anomaly reports are sent. Valid Values: DAILY|IMMEDIATE|WEEKLY.
- monitorArn List<String>Lists 
- A list of cost anomaly monitors.
- name String
- The name for the subscription.
- subscribers List<Property Map>
- A subscriber configuration. Multiple subscribers can be defined.
- Map<String>
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Map<String>
- A map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- thresholdExpression Property Map
- An Expression object used to specify the anomalies that you want to generate alerts for. See Threshold Expression.
Supporting Types
AnomalySubscriptionSubscriber, AnomalySubscriptionSubscriberArgs      
AnomalySubscriptionThresholdExpression, AnomalySubscriptionThresholdExpressionArgs        
- Ands
List<AnomalySubscription Threshold Expression And> 
- Return results that match both Dimension objects.
- CostCategory AnomalySubscription Threshold Expression Cost Category 
- Configuration block for the filter that's based on values. See Cost Category below.
- Dimension
AnomalySubscription Threshold Expression Dimension 
- Configuration block for the specific Dimension to use for.
- Not
AnomalySubscription Threshold Expression Not 
- Return results that match both Dimension object.
- Ors
List<AnomalySubscription Threshold Expression Or> 
- Return results that match both Dimension object.
- 
AnomalySubscription Threshold Expression Tags 
- Configuration block for the specific Tag to use for. See Tags below.
- Ands
[]AnomalySubscription Threshold Expression And 
- Return results that match both Dimension objects.
- CostCategory AnomalySubscription Threshold Expression Cost Category 
- Configuration block for the filter that's based on values. See Cost Category below.
- Dimension
AnomalySubscription Threshold Expression Dimension 
- Configuration block for the specific Dimension to use for.
- Not
AnomalySubscription Threshold Expression Not 
- Return results that match both Dimension object.
- Ors
[]AnomalySubscription Threshold Expression Or 
- Return results that match both Dimension object.
- 
AnomalySubscription Threshold Expression Tags 
- Configuration block for the specific Tag to use for. See Tags below.
- ands
List<AnomalySubscription Threshold Expression And> 
- Return results that match both Dimension objects.
- costCategory AnomalySubscription Threshold Expression Cost Category 
- Configuration block for the filter that's based on values. See Cost Category below.
- dimension
AnomalySubscription Threshold Expression Dimension 
- Configuration block for the specific Dimension to use for.
- not
AnomalySubscription Threshold Expression Not 
- Return results that match both Dimension object.
- ors
List<AnomalySubscription Threshold Expression Or> 
- Return results that match both Dimension object.
- 
AnomalySubscription Threshold Expression Tags 
- Configuration block for the specific Tag to use for. See Tags below.
- ands
AnomalySubscription Threshold Expression And[] 
- Return results that match both Dimension objects.
- costCategory AnomalySubscription Threshold Expression Cost Category 
- Configuration block for the filter that's based on values. See Cost Category below.
- dimension
AnomalySubscription Threshold Expression Dimension 
- Configuration block for the specific Dimension to use for.
- not
AnomalySubscription Threshold Expression Not 
- Return results that match both Dimension object.
- ors
AnomalySubscription Threshold Expression Or[] 
- Return results that match both Dimension object.
- 
AnomalySubscription Threshold Expression Tags 
- Configuration block for the specific Tag to use for. See Tags below.
- ands
Sequence[AnomalySubscription Threshold Expression And] 
- Return results that match both Dimension objects.
- cost_category AnomalySubscription Threshold Expression Cost Category 
- Configuration block for the filter that's based on values. See Cost Category below.
- dimension
AnomalySubscription Threshold Expression Dimension 
- Configuration block for the specific Dimension to use for.
- not_
AnomalySubscription Threshold Expression Not 
- Return results that match both Dimension object.
- ors
Sequence[AnomalySubscription Threshold Expression Or] 
- Return results that match both Dimension object.
- 
AnomalySubscription Threshold Expression Tags 
- Configuration block for the specific Tag to use for. See Tags below.
- ands List<Property Map>
- Return results that match both Dimension objects.
- costCategory Property Map
- Configuration block for the filter that's based on values. See Cost Category below.
- dimension Property Map
- Configuration block for the specific Dimension to use for.
- not Property Map
- Return results that match both Dimension object.
- ors List<Property Map>
- Return results that match both Dimension object.
- Property Map
- Configuration block for the specific Tag to use for. See Tags below.
AnomalySubscriptionThresholdExpressionAnd, AnomalySubscriptionThresholdExpressionAndArgs          
- CostCategory AnomalySubscription Threshold Expression And Cost Category 
- Dimension
AnomalySubscription Threshold Expression And Dimension 
- 
AnomalySubscription Threshold Expression And Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- CostCategory AnomalySubscription Threshold Expression And Cost Category 
- Dimension
AnomalySubscription Threshold Expression And Dimension 
- 
AnomalySubscription Threshold Expression And Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory AnomalySubscription Threshold Expression And Cost Category 
- dimension
AnomalySubscription Threshold Expression And Dimension 
- 
AnomalySubscription Threshold Expression And Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory AnomalySubscription Threshold Expression And Cost Category 
- dimension
AnomalySubscription Threshold Expression And Dimension 
- 
AnomalySubscription Threshold Expression And Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- cost_category AnomalySubscription Threshold Expression And Cost Category 
- dimension
AnomalySubscription Threshold Expression And Dimension 
- 
AnomalySubscription Threshold Expression And Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory Property Map
- dimension Property Map
- Property Map
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
AnomalySubscriptionThresholdExpressionAndCostCategory, AnomalySubscriptionThresholdExpressionAndCostCategoryArgs              
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionAndDimension, AnomalySubscriptionThresholdExpressionAndDimensionArgs            
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionAndTags, AnomalySubscriptionThresholdExpressionAndTagsArgs            
- Key string
- Key for the tag.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Key for the tag.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Key for the tag.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Key for the tag.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionCostCategory, AnomalySubscriptionThresholdExpressionCostCategoryArgs            
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionDimension, AnomalySubscriptionThresholdExpressionDimensionArgs          
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionNot, AnomalySubscriptionThresholdExpressionNotArgs          
- CostCategory AnomalySubscription Threshold Expression Not Cost Category 
- Dimension
AnomalySubscription Threshold Expression Not Dimension 
- 
AnomalySubscription Threshold Expression Not Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- CostCategory AnomalySubscription Threshold Expression Not Cost Category 
- Dimension
AnomalySubscription Threshold Expression Not Dimension 
- 
AnomalySubscription Threshold Expression Not Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory AnomalySubscription Threshold Expression Not Cost Category 
- dimension
AnomalySubscription Threshold Expression Not Dimension 
- 
AnomalySubscription Threshold Expression Not Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory AnomalySubscription Threshold Expression Not Cost Category 
- dimension
AnomalySubscription Threshold Expression Not Dimension 
- 
AnomalySubscription Threshold Expression Not Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- cost_category AnomalySubscription Threshold Expression Not Cost Category 
- dimension
AnomalySubscription Threshold Expression Not Dimension 
- 
AnomalySubscription Threshold Expression Not Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory Property Map
- dimension Property Map
- Property Map
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
AnomalySubscriptionThresholdExpressionNotCostCategory, AnomalySubscriptionThresholdExpressionNotCostCategoryArgs              
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionNotDimension, AnomalySubscriptionThresholdExpressionNotDimensionArgs            
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionNotTags, AnomalySubscriptionThresholdExpressionNotTagsArgs            
- Key string
- Key for the tag.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Key for the tag.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Key for the tag.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Key for the tag.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionOr, AnomalySubscriptionThresholdExpressionOrArgs          
- CostCategory AnomalySubscription Threshold Expression Or Cost Category 
- Dimension
AnomalySubscription Threshold Expression Or Dimension 
- 
AnomalySubscription Threshold Expression Or Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- CostCategory AnomalySubscription Threshold Expression Or Cost Category 
- Dimension
AnomalySubscription Threshold Expression Or Dimension 
- 
AnomalySubscription Threshold Expression Or Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory AnomalySubscription Threshold Expression Or Cost Category 
- dimension
AnomalySubscription Threshold Expression Or Dimension 
- 
AnomalySubscription Threshold Expression Or Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory AnomalySubscription Threshold Expression Or Cost Category 
- dimension
AnomalySubscription Threshold Expression Or Dimension 
- 
AnomalySubscription Threshold Expression Or Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- cost_category AnomalySubscription Threshold Expression Or Cost Category 
- dimension
AnomalySubscription Threshold Expression Or Dimension 
- 
AnomalySubscription Threshold Expression Or Tags 
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- costCategory Property Map
- dimension Property Map
- Property Map
- A map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
AnomalySubscriptionThresholdExpressionOrCostCategory, AnomalySubscriptionThresholdExpressionOrCostCategoryArgs              
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionOrDimension, AnomalySubscriptionThresholdExpressionOrDimensionArgs            
- Key string
- Unique name of the Cost Category.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Unique name of the Cost Category.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Unique name of the Cost Category.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Unique name of the Cost Category.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Unique name of the Cost Category.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionOrTags, AnomalySubscriptionThresholdExpressionOrTagsArgs            
- Key string
- Key for the tag.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Key for the tag.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Key for the tag.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Key for the tag.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
AnomalySubscriptionThresholdExpressionTags, AnomalySubscriptionThresholdExpressionTagsArgs          
- Key string
- Key for the tag.
- MatchOptions List<string>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values List<string>
- Specific value of the Cost Category.
- Key string
- Key for the tag.
- MatchOptions []string
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- Values []string
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
- key string
- Key for the tag.
- matchOptions string[]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values string[]
- Specific value of the Cost Category.
- key str
- Key for the tag.
- match_options Sequence[str]
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values Sequence[str]
- Specific value of the Cost Category.
- key String
- Key for the tag.
- matchOptions List<String>
- Match options that you can use to filter your results. MatchOptions is only applicable for actions related to cost category. The default values for MatchOptions is EQUALSandCASE_SENSITIVE. Valid values are:EQUALS,ABSENT,STARTS_WITH,ENDS_WITH,CONTAINS,CASE_SENSITIVE,CASE_INSENSITIVE.
- values List<String>
- Specific value of the Cost Category.
Import
Using pulumi import, import aws_ce_anomaly_subscription using the id. For example:
$ pulumi import aws:costexplorer/anomalySubscription:AnomalySubscription example AnomalySubscriptionARN
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 awsTerraform Provider.
Try AWS Native preview for resources not in the classic version.