Skip to main content

CDK Constructs for AWS API Gateway and Amazon DynamoDB integration.

Project description

aws-apigateway-dynamodb module

---

Stability: Experimental

All classes are under active development and subject to non-backward compatible changes or removal in any future version. These are not subject to the Semantic Versioning model. This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package.


Reference Documentation: https://docs.aws.amazon.com/solutions/latest/constructs/
Language Package
Python Logo Python aws_solutions_constructs.aws_apigateway_dynamodb
Typescript Logo Typescript @aws-solutions-constructs/aws-apigateway-dynamodb
Java Logo Java software.amazon.awsconstructs.services.apigatewaydynamodb

Overview

This AWS Solutions Construct implements an Amazon API Gateway REST API connected to Amazon DynamoDB table.

Here is a minimal deployable pattern definition in Typescript:

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
from aws_solutions_constructs.aws_apigateway_dynamodb import ApiGatewayToDynamoDBProps, ApiGatewayToDynamoDB

ApiGatewayToDynamoDB(self, "test-api-gateway-dynamodb-default")

Initializer

new ApiGatewayToDynamoDB(scope: Construct, id: string, props: ApiGatewayToDynamoDBProps);

Parameters

Pattern Construct Props

Name Type Description
dynamoTableProps dynamodb.TableProps Optional user provided props to override the default props for DynamoDB Table
apiGatewayProps? api.RestApiProps Optional user-provided props to override the default props for the API Gateway.
allowCreateOperation boolean Whether to deploy API Gateway Method for Create operation on DynamoDB table.
createRequestTemplate string API Gateway Request template for Create method, required if allowCreateOperation set to true
allowReadOperation boolean Whether to deploy API Gateway Method for Read operation on DynamoDB table.
allowUpdateOperation boolean Whether to deploy API Gateway Method for Update operation on DynamoDB table.
updateRequestTemplate string API Gateway Request template for Update method, required if allowUpdateOperation set to true
allowDeleteOperation boolean Whether to deploy API Gateway Method for Delete operation on DynamoDB table.
logGroupProps? logs.LogGroupProps User provided props to override the default props for for the CloudWatchLogs LogGroup.

Pattern Properties

Name Type Description
apiGateway api.RestApi Returns an instance of the api.RestApi created by the construct.
apiGatewayRole iam.Role Returns an instance of the iam.Role created by the construct for API Gateway.
dynamoTable dynamodb.Table Returns an instance of dynamodb.Table created by the construct.
apiGatewayCloudWatchRole iam.Role Returns an instance of the iam.Role created by the construct for API Gateway for CloudWatch access.
apiGatewayLogGroup logs.LogGroup Returns an instance of the LogGroup created by the construct for API Gateway access logging to CloudWatch.

Default settings

Out of the box implementation of the Construct without any override will set the following defaults:

Amazon API Gateway

  • Deploy an edge-optimized API endpoint
  • Enable CloudWatch logging for API Gateway
  • Configure least privilege access IAM role for API Gateway
  • Set the default authorizationType for all API methods to IAM
  • Enable X-Ray Tracing

Amazon DynamoDB Table

  • Set the billing mode for DynamoDB Table to On-Demand (Pay per request)
  • Enable server-side encryption for DynamoDB Table using AWS managed KMS Key
  • Creates a partition key called 'id' for DynamoDB Table
  • Retain the Table when deleting the CloudFormation stack
  • Enable continuous backups and point-in-time recovery

Architecture

Architecture Diagram


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

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file aws-solutions-constructs.aws-apigateway-dynamodb-1.91.0.tar.gz.

File metadata

File hashes

Hashes for aws-solutions-constructs.aws-apigateway-dynamodb-1.91.0.tar.gz
Algorithm Hash digest
SHA256 cf28460100c8ba0c9ec8b3f28bf52a967d896f7528305d1a59259262a60b6101
MD5 f14a8b20bd7f7502e487fab4d0bc4e8d
BLAKE2b-256 b9cb007dcc4d9646d8784b2f7a4c43e661a8eae352c75cdcb42f0c6a2b396fe4

See more details on using hashes here.

File details

Details for the file aws_solutions_constructs.aws_apigateway_dynamodb-1.91.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_solutions_constructs.aws_apigateway_dynamodb-1.91.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e6b9f4b1eb30ba3ae104442635f525bd17db644aedf6afe189c28d11963980ee
MD5 0e5ecd0b8445f9c2bdca7c4c8b8a44d5
BLAKE2b-256 5678cf0db7aeee8c7e42f0f5bb3d41bd522c427812622287ccecab9e74fda9a8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page