0.8.1 • Published 4 years ago

@aws-solutions-konstruk/aws-apigateway-sqs v0.8.1

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
4 years ago

aws-apigateway-sqs module


Stability: Experimental

This is a developer preview (public beta) module.

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.


API Reference:http://docs.awssolutionsbuilder.com/aws-solutions-konstruk/latest/api/aws-apigateway-sqs/
LanguagePackage
Python Logo{: style="height:16px;width:16px"} Pythonaws_solutions_konstruk.aws_apigateway_sqs
Typescript Logo{: style="height:16px;width:16px"} Typescript@aws-solutions-konstruk/aws-apigateway-sqs

Overview

This AWS Solutions Konstruk implements an Amazon API Gateway connected to an Amazon SQS queue pattern.

Here is a minimal deployable pattern definition:

const { ApiGatewayToSqs } = require('@aws-solutions-konstruk/aws-apigateway-sqs');

new ApiGatewayToSqs(stack, 'ApiGatewayToSqsPattern', {
    apiGatewayProps: {},
    queueProps: {},
    encryptionKeyProps: {},
    deployDeadLetterQueue?: true,
    maxReceiveCount?: 3
});

Initializer

new ApiGatewayToSqs(scope: Construct, id: string, props: ApiGatewayToSqsProps);

Parameters

Pattern Construct Props

NameTypeDescription
apiGatewayProps?api.RestApiPropsOptional user-provided props to override the default props for the API Gateway.
queueProps?sqs.QueuePropsOptional user-provided props to override the default props for the queue.
encryptionKeyProps?kms.KeyPropsOptional user-provided props to override the default props for the encryption key.
deployDeadLetterQueuebooleanWhether to deploy a secondary queue to be used as a dead letter queue.
maxReceiveCountnumberThe number of times a message can be unsuccesfully dequeued before being moved to the dead-letter queue.

Pattern Properties

NameTypeDescription
api()api.RestApiReturns an instance of the API Gateway REST API created by the pattern.
sqsQueue()sqs.QueueReturns an instance of the SQS queue created by the pattern.

Sample API Usage

MethodRequest PathRequest BodyQueue ActionDescription
GET/sqs::ReceiveMessageRetrieves a message from the queue.
POST/{ "data": "Hello World!" }sqs::SendMessageDelivers a message to the queue.
DELETE/message?receiptHandle=[value]sqs::DeleteMessageDeletes a specified message from the queue

Architecture

Architecture Diagram


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