Reference · Tools
AWS SNS Trigger
Starts workflow when an Amazon SNS topic receives a notification
The AWS SNS Trigger node starts a workflow the moment a message is published to an Amazon SNS topic. It handles the SNS subscription handshake automatically, so you can build pipelines that react to infrastructure alerts, application events, or cross-service notifications without managing confirmation logic yourself. A common use case is routing CloudWatch alarm notifications into a Slack message or incident ticket.
- Node type
- Webhook trigger
- Parameters
- 1
- Outputs
- Output
- Credentials
- AWS
AWS SNS Trigger
Trigger workflows on Amazon SNS notifications
Overview
The AWS SNS Trigger node starts a workflow when messages are published to an Amazon Simple Notification Service (SNS) topic. It subscribes a webhook endpoint to the specified SNS topic and handles the full subscription lifecycle: SubscriptionConfirmation (auto-confirmed), Notification (triggers workflow), and UnsubscribeConfirmation (ignored). The incoming SNS notification payload includes MessageId, TopicArn, Subject, Message, Timestamp, and signature fields. Supports both IAM and Assume Role authentication. The topic can be specified by ARN directly or selected from a list.
Category: Data & Storage
Tool Name: aws_sns_trigger
Version: 1
Appearance: Icon: lucide-Server | Color: #ff9900
Node Type
Trigger — webhook (receives incoming HTTP callbacks)
Input / Output
| Direction | Port(s) |
|---|---|
| Input | None (trigger node) |
| Output | Output |
Credentials
This tool requires AWS credentials. See the Credentials Guide for setup instructions.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Topic ARN | string | Yes | — | The ARN of the SNS topic to subscribe to. Format: arn:aws:sns:{region}:{account-id}:{topic-name} |
Output Data
Each SNS notification produces one output item with the fields SNS delivers:
Type— the SNS message type,Notificationfor delivered messagesMessageId— the SNS message IDTopicArn— the topic the message was published toSubject— the message subject, empty when the publisher did not set oneMessage— the message body, delivered as a stringTimestamp— when SNS published the messageSignatureVersion,Signature,SigningCertURL— the SNS signature fieldsUnsubscribeURL— the SNS unsubscribe link for this subscriptionMessageAttributes— the publisher’s message attributes,{}when none were set_trigger— alwaysaws_sns_webhook_timestamp— ISO 8601 timestamp of when the request arrived_webhookEvent— the SNS message type
Message arrives as text even when the publisher sent JSON — services such as CloudWatch and S3 publish a JSON document inside it. Parse it downstream before addressing its fields, for example with a Code node.
SNS SubscriptionConfirmation and UnsubscribeConfirmation messages are handled by the node and do not start the workflow.
Reference the payload downstream by expression, e.g. {{ $json.Subject }} or {{ $json.Message }}.
Usage Examples
- Start a workflow when a message is published to an SNS topic
- Process CloudWatch alarm notifications sent through SNS
- Handle S3 event notifications routed via SNS
- React to infrastructure events from AWS services via SNS
- Fan out event processing from a central SNS topic
Example Configuration
Subscribe to a topic:
{
"type": "aws_sns_trigger",
"parameters": {
"topic": "arn:aws:sns:us-east-1:123456789012:my-topic"
}
}
Listen to a CloudWatch alarm topic in another region:
{
"type": "aws_sns_trigger",
"parameters": {
"topic": "arn:aws:sns:eu-west-1:123456789012:cloudwatch-alarms"
}
}
Trigger Behavior
- Activation: When the workflow is activated, a webhook endpoint is registered with the service.
- Deactivation: The webhook is automatically unregistered when the workflow is deactivated.
- Payload: The incoming webhook payload is parsed and output as workflow items.
- Verification: Supports signature verification where applicable.
Tips
The AWS SNS Trigger subscribes to an Amazon SNS topic and starts a workflow when notifications arrive. Provide your AWS credentials and specify the SNS topic ARN. When the webhook is activated, it automatically handles the SNS SubscriptionConfirmation handshake. Each notification triggers the workflow with the full SNS message payload including Subject, Message, and metadata.
- The topic’s region comes from the ARN, and your credentials must reach it. Set the credential’s region to the same region the topic lives in.
- Permissions. Activation and deactivation call three SNS actions —
Subscribe,ListSubscriptionsByTopic, andUnsubscribe. The credential must be allowed to perform all three on the topic. - Confirmation is automatic but not instant. SNS keeps the subscription in a pending state until it has confirmed the endpoint; messages published before confirmation are not delivered.
- Topic ARNs must not contain spaces, and the workflow’s webhook URL must not either — SNS rejects the subscription.
Frequently asked questions
What AWS permissions does my credential need for this node to work?
The credential must be allowed to call three SNS actions on the target topic: `sns:Subscribe`, `sns:ListSubscriptionsByTopic`, and `sns:Unsubscribe`. Subscribe is called when the workflow is activated, ListSubscriptionsByTopic is used to locate the existing subscription, and Unsubscribe is called when the workflow is deactivated. Missing any one of these will cause activation or deactivation to fail.
Do I need to manually confirm the SNS subscription after activating the workflow?
No. When BusyBot registers the webhook, AWS sends a SubscriptionConfirmation request to the endpoint, and the node handles that handshake automatically. However, SNS keeps the subscription in a pending state until confirmation completes, so any messages published in that brief window will not be delivered to your workflow.
My SNS topic is in us-west-2 but my credential is set to us-east-1. Will that work?
No. The node derives the topic's region from the ARN itself, but your AWS credential must be configured for that same region to reach the SNS endpoint. Set the credential's region to match the region in your topic ARN, otherwise the Subscribe call will fail or target the wrong endpoint.
What data does the workflow actually receive when a notification arrives?
The output contains the full SNS notification payload, which includes fields like MessageId, TopicArn, Subject, Message, Timestamp, and SNS signature fields. The Message field typically holds the body of whatever was published to the topic — for example, a JSON string from CloudWatch or a plain-text alert from another service.
Are there any formatting rules I need to follow for the topic ARN?
Yes. The topic ARN must contain no spaces, and the BusyBot webhook URL that SNS calls back must contain no spaces either. SNS will reject the subscription request if either URL contains a space. You can specify the topic by pasting the ARN directly or by selecting it from a list populated using your credentials.
Build with the AWS SNS Trigger node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need AWS credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.