Handling webhooks with EventBridge, SAM and SAR

Click for: original source

Applications author worked on in the last decade were rarely isolated from the rest of the world. Most of the time, they had many interactions with other applications out there. From time to time, some of these integrations are using WebSockets, which makes our integration realtime. By Slobodan Stojanović.

There’s a big chance that you worked with many similar integrations, such as Stripe, Slack, Github, and many others. Events are the core of the common serverless application. We use events to trigger our functions; we send them to queues and notification services, we stream them. But events are also the core of almost any application.

The article is split into these sections:

  • A quest to a cleanest webhook integration
  • Why AWS EventBridge
  • EventBridge integration with AWS SAM
  • Testing the webhook
  • SAR (AWS Serverless Application Repository) application

EventBridge represents a new home for your events. We can use it to integrate with some of the third-party services or build our integrations. We can connect Amazon SNS with a few other services directly. At the moment, EventBridge supports 20 different targets, including Lambda functions, SQS, SNS, Kinesis and others. We’ll use the same event bus for multiple events, so it’s better to keep it outside of the SAR app and pass the reference to it to the SAR app.

For unsuccessful deliveries, SNS retries up to three times. EventBridge does retries out of the box for 24 hours. Both SNS and EventBridge support Lambda Destinations. EventBridge has Schema Registry for events. It supports versioning, and it has an auto-discovery and can generate code bindings.

EventBridge has Schema Registry for events. It supports versioning, and it has an auto-discovery and can generate code bindings.

Simple SAR application is provided for you in the Github repository. Good read!

[Read More]

Tags microservices apis serverless infosec event-driven messaging aws