api gateway invoke lambda cloudformation

1

pls how can i achieve or make api gateway method to invoke lambda cloudformation Please Share sample code Thank You.

1 Antwort
5
Akzeptierte Antwort

Please refer AWS Resource API Gateway Method documentation for examples.

Cloudformation template should look like somethings as below, it may require additional tweaks based on your use cace exactly:

    apiGatewayMethod:
    Type: AWS::ApiGateway::Method
    Properties:
        AuthorizationType: NONE
        HttpMethod: !Ref apiGatewayHTTPMethod
        Integration:
        IntegrationHttpMethod: POST
        Type: AWS_PROXY
        Uri: !Sub
            - arn:aws:apigateway:${AWS::Region}:lambda:path/.../functions/${lambdaArn}/invocations
            - lambdaArn: !GetAtt lambdaFunction.Arn
        ResourceId: !GetAtt apiGateway.RootResourceId
        RestApiId: !Ref apiGateway

    lambdaApiGatewayInvoke:
        Type: AWS::Lambda::Permission
        Properties:
        Action: lambda:InvokeFunction
        FunctionName: !GetAtt lambdaFunction.Arn
        Principal: apigateway.amazonaws.com
        SourceArn: !Sub arn:aws:execute-api:${AWS::Region}:${AWS::AccountId}:${apiGateway}/<APIGatewayStageName>/<apiGatewayHTTPMethod>/

Hope you find this useful.

Comment here if you have additional questions, happy to help.

Abhishek

profile pictureAWS
EXPERTE
beantwortet vor 9 Monaten
profile pictureAWS
EXPERTE
iBehr
überprüft vor 9 Monaten
  • Hi Abhishek Thank You, Please i it possible to invoke the lambda aliases to different stages of the API Gateway

    devaliases - devstage testaliases - teststage

  • This AWS documentation Working with stages for HTTP APIs talks about that, though I'm not sure if that is what you are looking for.

  • Your solution is reasonable according to the documentation. The gateway API has to set up permission to execute a lambda function. In the administer panel it suggests setting up the execution role. It is convenient because I do it in most cases. But here there is a solution with permission. How does it look in an admin panel? Using AWS Lambda with Amazon API Gateway

  • Why not? SourceArn: !GetAtt DataExportMethod.Arn

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen