Skip to main content

The CDK Construct Library for AWS::SES

Project description

Amazon Simple Email Service Construct Library

---

End-of-Support

AWS CDK v1 has reached End-of-Support on 2023-06-01. This package is no longer being updated, and users should migrate to AWS CDK v2.

For more information on how to migrate, see the Migrating to AWS CDK v2 guide.


This module is part of the AWS Cloud Development Kit project.

Email receiving

Create a receipt rule set with rules and actions (actions can be found in the @aws-cdk/aws-ses-actions package):

import aws_cdk.aws_s3 as s3
import aws_cdk.aws_ses_actions as actions


bucket = s3.Bucket(self, "Bucket")
topic = sns.Topic(self, "Topic")

ses.ReceiptRuleSet(self, "RuleSet",
    rules=[ses.ReceiptRuleOptions(
        recipients=["hello@aws.com"],
        actions=[
            actions.AddHeader(
                name="X-Special-Header",
                value="aws"
            ),
            actions.S3(
                bucket=bucket,
                object_key_prefix="emails/",
                topic=topic
            )
        ]
    ), ses.ReceiptRuleOptions(
        recipients=["aws.com"],
        actions=[
            actions.Sns(
                topic=topic
            )
        ]
    )
    ]
)

Alternatively, rules can be added to a rule set:

rule_set = ses.ReceiptRuleSet(self, "RuleSet")

aws_rule = rule_set.add_rule("Aws",
    recipients=["aws.com"]
)

And actions to rules:

import aws_cdk.aws_ses_actions as actions

# aws_rule: ses.ReceiptRule
# topic: sns.Topic

aws_rule.add_action(actions.Sns(
    topic=topic
))

When using addRule, the new rule is added after the last added rule unless after is specified.

Drop spams

A rule to drop spam can be added by setting dropSpam to true:

ses.ReceiptRuleSet(self, "RuleSet",
    drop_spam=True
)

This will add a rule at the top of the rule set with a Lambda action that stops processing messages that have at least one spam indicator. See Lambda Function Examples.

Receipt filter

Create a receipt filter:

ses.ReceiptFilter(self, "Filter",
    ip="1.2.3.4/16"
)

An allow list filter is also available:

ses.AllowListReceiptFilter(self, "AllowList",
    ips=["10.0.0.0/16", "1.2.3.4/16"
    ]
)

This will first create a block all filter and then create allow filters for the listed ip addresses.

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

aws-cdk.aws-ses-1.204.0.tar.gz (245.2 kB view details)

Uploaded Source

Built Distribution

aws_cdk.aws_ses-1.204.0-py3-none-any.whl (244.5 kB view details)

Uploaded Python 3

File details

Details for the file aws-cdk.aws-ses-1.204.0.tar.gz.

File metadata

  • Download URL: aws-cdk.aws-ses-1.204.0.tar.gz
  • Upload date:
  • Size: 245.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for aws-cdk.aws-ses-1.204.0.tar.gz
Algorithm Hash digest
SHA256 9f805cf494501ddef8c44230ea5af114d408cb2a49ed752cb6b93df024e169d3
MD5 e906418191d66b1cdf7c03c95d1716cd
BLAKE2b-256 981ab5be06d950f9ec4ffb1f6e83f942676d1624456aa1569d1960472e65fa48

See more details on using hashes here.

File details

Details for the file aws_cdk.aws_ses-1.204.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_cdk.aws_ses-1.204.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e5212ae2edddb001a8e8bac5890d7d6b5aca917af93bb97f3386e7fb5077fc08
MD5 7d5a845669b463e72f835d55be460539
BLAKE2b-256 f819a215b0098bb8d1def6028ef04613bf1cc12699995b507703d0389f05cb8f

See more details on using hashes here.

Supported by

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