1. Packages
  2. AWS Classic
  3. How-to Guides
  4. API Gateway V1 to EventBridge

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.31.0 published on Monday, Apr 15, 2024 by Pulumi

API Gateway V1 to EventBridge

aws logo

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.31.0 published on Monday, Apr 15, 2024 by Pulumi

    View Code

    Deploy with Pulumi

    This example demonstrates an API Gateway V1 integration with EventBridge and Lambda that also validates request bodies (using an API Gateway model) and returns a custom HTTP response.

    Prerequisites

    1. Install Pulumi.
    2. Install Node.js.
    3. Configure your AWS credentials.

    Deploying the App

    1. Clone this repo, change to this directory, then create a new stack for the project:

      pulumi stack init
      
    2. Specify an AWS region to deploy into:

      pulumi config set aws:region us-west-2
      
    3. Install Node dependencies and run Pulumi:

      npm install
      pulumi up
      
    4. In a few moments, the API Gateway instance service will be up and running and its public URL emitted as a Pulumi stack output.

      ...
      Outputs:
          url: "https://andchh8hg8.execute-api.us-west-2.amazonaws.com/dev"
      
    5. Verify the deployment with curl:

      With invalid POST data:

      curl --data '{"some-invalid-property-name": "Chris"}' --header "Content-Type: application/json" "$(pulumi stack output url)/uploads"
      
      HTTP/2 400
      {"message": "Invalid request body"}
      

      With valid POST data:

      curl --data '{"name": "Chris"}' --header "Content-Type: application/json" "$(pulumi stack output url)/uploads"
      
      HTTP/2 201
      {"accepted":true}
      
    6. Verify the Lambda was invoked with pulumi logs:

      pulumi logs --follow
      
      Collecting logs for stack dev since 2022-01-06T16:18:48.000-08:00.
      ...
      
      {
          source: 'my-event-source',
          detail: { 'name': 'Chris' }
      }
      
    7. When you’re ready, destroy your stack and remove it:

      pulumi destroy --yes
      pulumi stack rm --yes
      
    aws logo

    Try AWS Native preview for resources not in the classic version.

    AWS Classic v6.31.0 published on Monday, Apr 15, 2024 by Pulumi