AWS CDK Events (v1)

1.204.0 · active · verified Thu Apr 16

The `aws-cdk-aws-events` library provides constructs for defining Amazon EventBridge resources in AWS CDK v1. It allows developers to programmatically create event buses, rules, targets, and schema registry resources using Python. This library is part of the AWS CDK v1 ecosystem, with the current version being 1.204.0, and receives updates aligned with AWS service releases and CDK v1 maintenance.

Common errors

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to create an EventBridge rule that triggers a Lambda function every 5 minutes using `aws-cdk-aws-events` within an AWS CDK v1 application. Run `cdk deploy` after `app.synth()` to deploy.

import aws_cdk as cdk
from aws_cdk import aws_events
from aws_cdk import aws_events_targets as targets
from aws_cdk import aws_lambda as lambda_

class MyEventStack(cdk.Stack):
    def __init__(self, scope: cdk.App, id: str, **kwargs) -> None:
        super().__init__(scope, id, **kwargs)

        # Define a simple Lambda function to be a target
        my_lambda = lambda_.Function(
            self, "MyEventHandler",
            runtime=lambda_.Runtime.PYTHON_3_9,
            handler="index.handler",
            code=lambda_.Code.from_inline("import json; def handler(event, context): print(json.dumps(event)); return 'OK'")
        )

        # Create an EventBridge rule that triggers every 5 minutes
        rule = aws_events.Rule(
            self, "MyScheduleRule",
            schedule=aws_events.Schedule.rate(cdk.Duration.minutes(5)),
            description="Rule that triggers every 5 minutes"
        )

        # Add the Lambda function as a target for the rule
        rule.add_target(targets.LambdaFunction(my_lambda))

app = cdk.App()
MyEventStack(app, "MyEventBridgeStack")
app.synth()

view raw JSON →