Skip to content

SNS Input

Consumes AWS SNS messages via an SQS subscription.

How it works

  1. SNS topic is subscribed to an SQS queue.
  2. Skipprd polls the SQS queue and extracts the Message field from the SNS envelope.
  3. Messages are deleted after successful ingest.
  4. Namespace convention: sns.{topic_name}.

Configuration

yaml
data_sources:
  source:
    Sns:
      topic_arn: "arn:aws:sns:us-east-1:123456:my-topic"
      sqs_queue_url: "https://sqs.us-east-1.amazonaws.com/123456/my-sns-queue"
      region: us-east-1

Configuration variables

VariableDefaultDescription
topic_arn(required)SNS topic ARN
sqs_queue_url(required)SQS queue URL subscribed to the topic
regionAWS region
endpoint_urlCustom endpoint (e.g. LocalStack)
formatjsonData format

Authentication

Authentication uses the AWS default credential chain.

  • AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY
  • IAM roles, instance profiles, or task roles
  • AWS SSO or shared config profiles

Troubleshooting

SymptomFix
no messages arrivingVerify the SNS topic is subscribed to the target SQS queue and that the queue policy allows delivery.
AccessDeniedCheck the AWS credential chain and access to the queue and topic resources.

This site is source-available under PolyForm Shield 1.0.0