[{"data":1,"prerenderedAt":76},["ShallowReactive",2],{"pattern-apigw-sqs-lambda-ddb":3},{"id":4,"title":5,"architectureURL":6,"cleanup":7,"contributors":10,"deploy":12,"description":15,"extension":16,"framework":17,"gitHub":18,"highlight":6,"introBox":24,"language":31,"level":32,"meta":33,"patternArch":34,"resources":60,"s3URL":6,"services":6,"stem":71,"testing":72,"videoId":6,"__hash__":75},"patterns\u002Fpatterns\u002Fapigw-sqs-lambda-ddb.json","Amazon API Gateway to Amazon SQS to AWS Lambda",null,{"text":8},[9],"Delete the stack: \u003Ccode>sam delete\u003C\u002Fcode>.",[11],"content\u002Fcontributors\u002Fravi-kiran-ganji.json",{"text":13},[14],"sam deploy","This pattern shows how to deploy an AWS SAM application with Amazon API Gateway, Amazon SQS, AWS Lambda, and Amazon DynamoDB.","json","AWS SAM",{"template":19},{"repoURL":20,"templateURL":21,"projectFolder":22,"templateFile":23},"https:\u002F\u002Fgithub.com\u002Faws-samples\u002Fserverless-patterns\u002Ftree\u002Fmain\u002Fapigw-sqs-lambda-ddb","serverless-patterns\u002Fapigw-sqs-lambda-ddb","apigw-sqs-lambda-ddb","template.yaml",{"headline":25,"text":26},"How it works",[27,28,29,30],"When an HTTP POST request is made to the API Gateway endpoint, API Gateway authorizes the request by checking Basic auth credentials for valid credentials. To do this, API Gateway calls a Lambda authorizer function that validates the request and returns whether the request is valid or not.","When the request is accepted, API Gateway forwards the message payload to an SQS queue.","A new message in the queue triggers a Lambda function. The function consumes events from the queue and inserts the payload into an Amazon DynamoDB table.","If there is any problem processing the message in the function, SQS has a DLQ (dead letter queue) configured, to which problematic messages are sent.","Python","300",{},{"icon1":35,"icon2":40,"icon3":44,"icon4":48,"line1":52,"line2":56,"line3":58},{"x":36,"y":37,"service":38,"label":39},15,50,"apigw","Amazon API Gateway",{"x":41,"y":37,"service":42,"label":43},40,"sqs","Amazon SQS",{"x":45,"y":37,"service":46,"label":47},60,"lambda","AWS Lambda",{"x":49,"y":37,"service":50,"label":51},85,"dynamodb","Amazon DynamoDB",{"from":53,"to":54,"label":55},"icon1","icon2","",{"from":54,"to":57,"label":55},"icon3",{"from":57,"to":59,"label":55},"icon4",{"bullets":61},[62,65,68],{"text":63,"link":64},"Lambda Authorizers","https:\u002F\u002Fdocs.aws.amazon.com\u002Fapigateway\u002Flatest\u002Fdeveloperguide\u002Fapigateway-use-lambda-authorizer.html",{"text":66,"link":67},"Amazon SQS dead-letter queues","https:\u002F\u002Fdocs.aws.amazon.com\u002FAWSSimpleQueueService\u002Flatest\u002FSQSDeveloperGuide\u002Fsqs-dead-letter-queues.html",{"text":69,"link":70},"Working with HTTP APIs","https:\u002F\u002Fdocs.aws.amazon.com\u002Fapigateway\u002Flatest\u002Fdeveloperguide\u002Fhttp-api.html","patterns\u002Fapigw-sqs-lambda-ddb",{"text":73},[74],"See the GitHub repo for detailed testing instructions.","nN90reBJZI_8H6Omxh3vJLrgNNTBactbULUg4WyydRM",1778927705804]