I'm trying to set up an event-driven architecture to trigger jobs in an AWS Step Function. We have a team sending JSON data to Amazon SNS, and I need to use that to trigger the Step Function. The challenge I'm facing is that the only available method seems to be: SNS -> SQS -> EventBridge Pipe -> Step Function. However, my organization prefers not to use EventBridge Pipes. Does anyone have suggestions on how to work around this?
4 Answers
If you're looking for another route, you could set up an API Gateway endpoint to trigger the Step Function. Then, just have SNS call the API Gateway. It's a bit of a convoluted approach, and might not be as secure as using EventBridge Pipes, but it's an option.
If your organization is against using EventBridge Pipes, the best workaround is to use a Lambda function as a proxy to invoke the Step Function. Alternatively, you could try explaining to your team why pipes might be beneficial and necessary.
You might want to consider setting up an AWS Lambda function as a trigger between SNS and the Step Function. It’s quite easy to do and only requires about 10 lines of code in Python! This way, the Lambda can invoke the Step Function directly using the JSON from SNS.
We often use Lambda to trigger our Step Functions directly from SNS. It’s a straightforward solution if your organization isn’t keen on using EventBridge Pipes, since SNS can’t trigger Step Functions by itself.

Related Questions
How To: Running Codex CLI on Windows with Azure OpenAI
Set Wordpress Featured Image Using Javascript
How To Fix PHP Random Being The Same
Why no WebP Support with Wordpress
Replace Wordpress Cron With Linux Cron
Customize Yoast Canonical URL Programmatically