Back to Aws Doc Sdk Examples

API Gateway code examples for the SDK for Python

python/example_code/api-gateway/README.md

latest5.9 KB
Original Source

API Gateway code examples for the SDK for Python

Overview

Shows how to use the AWS SDK for Python (Boto3) to work with Amazon API Gateway.

<!--custom.overview.start--> <!--custom.overview.end-->

API Gateway enables you to create and deploy your own REST and WebSocket APIs at any scale.

⚠ Important

  • Running this code might result in charges to your AWS account. For more details, see AWS Pricing and Free Tier.
  • Running the tests might result in charges to your AWS account.
  • We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task. For more information, see Grant least privilege.
  • This code is not tested in every AWS Region. For more information, see AWS Regional Services.
<!--custom.important.start--> <!--custom.important.end-->

Code examples

Prerequisites

For prerequisites, see the README in the python folder.

Install the packages required by these examples by running the following in a virtual environment:

python -m pip install -r requirements.txt
<!--custom.prerequisites.start--> <!--custom.prerequisites.end-->

Single actions

Code excerpts that show you how to call individual service functions.

Scenarios

Code examples that show you how to accomplish a specific task by calling multiple functions within the same service.

<!--custom.examples.start--> <!--custom.examples.end-->

Run the examples

Instructions

<!--custom.instructions.start--> <!--custom.instructions.end-->

Create a REST API to track COVID-19 data

This example shows you how to create a REST API that simulates a system to track daily cases of COVID-19 in the United States, using fictional data.

<!--custom.scenario_prereqs.cross_ApiGatewayDataTracker.start--> <!--custom.scenario_prereqs.cross_ApiGatewayDataTracker.end--> <!--custom.scenarios.cross_ApiGatewayDataTracker.start--> <!--custom.scenarios.cross_ApiGatewayDataTracker.end-->

Create a lending library REST API

This example shows you how to create a lending library where patrons can borrow and return books by using a REST API backed by an Amazon Aurora database.

<!--custom.scenario_prereqs.cross_AuroraRestLendingLibrary.start--> <!--custom.scenario_prereqs.cross_AuroraRestLendingLibrary.end--> <!--custom.scenarios.cross_AuroraRestLendingLibrary.start--> <!--custom.scenarios.cross_AuroraRestLendingLibrary.end-->

Create a websocket chat application

This example shows you how to create a chat application that is served by a websocket API built on Amazon API Gateway.

<!--custom.scenario_prereqs.cross_ApiGatewayWebsocketChat.start--> <!--custom.scenario_prereqs.cross_ApiGatewayWebsocketChat.end--> <!--custom.scenarios.cross_ApiGatewayWebsocketChat.start--> <!--custom.scenarios.cross_ApiGatewayWebsocketChat.end-->

Create and deploy a REST API

This example shows you how to do the following:

  • Create a REST API served by API Gateway.
  • Add resources to the REST API to represent a user profile.
  • Add integration methods so that the REST API uses a DynamoDB table to store user profile data.
  • Send HTTP requests to the REST API to add and retrieve user profiles.
<!--custom.scenario_prereqs.api-gateway_Usage_CreateDeployRest.start--> <!--custom.scenario_prereqs.api-gateway_Usage_CreateDeployRest.end-->

Start the example by running the following at a command prompt:

python aws_service/aws_service.py
<!--custom.scenarios.api-gateway_Usage_CreateDeployRest.start-->

For additional instructions on how to set up and run this example, see the README in the aws_service folder.

<!--custom.scenarios.api-gateway_Usage_CreateDeployRest.end-->

Use API Gateway to invoke a Lambda function

This example shows you how to create an AWS Lambda function invoked by Amazon API Gateway.

<!--custom.scenario_prereqs.cross_LambdaAPIGateway.start--> <!--custom.scenario_prereqs.cross_LambdaAPIGateway.end--> <!--custom.scenarios.cross_LambdaAPIGateway.start--> <!--custom.scenarios.cross_LambdaAPIGateway.end-->

Tests

⚠ Running tests might result in charges to your AWS account.

To find instructions for running these tests, see the README in the python folder.

<!--custom.tests.start--> <!--custom.tests.end-->

Additional resources

<!--custom.resources.start--> <!--custom.resources.end-->

Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.

SPDX-License-Identifier: Apache-2.0