package
6.71.0
Repository: https://github.com/pulumi/pulumi-aws.git
Documentation: pkg.go.dev

# Functions

GetDataProtectionPolicy gets an existing DataProtectionPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
GetPlatformApplication gets an existing PlatformApplication resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
GetSmsPreferences gets an existing SmsPreferences resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
GetTopic gets an existing Topic resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
GetTopicPolicy gets an existing TopicPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
GetTopicSubscription gets an existing TopicSubscription resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
Use this data source to get the ARN of a topic in AWS Simple Notification Service (SNS).
No description provided by the author
NewDataProtectionPolicy registers a new resource with the given unique name, arguments, and options.
NewPlatformApplication registers a new resource with the given unique name, arguments, and options.
NewSmsPreferences registers a new resource with the given unique name, arguments, and options.
NewTopic registers a new resource with the given unique name, arguments, and options.
NewTopicPolicy registers a new resource with the given unique name, arguments, and options.
NewTopicSubscription registers a new resource with the given unique name, arguments, and options.

# Structs

Provides an SNS data protection topic policy resource ## Example Usage ```go package main import ( "encoding/json" "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 { example, err := sns.NewTopic(ctx, "example", &sns.TopicArgs{ Name: pulumi.String("example"), }) if err != nil { return err } tmpJSON0, err := json.Marshal(map[string]interface{}{ "Description": "Example data protection policy", "Name": "__example_data_protection_policy", "Statement": []map[string]interface{}{ map[string]interface{}{ "DataDirection": "Inbound", "DataIdentifier": []string{ "arn:aws:dataprotection::aws:data-identifier/EmailAddress", }, "Operation": map[string]interface{}{ "Deny": map[string]interface{}{}, }, "Principal": []string{ "*", }, "Sid": "__deny_statement_11ba9d96", }, }, "Version": "2021-06-01", }) if err != nil { return err } json0 := string(tmpJSON0) _, err = sns.NewDataProtectionPolicy(ctx, "example", &sns.DataProtectionPolicyArgs{ Arn: example.Arn, Policy: pulumi.String(json0), }) if err != nil { return err } return nil }) } ``` ## Import Using `pulumi import`, import SNS Data Protection Topic Policy using the topic ARN.
The set of arguments for constructing a DataProtectionPolicy resource.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
A collection of arguments for invoking getTopic.
A collection of arguments for invoking getTopic.
A collection of values returned by getTopic.
A collection of values returned by getTopic.
Provides an SNS platform application resource ## Example Usage ### Apple Push Notification Service (APNS) using certificate-based authentication ```go package main import ( "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 { _, err := sns.NewPlatformApplication(ctx, "apns_application", &sns.PlatformApplicationArgs{ Name: pulumi.String("apns_application"), Platform: pulumi.String("APNS"), PlatformCredential: pulumi.String("<APNS PRIVATE KEY>"), PlatformPrincipal: pulumi.String("<APNS CERTIFICATE>"), }) if err != nil { return err } return nil }) } ``` ### Apple Push Notification Service (APNS) using token-based authentication ```go package main import ( "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 { _, err := sns.NewPlatformApplication(ctx, "apns_application", &sns.PlatformApplicationArgs{ Name: pulumi.String("apns_application"), Platform: pulumi.String("APNS"), PlatformCredential: pulumi.String("<APNS SIGNING KEY>"), PlatformPrincipal: pulumi.String("<APNS SIGNING KEY ID>"), ApplePlatformTeamId: pulumi.String("<APPLE TEAM ID>"), ApplePlatformBundleId: pulumi.String("<APPLE BUNDLE ID>"), }) if err != nil { return err } return nil }) } ``` ### Google Cloud Messaging (GCM) ```go package main import ( "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 { _, err := sns.NewPlatformApplication(ctx, "gcm_application", &sns.PlatformApplicationArgs{ Name: pulumi.String("gcm_application"), Platform: pulumi.String("GCM"), PlatformCredential: pulumi.String("<GCM API KEY>"), }) if err != nil { return err } return nil }) } ``` ## Import Using `pulumi import`, import SNS platform applications using the ARN.
The set of arguments for constructing a PlatformApplication resource.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Provides a way to set SNS SMS preferences.
The set of arguments for constructing a SmsPreferences resource.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Provides an SNS topic resource ## Example Usage ```go package main import ( "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 { _, err := sns.NewTopic(ctx, "user_updates", &sns.TopicArgs{ Name: pulumi.String("user-updates-topic"), }) if err != nil { return err } return nil }) } ``` ## Example with Delivery Policy ```go package main import ( "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 { _, err := sns.NewTopic(ctx, "user_updates", &sns.TopicArgs{ Name: pulumi.String("user-updates-topic"), DeliveryPolicy: pulumi.String(`{ "http": { "defaultHealthyRetryPolicy": { "minDelayTarget": 20, "maxDelayTarget": 20, "numRetries": 3, "numMaxDelayRetries": 0, "numNoDelayRetries": 0, "numMinDelayRetries": 0, "backoffFunction": "linear" }, "disableSubscriptionOverrides": false, "defaultThrottlePolicy": { "maxReceivesPerSecond": 1 } } } `), }) if err != nil { return err } return nil }) } ``` ## Example with Server-side encryption (SSE) ```go package main import ( "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 { _, err := sns.NewTopic(ctx, "user_updates", &sns.TopicArgs{ Name: pulumi.String("user-updates-topic"), KmsMasterKeyId: pulumi.String("alias/aws/sns"), }) if err != nil { return err } return nil }) } ``` ## Example with First-In-First-Out (FIFO) ```go package main import ( "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 { _, err := sns.NewTopic(ctx, "user_updates", &sns.TopicArgs{ Name: pulumi.String("user-updates-topic.fifo"), FifoTopic: pulumi.Bool(true), ContentBasedDeduplication: pulumi.Bool(true), }) if err != nil { return err } return nil }) } ``` ## Message Delivery Status Arguments The `<endpoint>_success_feedback_role_arn` and `<endpoint>_failure_feedback_role_arn` arguments are used to give Amazon SNS write access to use CloudWatch Logs on your behalf.
The set of arguments for constructing a Topic resource.
No description provided by the author
No description provided by the author
No description provided by the author
Provides an SNS topic policy resource > **NOTE:** If a Principal is specified as just an AWS account ID rather than an ARN, AWS silently converts it to the ARN for the root user, causing future deployments to differ.
The set of arguments for constructing a TopicPolicy resource.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Provides a resource for subscribing to SNS topics.
The set of arguments for constructing a TopicSubscription resource.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Interfaces

