A middy middleware to make your Lambda Handler idempotent.
import { makeHandlerIdempotent } from '@aws-lambda-powertools/idempotency/middleware';import { DynamoDBPersistenceLayer } from '@aws-lambda-powertools/idempotency/dynamodb';import middy from '@middy/core';const persistenceStore = new DynamoDBPersistenceLayer({ tableName: 'idempotencyTable',});export const handler = middy( async (_event: unknown, _context: unknown): Promise<void> => { // your code goes here }).use(makeHandlerIdempotent({ persistenceStore: dynamoDBPersistenceLayer })); Copy
import { makeHandlerIdempotent } from '@aws-lambda-powertools/idempotency/middleware';import { DynamoDBPersistenceLayer } from '@aws-lambda-powertools/idempotency/dynamodb';import middy from '@middy/core';const persistenceStore = new DynamoDBPersistenceLayer({ tableName: 'idempotencyTable',});export const handler = middy( async (_event: unknown, _context: unknown): Promise<void> => { // your code goes here }).use(makeHandlerIdempotent({ persistenceStore: dynamoDBPersistenceLayer }));
For the middleware to work, your Lambda function handler must return a value different from undefined. This is a known limitation of the early return feature in Middy.js.
undefined
If your use case requires early returns, you can use the makeIdempotent() function wrapper instead.
Options for the idempotency middleware
A middy middleware to make your Lambda Handler idempotent.
Example
For the middleware to work, your Lambda function handler must return a value different from
undefined
. This is a known limitation of the early return feature in Middy.js.If your use case requires early returns, you can use the makeIdempotent() function wrapper instead.