Skip to main content

Amazon SNS

This connector materializes Estuary collections into topics in Amazon Simple Notification Service, or SNS.

Prerequisites

To use this connector, you'll need:

  • AWS credentials. One of the following types:
    • The AWS access key and secret access key for the user. See the AWS blog for help finding these credentials.
    • To authenticate using an AWS Role, you'll need the region and the role arn. Follow the steps in the AWS IAM guide to set up the role.
  • At least one Estuary collection to materialize.

Configuration

To use this connector, begin with data in one or more Estuary collections. Use the properties below to configure an Amazon SNS materialization.

Properties

Endpoint

PropertyTitleDescriptionTypeRequired/Default
/regionAWS RegionRegion of the SNS service.stringRequired
/credentialsAuthenticationCredentials for authentication.CredentialsRequired
/advanced/endpointAWS EndpointOverride the AWS endpoint URL. Used to direct requests at a compatible API such as LocalStack.string

Credentials

Credentials for authenticating with AWS. Use one of the following sets of options:

Access Key

PropertyTitleDescriptionTypeRequired/Default
/credentials/auth_typeAuth TypeMethod to use for authentication.stringRequired: AWSAccessKey
/credentials/aws_access_key_idAWS Access Key IDAWS Access Key ID for publishing to SNS.stringRequired
/credentials/aws_secret_access_keyAWS Secret Access KeyAWS Secret Access Key for publishing to SNS.stringRequired

AWS IAM

PropertyTitleDescriptionTypeRequired/Default
/credentials/auth_typeAuth TypeMethod to use for authentication.stringRequired: AWSIAM
/credentials/aws_role_arnAWS Role ARNIAM Role to assume.stringRequired
/credentials/aws_regionAWS RegionAWS Region to authenticate in.stringRequired

Bindings

PropertyTitleDescriptionTypeRequired/Default
/topic_nameTopic NameName of the SNS topic to publish to (without the ARN prefix). FIFO topics must end in .fifo.stringRequired

Sample

materializations:
${PREFIX}/${MATERIALIZATION_NAME}:
endpoint:
connector:
image: ghcr.io/estuary/materialize-sns:v1
config:
region: us-east-1
credentials:
auth_type: AWSAccessKey
aws_access_key_id: example-aws-access-key-id
aws_secret_access_key: example-aws-secret-access-key
bindings:
- resource:
topic_name: orders
source: ${PREFIX}/${COLLECTION_NAME}

Delta updates

Because SNS is a write-only event-streaming system, it has no concept of stored rows or keys. This connector only uses delta updates rather than merge updates. Every document in the source collection results in one event published to the topic.