AWS SNS
Use this node to publish messages to an AWS Simple Notification Service (SNS) topic — for example, fanning out device alarms to multiple subscribers (Lambda, SQS, email, SMS) through a single SNS topic, or triggering downstream AWS workflows when critical telemetry thresholds are exceeded.
Configuration
Section titled “Configuration”- Topic ARN pattern — required. Full ARN of the SNS topic. Supports templatization.
- AWS Access Key ID — required. IAM access key with SNS publish permissions.
- AWS Secret Access Key — required. IAM secret access key.
- AWS Region — required. AWS region where the topic is hosted (e.g.,
us-east-1).
Fixed timeouts: 10 s connection, 5 s request.
Outgoing message format
Section titled “Outgoing message format”On Success, adds to metadata: messageId (SNS message ID), requestId (AWS request ID).
On Failure, adds to metadata: error (exception class and message).
Message data is not modified.
Message processing algorithm
Section titled “Message processing algorithm”- Resolve the topic ARN pattern from message data and metadata.
- Publish the message data as the SNS message body.
- On success: add
messageIdandrequestIdto metadata; route viaSuccess. - On error: add
errorto metadata; route viaFailure.
Output connections
Section titled “Output connections”| Connection | Condition |
|---|---|
Success | Message published to SNS. Metadata includes messageId and requestId. |
Failure | Timeout, SNS error, invalid credentials, or unexpected error. |
Examples
Section titled “Examples”Example 1 — Publish alarm to SNS
Section titled “Example 1 — Publish alarm to SNS”Data: { "alarmType": "HighTemperature", "value": 85 } | Metadata: { "deviceType": "sensor" }.
{ "topicArnPattern": "arn:aws:sns:us-east-1:123456789012:device-alarms", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "secretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", "region": "us-east-1"}Outgoing metadata adds: { "messageId": "abc123", "requestId": "req-xyz" }. Routes via Success.
JSON schema
Section titled “JSON schema”{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "TbSnsNodeConfiguration", "type": "object", "required": ["topicArnPattern", "accessKeyId", "secretAccessKey", "region"], "additionalProperties": false, "properties": { "topicArnPattern": { "type": "string" }, "accessKeyId": { "type": "string" }, "secretAccessKey": { "type": "string" }, "region": { "type": "string" } }}