DataProtectionPolicyArrayInput is an input type that accepts DataProtectionPolicyArray and DataProtectionPolicyArrayOutput values.
No description provided by the author
DataProtectionPolicyMapInput is an input type that accepts DataProtectionPolicyMap and DataProtectionPolicyMapOutput values.
PlatformApplicationArrayInput is an input type that accepts PlatformApplicationArray and PlatformApplicationArrayOutput values.
No description provided by the author
PlatformApplicationMapInput is an input type that accepts PlatformApplicationMap and PlatformApplicationMapOutput values.
SmsPreferencesArrayInput is an input type that accepts SmsPreferencesArray and SmsPreferencesArrayOutput values.
No description provided by the author
SmsPreferencesMapInput is an input type that accepts SmsPreferencesMap and SmsPreferencesMapOutput values.
TopicArrayInput is an input type that accepts TopicArray and TopicArrayOutput values.
No description provided by the author
TopicMapInput is an input type that accepts TopicMap and TopicMapOutput values.
TopicPolicyArrayInput is an input type that accepts TopicPolicyArray and TopicPolicyArrayOutput values.
No description provided by the author
TopicPolicyMapInput is an input type that accepts TopicPolicyMap and TopicPolicyMapOutput values.
TopicSubscriptionArrayInput is an input type that accepts TopicSubscriptionArray and TopicSubscriptionArrayOutput values.
No description provided by the author
TopicSubscriptionMapInput is an input type that accepts TopicSubscriptionMap and TopicSubscriptionMapOutput values.

# Type aliases

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author