Infrastructure
AWS SNS Webhooks
Amazon Simple Notification Service. Receive events from any AWS service via SNS topic subscriptions.
Connecting AWS SNS to Hookbase
Create a source in Hookbase first — it gives you an ingest URL to paste into AWS SNS. Then:
- 1Go to AWS Console → SNS → Topics → your topic
- 2Click "Create subscription" and set Protocol to HTTPS
- 3Paste your Hookbase ingest URL as the Endpoint and create the subscription
- 4Leave "Enable raw message delivery" off: raw delivery drops the signature Hookbase verifies
- 5SNS sends a SubscriptionConfirmation; Hookbase verifies its signature and confirms the subscription for you
- 6Refresh the subscription in the SNS console: once it shows Confirmed, notifications flow to your Hookbase source
Signature verification
Set the source's provider to aws-sns and paste the signing secret. Every request is checked before the event is stored, and anything that fails is rejected rather than quietly recorded.
- Algorithm
- SHA1withRSA / SHA256withRSA (AWS certificate)
- Header
- x-amz-sns-message-type
- Where to find the secret
- Nothing to copy: SNS signs every message with an AWS certificate (Signature and SigningCertURL in the message body), and Hookbase checks it automatically. Leave "Enable raw message delivery" off on the subscription: raw delivery strips the signature.
AWS SNS event types
3 of the events people route most often. Hookbase accepts every event AWS SNS sends, whether or not it is listed here.
Notification
A standard notification message
SubscriptionConfirmation
A subscription confirmation request
UnsubscribeConfirmation
An unsubscribe confirmation
What a AWS SNS webhook looks like
A Notification payload. Hookbase stores the raw body exactly as it arrived, so this is also what you get back on a replay.
{
"Type": "Notification",
"MessageId": "22b80b92-fdea-4c2c-8f9d-bdfb0c7bf324",
"TopicArn": "arn:aws:sns:us-east-1:123456789012:MyTopic",
"Subject": "S3 Event Notification",
"Message": "{\"Records\":[{\"eventSource\":\"aws:s3\",\"eventName\":\"ObjectCreated:Put\",\"s3\":{\"bucket\":{\"name\":\"my-bucket\"},\"object\":{\"key\":\"uploads/file.pdf\"}}}]}",
"Timestamp": "2024-01-15T10:30:00.000Z",
"SignatureVersion": "2"
}Start receiving AWS SNS webhooks
Create a source, paste the URL into AWS SNS, and watch the first event arrive. The free tier includes 1,000 events a month.
Get Started Free