aws-cdk-lib.aws_events_targets.ApiGateway

class ApiGateway

LanguageType name
.NETAmazon.CDK.AWS.Events.Targets.ApiGateway
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awseventstargets#ApiGateway
Javasoftware.amazon.awscdk.services.events.targets.ApiGateway
Pythonaws_cdk.aws_events_targets.ApiGateway
TypeScript (source)aws-cdk-lib » aws_events_targets » ApiGateway

Implements IRuleTarget

Use an API Gateway REST APIs as a target for Amazon EventBridge rules.

Example

import * as api from 'aws-cdk-lib/aws-apigateway';
import * as lambda from 'aws-cdk-lib/aws-lambda';

const rule = new events.Rule(this, 'Rule', {
  schedule: events.Schedule.rate(Duration.minutes(1)),
});

const fn = new lambda.Function( this, 'MyFunc', {
  handler: 'index.handler',
  runtime: lambda.Runtime.NODEJS_14_X,
  code: lambda.Code.fromInline( 'exports.handler = e => {}' ),
} );

const restApi = new api.LambdaRestApi( this, 'MyRestAPI', { handler: fn } );

const dlq = new sqs.Queue(this, 'DeadLetterQueue');

rule.addTarget(
  new targets.ApiGateway( restApi, {
    path: '/*/test',
    method: 'GET',
    stage:  'prod',
    pathParameterValues: ['path-value'],
    headerParameters: {
      Header1: 'header1',
    },
    queryStringParameters: {
      QueryParam1: 'query-param-1',
    },
    deadLetterQueue: dlq
  } ),
)

Initializer

new ApiGateway(restApi: RestApi, props?: ApiGatewayProps)

Parameters

  • restApi RestApi
  • props ApiGatewayProps

Properties

NameTypeDescription
restApiRestApi

restApi

Type: RestApi

Methods

NameDescription
bind(rule, _id?)Returns a RuleTarget that can be used to trigger this API Gateway REST APIs as a result from an EventBridge event.

bind(rule, _id?)

public bind(rule: IRule, _id?: string): RuleTargetConfig

Parameters

  • rule IRule
  • _id string

Returns

  • RuleTargetConfig

Returns a RuleTarget that can be used to trigger this API Gateway REST APIs as a result from an EventBridge event.

See also: https://docs.aws.amazon.com/eventbridge/latest/userguide/resource-based-policies-eventbridge.html#sqs-permissions