AWS SNS integration

Notifications: publish messages, topics, subscriptions, platform applications

Help CentreConnectors

Overview

Amazon SNS (Simple Notification Service) is AWS's pub-sub messaging service. The Automize AWS SNS connector covers topic management, subscriptions, message publishing (incl. SMS direct send + mobile push), and batch publish.

  • Regions: SNS is regional. Topics are region-scoped – subscriptions can cross regions for some delivery protocols.
  • Plans: Pay-as-you-go. Free tier: 1M requests + 100k notifications/month (varies by protocol).

Setting up the connection

Auth type: aws_sigv4.

  1. AWS Console → IAM → user with programmatic access.
  2. Attach AmazonSNSFullAccess or scope down (sns:Publish, sns:Subscribe, sns:CreateTopic).
  3. In Automize, open Settings → Connectors → AWS SNS → Add connection. Paste keys + region.

Find your credentials at https://us-east-1.console.aws.amazon.com/iam/home.


Rate limits

SNS scales horizontally – no practical TPS cap on Publish for most use cases. SMS has per-account spending caps (default $1/month – raise via support). The connector retries throttling errors with backoff.


Data model

Pub-sub:

    Topic ─── Subscriptions ─┬─ HTTP/HTTPS endpoints (webhooks)
                             ├─ Email / Email-JSON
                             ├─ SQS queue ARNs
                             ├─ Lambda function ARNs
                             ├─ SMS phone numbers
                             └─ Mobile push (via Platform Applications)
    Topic types: Standard (best-effort, at-least-once) + FIFO (ordered, exactly-once).

Available operations

14 operations available. Click any row to jump to its detail.

OperationCategoryWhat it does
Create Platform ApplicationGeneralCreate a push notification platform application
Create Platform EndpointGeneralCreate a push notification endpoint
Create TopicGeneralCreate an SNS topic
Delete TopicGeneralDelete an SNS topic
Get Topic AttributesGeneralGet attributes of an SNS topic
List Platform ApplicationsGeneralList push notification platform applications
List SubscriptionsGeneralList all subscriptions
List Subscriptions by TopicGeneralList subscriptions for a specific topic
List TopicsGeneralList all SNS topics
Publish MessageGeneralPublish a message to a topic, phone number, or target ARN
Publish BatchGeneralPublish a batch of messages to a topic
Set Topic AttributesGeneralSet an attribute on an SNS topic
SubscribeGeneralSubscribe an endpoint to a topic
UnsubscribeGeneralUnsubscribe from a topic

Operations

Create Platform Application

Create a push notification platform application

No input parameters.

Tips

  • For mobile push (APNS / FCM / etc.). Needs platform credentials.

Create Platform Endpoint

Create a push notification endpoint

No input parameters.

Tips

  • Register a device under a platform app. Returns endpoint ARN to use in Publish.

Create Topic

Create an SNS topic

No input parameters.

Tips

  • name: Standard topic. For FIFO, append .fifo and set FifoTopic=true.
  • Returns TopicArn – use this everywhere downstream.

Delete Topic

Delete an SNS topic

No input parameters.

Tips

  • Deletes topic + all subscriptions. Irreversible.

Get Topic Attributes

Get attributes of an SNS topic

No input parameters.

Tips

  • Returns ARN, DisplayName, SubscriptionsConfirmed, SubscriptionsPending, EffectiveDeliveryPolicy.

List Platform Applications

List push notification platform applications

No input parameters.

Tips

  • Mobile push platform configs.

List Subscriptions

List all subscriptions

No input parameters.

Tips

  • All subscriptions across all topics. Use List Subscriptions By Topic for one-topic scoping.

List Subscriptions by Topic

List subscriptions for a specific topic

No input parameters.

Tips

  • Filter by topic_arn. Returns subscription ARN + endpoint + protocol.

List Topics

List all SNS topics

No input parameters.

Tips

  • Pages 100 per call (NextToken for next page).

Publish Message

Publish a message to a topic, phone number, or target ARN

No input parameters.

Tips

  • topic_arn OR target_arn (mobile push) OR phone_number (SMS direct).
  • Message: plain text, or JSON with per-protocol bodies (MessageStructure='json').
  • MessageAttributes for filtering downstream.

Publish Batch

Publish a batch of messages to a topic

No input parameters.

Tips

  • Up to 10 messages per call. Each gets its own MessageId. Returns per-message success/failure.

Set Topic Attributes

Set an attribute on an SNS topic

No input parameters.

Tips

  • Update one attribute per call (AttributeName + AttributeValue).

Subscribe

Subscribe an endpoint to a topic

No input parameters.

Tips

  • Protocol: http, https, email, email-json, sms, sqs, lambda, application (mobile push).
  • Endpoint format varies – full URL for http(s), email address, phone number (E.164), or ARN for sqs/lambda.
  • Email/HTTPS subscriptions require manual confirmation (Confirm Subscription URL emailed).

Unsubscribe

Unsubscribe from a topic

No input parameters.

Tips

  • Subscription ARN. Irreversible – re-subscribe means a new confirmation.

FAQ

Direct SMS – when?
Send Publish with phone_number (E.164) and no topic. Works in regions where SNS supports SMS. Use Twilio for global SMS – AWS is cheaper per message but country coverage is patchier and harder to get number-pool features.
Standard vs FIFO topics?
Standard: at-least-once delivery, possible reorder, near-infinite throughput. FIFO: exactly-once, strict order, ~300 TPS. Use FIFO only when order matters.
HTTPS subscription confirmation?
When subscribing an HTTPS endpoint, SNS POSTs a SubscriptionConfirmation message. The endpoint must extract SubscribeURL from the body and GET it (or POST ConfirmSubscription) to confirm.
Filter policies – how?
Set subscription attribute FilterPolicy to a JSON document defining which message attributes a subscription accepts. Saves you from fan-out logic at the consumer.

Related connectors

See it working on your own data

Everything documented here ships with the platform – try the document tools free, or go live in 7 days.