[{"data":1,"prerenderedAt":75},["ShallowReactive",2],{"pattern-lambda-durable-webhook-sam-nodejs":3},{"id":4,"title":5,"architectureURL":6,"cleanup":7,"contributors":11,"deploy":13,"description":17,"extension":18,"framework":19,"gitHub":20,"highlight":6,"introBox":26,"language":30,"level":31,"meta":32,"patternArch":33,"resources":51,"s3URL":6,"services":66,"stem":69,"testing":70,"videoId":6,"__hash__":74},"patterns\u002Fpatterns\u002Flambda-durable-webhook-sam-nodejs.json","Webhook Receiver with AWS Lambda durable functions - NodeJS",null,{"headline":8,"text":9},"Cleanup",[10],"Delete the stack: \u003Ccode>sam delete\u003C\u002Fcode>.",[12],"content\u002Fcontributors\u002Fsahithi-ginjupalli.json",{"text":14},[15,16],"sam build","sam deploy --guided","This serverless pattern demonstrates building a webhook receiver using AWS Lambda durable functions with automatic checkpointing and fault tolerance, implemented in Node.js","json","AWS SAM",{"template":21},{"repoURL":22,"templateURL":23,"templateFile":24,"projectFolder":25},"https:\u002F\u002Fgithub.com\u002Faws-samples\u002Fserverless-patterns\u002Ftree\u002Fmain\u002Flambda-durable-webhook-sam-nodejs","serverless-patterns\u002Flambda-durable-webhook-sam-nodejs","template.yaml","lambda-durable-webhook-sam-nodejs",{"headline":27,"text":28},"How it works",[29],"This pattern demonstrates a serverless webhook receiver using AWS Lambda durable functions. When a webhook POST request arrives via API Gateway, it triggers a durable function that processes the webhook in 3 checkpointed steps: Validate → Process → Finalize. Each step is automatically checkpointed, allowing the workflow to resume from the last successful step if interrupted. The pattern provides immediate 202 response while processing continues in the background, stores execution state in DynamoDB with TTL, and offers real-time status tracking via a REST API.","Node.js","200",{},{"icon1":34,"icon2":39,"icon3":42,"line1":46,"line2":49},{"x":35,"y":36,"service":37,"label":38},15,50,"apigw","Amazon API Gateway",{"x":36,"y":36,"service":40,"label":41},"lambda","AWS Lambda durable function",{"x":43,"y":36,"service":44,"label":45},85,"dynamodb","Amazon DynamoDB",{"from":47,"to":48},"icon1","icon2",{"from":48,"to":50},"icon3",{"headline":52,"bullets":53},"Additional resources",[54,57,60,63],{"text":55,"link":56},"AWS Lambda durable functions Documentation","https:\u002F\u002Fdocs.aws.amazon.com\u002Flambda\u002Flatest\u002Fdg\u002Fdurable-functions.html",{"text":58,"link":59},"Event Source Mappings with Lambda durable functions","https:\u002F\u002Fdocs.aws.amazon.com\u002Flambda\u002Flatest\u002Fdg\u002Fdurable-invoking-esm.html",{"text":61,"link":62},"Lambda durable functions Best Practices","https:\u002F\u002Fdocs.aws.amazon.com\u002Flambda\u002Flatest\u002Fdg\u002Fdurable-functions-best-practices.html",{"text":64,"link":65},"Node.js AWS SDK Documentation","https:\u002F\u002Fdocs.aws.amazon.com\u002FAWSJavaScriptSDK\u002Flatest\u002F",[67,40,68],"apigateway","dynamoDB","patterns\u002Flambda-durable-webhook-sam-nodejs",{"headline":71,"text":72},"Testing",[73],"See the GitHub repo for detailed testing instructions.","86a92GwrX0ve71FX7N2uNvYeJSMaEt57_-5yAaeBzLg",1778846886081]