Unrecognizable Lambda Output Cognito

KnowHoper picture KnowHoper · Mar 9, 2017 · Viewed 8.4k times · Source

I am trying to implement an auto confirm mechanism in AWS, I'm getting an error due to the Lambda response. I can't find the correct return type in the docs.

Lambda:

exports.handler = (event, context, callback) => {
    event.response.autoConfirmUser = true;
    context.succeed(event.response);
};

Exception:

Unrecognizable lambda output (Service: AWSCognitoIdentityProviderService; Status Code: 400; Error Code: InvalidLambdaResponseException; Request ID: 5c7a2436-0515-11e7-b971-41a89adf53ea)

Answer

Chetan Mehta picture Chetan Mehta · Mar 10, 2017

As shown in the PreSignUp trigger example in Cognito developer guide, you should use context.done(null, event); or context.succeed(event); at the end of your trigger.

Cognito expects the complete event source back in response from your lambda triggers being invoked as part of different Cognito User Pools flows.