aws-cdk-lib 2.73.0__py3-none-any.whl → 2.76.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +245 -259
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.73.0.jsii.tgz → aws-cdk-lib@2.76.0.jsii.tgz} +0 -0
- aws_cdk/aws_amplifyuibuilder/__init__.py +182 -214
- aws_cdk/aws_apigateway/__init__.py +95 -148
- aws_cdk/aws_appconfig/__init__.py +8 -4
- aws_cdk/aws_appflow/__init__.py +27 -52
- aws_cdk/aws_appmesh/__init__.py +91 -200
- aws_cdk/aws_apprunner/__init__.py +4 -16
- aws_cdk/aws_appstream/__init__.py +18 -82
- aws_cdk/aws_athena/__init__.py +18 -32
- aws_cdk/aws_backup/__init__.py +48 -86
- aws_cdk/aws_batch/__init__.py +9 -2
- aws_cdk/aws_billingconductor/__init__.py +12 -7
- aws_cdk/aws_budgets/__init__.py +8 -17
- aws_cdk/aws_certificatemanager/__init__.py +7 -4
- aws_cdk/aws_cloudfront/__init__.py +14 -11
- aws_cdk/aws_cloudfront_origins/__init__.py +18 -8
- aws_cdk/aws_cloudtrail/__init__.py +7 -14
- aws_cdk/aws_cloudwatch/__init__.py +63 -35
- aws_cdk/aws_codebuild/__init__.py +10 -13
- aws_cdk/aws_codecommit/__init__.py +0 -1
- aws_cdk/aws_codedeploy/__init__.py +165 -162
- aws_cdk/aws_codegurureviewer/__init__.py +4 -4
- aws_cdk/aws_codepipeline/__init__.py +0 -4
- aws_cdk/aws_codepipeline_actions/__init__.py +16 -164
- aws_cdk/aws_cognito/__init__.py +195 -100
- aws_cdk/aws_config/__init__.py +28 -51
- aws_cdk/aws_connectcampaigns/__init__.py +5 -6
- aws_cdk/aws_databrew/__init__.py +5 -6
- aws_cdk/aws_dlm/__init__.py +33 -71
- aws_cdk/aws_docdb/__init__.py +20 -76
- aws_cdk/aws_dynamodb/__init__.py +29 -22
- aws_cdk/aws_ec2/__init__.py +2414 -603
- aws_cdk/aws_ecr/__init__.py +1 -2
- aws_cdk/aws_ecr_assets/__init__.py +27 -14
- aws_cdk/aws_ecs/__init__.py +458 -163
- aws_cdk/aws_ecs_patterns/__init__.py +13 -11
- aws_cdk/aws_eks/__init__.py +13 -8
- aws_cdk/aws_elasticloadbalancing/__init__.py +16 -9
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +142 -82
- aws_cdk/aws_elasticloadbalancingv2_actions/__init__.py +126 -61
- aws_cdk/aws_elasticsearch/__init__.py +0 -7
- aws_cdk/aws_emr/__init__.py +7 -16
- aws_cdk/aws_emrserverless/__init__.py +14 -18
- aws_cdk/aws_events/__init__.py +33 -29
- aws_cdk/aws_events_targets/__init__.py +248 -89
- aws_cdk/aws_frauddetector/__init__.py +3 -4
- aws_cdk/aws_fsx/__init__.py +13 -7
- aws_cdk/aws_gamelift/__init__.py +11 -20
- aws_cdk/aws_grafana/__init__.py +4 -4
- aws_cdk/aws_iam/__init__.py +21 -25
- aws_cdk/aws_imagebuilder/__init__.py +58 -80
- aws_cdk/aws_internetmonitor/__init__.py +18 -10
- aws_cdk/aws_iot/__init__.py +16 -10
- aws_cdk/aws_iotcoredeviceadvisor/__init__.py +16 -26
- aws_cdk/aws_iotevents/__init__.py +6 -4
- aws_cdk/aws_iotfleetwise/__init__.py +27 -40
- aws_cdk/aws_iotsitewise/__init__.py +8 -5
- aws_cdk/aws_iotwireless/__init__.py +14 -9
- aws_cdk/aws_kinesisfirehose/__init__.py +21 -38
- aws_cdk/aws_lambda/__init__.py +76 -53
- aws_cdk/aws_lambda_event_sources/__init__.py +6 -21
- aws_cdk/aws_logs/__init__.py +5 -7
- aws_cdk/aws_macie/__init__.py +28 -23
- aws_cdk/aws_mediaconnect/__init__.py +5 -8
- aws_cdk/aws_mediaconvert/__init__.py +2 -2
- aws_cdk/aws_medialive/__init__.py +2 -4
- aws_cdk/aws_mediapackage/__init__.py +9 -18
- aws_cdk/aws_memorydb/__init__.py +5 -10
- aws_cdk/aws_mwaa/__init__.py +8 -4
- aws_cdk/aws_neptune/__init__.py +4 -4
- aws_cdk/aws_networkfirewall/__init__.py +8 -4
- aws_cdk/aws_networkmanager/__init__.py +4 -4
- aws_cdk/aws_nimblestudio/__init__.py +25 -45
- aws_cdk/aws_opensearchservice/__init__.py +0 -1
- aws_cdk/aws_panorama/__init__.py +11 -12
- aws_cdk/aws_personalize/__init__.py +46 -72
- aws_cdk/aws_pinpoint/__init__.py +36 -65
- aws_cdk/aws_quicksight/__init__.py +9972 -13374
- aws_cdk/aws_rds/__init__.py +53 -22
- aws_cdk/aws_route53/__init__.py +8 -16
- aws_cdk/aws_route53_targets/__init__.py +2 -4
- aws_cdk/aws_s3/__init__.py +41 -90
- aws_cdk/aws_s3_notifications/__init__.py +0 -3
- aws_cdk/aws_sagemaker/__init__.py +16 -10
- aws_cdk/aws_secretsmanager/__init__.py +17 -14
- aws_cdk/aws_servicecatalog/__init__.py +60 -83
- aws_cdk/aws_servicediscovery/__init__.py +4 -6
- aws_cdk/aws_ses/__init__.py +734 -28
- aws_cdk/aws_sns/__init__.py +4 -8
- aws_cdk/aws_ssm/__init__.py +19 -23
- aws_cdk/aws_ssmcontacts/__init__.py +10 -6
- aws_cdk/aws_ssmincidents/__init__.py +2 -1
- aws_cdk/aws_sso/__init__.py +4 -4
- aws_cdk/aws_stepfunctions/__init__.py +6 -15
- aws_cdk/aws_stepfunctions_tasks/__init__.py +51 -24
- aws_cdk/aws_timestream/__init__.py +22 -28
- aws_cdk/aws_transfer/__init__.py +188 -86
- aws_cdk/aws_wafv2/__init__.py +54 -38
- aws_cdk/aws_xray/__init__.py +15 -22
- aws_cdk/cloud_assembly_schema/__init__.py +14 -6
- aws_cdk/custom_resources/__init__.py +2 -3
- aws_cdk/pipelines/__init__.py +104 -134
- aws_cdk/triggers/__init__.py +46 -61
- {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/METADATA +47 -92
- {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/RECORD +111 -111
- {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_ses/__init__.py
CHANGED
|
@@ -136,6 +136,18 @@ ses.ConfigurationSet(self, "ConfigurationSet",
|
|
|
136
136
|
)
|
|
137
137
|
```
|
|
138
138
|
|
|
139
|
+
Use `addEventDestination()` to publish email sending events to Amazon SNS or Amazon CloudWatch:
|
|
140
|
+
|
|
141
|
+
```python
|
|
142
|
+
# my_configuration_set: ses.ConfigurationSet
|
|
143
|
+
# my_topic: sns.Topic
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
my_configuration_set.add_event_destination("ToSns",
|
|
147
|
+
destination=ses.EventDestination.sns_topic(my_topic)
|
|
148
|
+
)
|
|
149
|
+
```
|
|
150
|
+
|
|
139
151
|
### Email identity
|
|
140
152
|
|
|
141
153
|
In Amazon SES, a verified identity is a domain or email address that you use to send or receive email. Before you
|
|
@@ -146,11 +158,10 @@ helps prevent unauthorized use.
|
|
|
146
158
|
To verify an identity for a hosted zone, you create an `EmailIdentity`:
|
|
147
159
|
|
|
148
160
|
```python
|
|
149
|
-
# Example automatically generated from non-compiling source. May contain errors.
|
|
150
161
|
# my_hosted_zone: route53.IPublicHostedZone
|
|
151
162
|
|
|
152
163
|
|
|
153
|
-
identity = ses.EmailIdentity(
|
|
164
|
+
identity = ses.EmailIdentity(self, "Identity",
|
|
154
165
|
identity=ses.Identity.public_hosted_zone(my_hosted_zone),
|
|
155
166
|
mail_from_domain="mail.cdk.dev"
|
|
156
167
|
)
|
|
@@ -163,13 +174,12 @@ You can instead configure DKIM authentication by using your own public-private k
|
|
|
163
174
|
as [Bring Your Own DKIM (BYODKIM)](https://docs.aws.amazon.com/ses/latest/dg/send-email-authentication-dkim-bring-your-own.html):
|
|
164
175
|
|
|
165
176
|
```python
|
|
166
|
-
# Example automatically generated from non-compiling source. May contain errors.
|
|
167
177
|
# my_hosted_zone: route53.IPublicHostedZone
|
|
168
178
|
|
|
169
179
|
|
|
170
|
-
ses.EmailIdentity(
|
|
180
|
+
ses.EmailIdentity(self, "Identity",
|
|
171
181
|
identity=ses.Identity.public_hosted_zone(my_hosted_zone),
|
|
172
|
-
dkim_identity=DkimIdentity.byo_dkim(
|
|
182
|
+
dkim_identity=ses.DkimIdentity.byo_dkim(
|
|
173
183
|
private_key=SecretValue.secrets_manager("dkim-private-key"),
|
|
174
184
|
public_key="...base64-encoded-public-key...",
|
|
175
185
|
selector="selector"
|
|
@@ -186,8 +196,7 @@ When using `publicHostedZone()` for the identity, all necessary Amazon Route 53
|
|
|
186
196
|
When working with `domain()`, records must be created manually:
|
|
187
197
|
|
|
188
198
|
```python
|
|
189
|
-
|
|
190
|
-
identity = ses.EmailIdentity(stack, "Identity",
|
|
199
|
+
identity = ses.EmailIdentity(self, "Identity",
|
|
191
200
|
identity=ses.Identity.domain("cdk.dev")
|
|
192
201
|
)
|
|
193
202
|
|
|
@@ -236,6 +245,7 @@ from .. import (
|
|
|
236
245
|
TreeInspector as _TreeInspector_488e0dd5,
|
|
237
246
|
)
|
|
238
247
|
from ..aws_route53 import IPublicHostedZone as _IPublicHostedZone_9b6e7da4
|
|
248
|
+
from ..aws_sns import ITopic as _ITopic_9eca4852
|
|
239
249
|
|
|
240
250
|
|
|
241
251
|
@jsii.data_type(
|
|
@@ -546,23 +556,20 @@ class ByoDkimOptions:
|
|
|
546
556
|
:param selector: A string that's used to identify a public key in the DNS configuration for a domain.
|
|
547
557
|
:param public_key: The public key. If specified, a TXT record with the public key is created. Default: - the validation TXT record with the public key is not created
|
|
548
558
|
|
|
549
|
-
:exampleMetadata:
|
|
559
|
+
:exampleMetadata: infused
|
|
550
560
|
|
|
551
561
|
Example::
|
|
552
562
|
|
|
553
|
-
#
|
|
554
|
-
# The values are placeholders you should change.
|
|
555
|
-
import aws_cdk as cdk
|
|
556
|
-
from aws_cdk import aws_ses as ses
|
|
557
|
-
|
|
558
|
-
# secret_value: cdk.SecretValue
|
|
563
|
+
# my_hosted_zone: route53.IPublicHostedZone
|
|
559
564
|
|
|
560
|
-
byo_dkim_options = ses.ByoDkimOptions(
|
|
561
|
-
private_key=secret_value,
|
|
562
|
-
selector="selector",
|
|
563
565
|
|
|
564
|
-
|
|
565
|
-
|
|
566
|
+
ses.EmailIdentity(self, "Identity",
|
|
567
|
+
identity=ses.Identity.public_hosted_zone(my_hosted_zone),
|
|
568
|
+
dkim_identity=ses.DkimIdentity.byo_dkim(
|
|
569
|
+
private_key=SecretValue.secrets_manager("dkim-private-key"),
|
|
570
|
+
public_key="...base64-encoded-public-key...",
|
|
571
|
+
selector="selector"
|
|
572
|
+
)
|
|
566
573
|
)
|
|
567
574
|
'''
|
|
568
575
|
if __debug__:
|
|
@@ -6333,6 +6340,331 @@ class CfnVdmAttributesProps:
|
|
|
6333
6340
|
)
|
|
6334
6341
|
|
|
6335
6342
|
|
|
6343
|
+
@jsii.data_type(
|
|
6344
|
+
jsii_type="aws-cdk-lib.aws_ses.CloudWatchDimension",
|
|
6345
|
+
jsii_struct_bases=[],
|
|
6346
|
+
name_mapping={"default_value": "defaultValue", "name": "name", "source": "source"},
|
|
6347
|
+
)
|
|
6348
|
+
class CloudWatchDimension:
|
|
6349
|
+
def __init__(
|
|
6350
|
+
self,
|
|
6351
|
+
*,
|
|
6352
|
+
default_value: builtins.str,
|
|
6353
|
+
name: builtins.str,
|
|
6354
|
+
source: "CloudWatchDimensionSource",
|
|
6355
|
+
) -> None:
|
|
6356
|
+
'''A CloudWatch dimension upon which to categorize your emails.
|
|
6357
|
+
|
|
6358
|
+
:param default_value: The default value of the dimension that is published to Amazon CloudWatch if you do not provide the value of the dimension when you send an email.
|
|
6359
|
+
:param name: The name of an Amazon CloudWatch dimension associated with an email sending metric.
|
|
6360
|
+
:param source: The place where Amazon SES finds the value of a dimension to publish to Amazon CloudWatch.
|
|
6361
|
+
|
|
6362
|
+
:exampleMetadata: fixture=_generated
|
|
6363
|
+
|
|
6364
|
+
Example::
|
|
6365
|
+
|
|
6366
|
+
# The code below shows an example of how to instantiate this type.
|
|
6367
|
+
# The values are placeholders you should change.
|
|
6368
|
+
from aws_cdk import aws_ses as ses
|
|
6369
|
+
|
|
6370
|
+
cloud_watch_dimension = ses.CloudWatchDimension(
|
|
6371
|
+
default_value="defaultValue",
|
|
6372
|
+
name="name",
|
|
6373
|
+
source=ses.CloudWatchDimensionSource.EMAIL_HEADER
|
|
6374
|
+
)
|
|
6375
|
+
'''
|
|
6376
|
+
if __debug__:
|
|
6377
|
+
type_hints = typing.get_type_hints(_typecheckingstub__c718e80d3dd746209ff12fd14d08ce529bed18f85e0af362c1a2df8b5adc173a)
|
|
6378
|
+
check_type(argname="argument default_value", value=default_value, expected_type=type_hints["default_value"])
|
|
6379
|
+
check_type(argname="argument name", value=name, expected_type=type_hints["name"])
|
|
6380
|
+
check_type(argname="argument source", value=source, expected_type=type_hints["source"])
|
|
6381
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
6382
|
+
"default_value": default_value,
|
|
6383
|
+
"name": name,
|
|
6384
|
+
"source": source,
|
|
6385
|
+
}
|
|
6386
|
+
|
|
6387
|
+
@builtins.property
|
|
6388
|
+
def default_value(self) -> builtins.str:
|
|
6389
|
+
'''The default value of the dimension that is published to Amazon CloudWatch if you do not provide the value of the dimension when you send an email.'''
|
|
6390
|
+
result = self._values.get("default_value")
|
|
6391
|
+
assert result is not None, "Required property 'default_value' is missing"
|
|
6392
|
+
return typing.cast(builtins.str, result)
|
|
6393
|
+
|
|
6394
|
+
@builtins.property
|
|
6395
|
+
def name(self) -> builtins.str:
|
|
6396
|
+
'''The name of an Amazon CloudWatch dimension associated with an email sending metric.'''
|
|
6397
|
+
result = self._values.get("name")
|
|
6398
|
+
assert result is not None, "Required property 'name' is missing"
|
|
6399
|
+
return typing.cast(builtins.str, result)
|
|
6400
|
+
|
|
6401
|
+
@builtins.property
|
|
6402
|
+
def source(self) -> "CloudWatchDimensionSource":
|
|
6403
|
+
'''The place where Amazon SES finds the value of a dimension to publish to Amazon CloudWatch.'''
|
|
6404
|
+
result = self._values.get("source")
|
|
6405
|
+
assert result is not None, "Required property 'source' is missing"
|
|
6406
|
+
return typing.cast("CloudWatchDimensionSource", result)
|
|
6407
|
+
|
|
6408
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
6409
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
6410
|
+
|
|
6411
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
6412
|
+
return not (rhs == self)
|
|
6413
|
+
|
|
6414
|
+
def __repr__(self) -> str:
|
|
6415
|
+
return "CloudWatchDimension(%s)" % ", ".join(
|
|
6416
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
6417
|
+
)
|
|
6418
|
+
|
|
6419
|
+
|
|
6420
|
+
@jsii.enum(jsii_type="aws-cdk-lib.aws_ses.CloudWatchDimensionSource")
|
|
6421
|
+
class CloudWatchDimensionSource(enum.Enum):
|
|
6422
|
+
'''Source for CloudWatch dimension.'''
|
|
6423
|
+
|
|
6424
|
+
EMAIL_HEADER = "EMAIL_HEADER"
|
|
6425
|
+
'''Amazon SES retrieves the dimension name and value from a header in the email.
|
|
6426
|
+
|
|
6427
|
+
Note: You can't use any of the following email headers as the Dimension Name:
|
|
6428
|
+
``Received``, ``To``, ``From``, ``DKIM-Signature``, ``CC``, ``message-id``, or ``Return-Path``.
|
|
6429
|
+
'''
|
|
6430
|
+
LINK_TAG = "LINK_TAG"
|
|
6431
|
+
'''Amazon SES retrieves the dimension name and value from a tag that you specified in a link.
|
|
6432
|
+
|
|
6433
|
+
:see: https://docs.aws.amazon.com/ses/latest/dg/faqs-metrics.html#sending-metric-faqs-clicks-q5
|
|
6434
|
+
'''
|
|
6435
|
+
MESSAGE_TAG = "MESSAGE_TAG"
|
|
6436
|
+
'''Amazon SES retrieves the dimension name and value from a tag that you specify by using the ``X-SES-MESSAGE-TAGS`` header or the Tags API parameter.
|
|
6437
|
+
|
|
6438
|
+
You can also use the Message Tag value source to create dimensions based on Amazon SES auto-tags.
|
|
6439
|
+
To use an auto-tag, type the complete name of the auto-tag as the Dimension Name. For example,
|
|
6440
|
+
to create a dimension based on the configuration set auto-tag, use ``ses:configuration-set`` for the
|
|
6441
|
+
Dimension Name, and the name of the configuration set for the Default Value.
|
|
6442
|
+
|
|
6443
|
+
:see: https://docs.aws.amazon.com/ses/latest/dg/monitor-using-event-publishing.html#event-publishing-how-works
|
|
6444
|
+
'''
|
|
6445
|
+
|
|
6446
|
+
|
|
6447
|
+
@jsii.data_type(
|
|
6448
|
+
jsii_type="aws-cdk-lib.aws_ses.ConfigurationSetEventDestinationOptions",
|
|
6449
|
+
jsii_struct_bases=[],
|
|
6450
|
+
name_mapping={
|
|
6451
|
+
"destination": "destination",
|
|
6452
|
+
"configuration_set_event_destination_name": "configurationSetEventDestinationName",
|
|
6453
|
+
"enabled": "enabled",
|
|
6454
|
+
"events": "events",
|
|
6455
|
+
},
|
|
6456
|
+
)
|
|
6457
|
+
class ConfigurationSetEventDestinationOptions:
|
|
6458
|
+
def __init__(
|
|
6459
|
+
self,
|
|
6460
|
+
*,
|
|
6461
|
+
destination: "EventDestination",
|
|
6462
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
6463
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
6464
|
+
events: typing.Optional[typing.Sequence["EmailSendingEvent"]] = None,
|
|
6465
|
+
) -> None:
|
|
6466
|
+
'''Options for a configuration set event destination.
|
|
6467
|
+
|
|
6468
|
+
:param destination: The event destination.
|
|
6469
|
+
:param configuration_set_event_destination_name: A name for the configuration set event destination. Default: - a CloudFormation generated name
|
|
6470
|
+
:param enabled: Whether Amazon SES publishes events to this destination. Default: true
|
|
6471
|
+
:param events: The type of email sending events to publish to the event destination. Default: - send all event types
|
|
6472
|
+
|
|
6473
|
+
:exampleMetadata: infused
|
|
6474
|
+
|
|
6475
|
+
Example::
|
|
6476
|
+
|
|
6477
|
+
# my_configuration_set: ses.ConfigurationSet
|
|
6478
|
+
# my_topic: sns.Topic
|
|
6479
|
+
|
|
6480
|
+
|
|
6481
|
+
my_configuration_set.add_event_destination("ToSns",
|
|
6482
|
+
destination=ses.EventDestination.sns_topic(my_topic)
|
|
6483
|
+
)
|
|
6484
|
+
'''
|
|
6485
|
+
if __debug__:
|
|
6486
|
+
type_hints = typing.get_type_hints(_typecheckingstub__80b5162c2d2ea9081e7450a4b5db43212eaf82f433a217fb2be6e012977034b6)
|
|
6487
|
+
check_type(argname="argument destination", value=destination, expected_type=type_hints["destination"])
|
|
6488
|
+
check_type(argname="argument configuration_set_event_destination_name", value=configuration_set_event_destination_name, expected_type=type_hints["configuration_set_event_destination_name"])
|
|
6489
|
+
check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
|
|
6490
|
+
check_type(argname="argument events", value=events, expected_type=type_hints["events"])
|
|
6491
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
6492
|
+
"destination": destination,
|
|
6493
|
+
}
|
|
6494
|
+
if configuration_set_event_destination_name is not None:
|
|
6495
|
+
self._values["configuration_set_event_destination_name"] = configuration_set_event_destination_name
|
|
6496
|
+
if enabled is not None:
|
|
6497
|
+
self._values["enabled"] = enabled
|
|
6498
|
+
if events is not None:
|
|
6499
|
+
self._values["events"] = events
|
|
6500
|
+
|
|
6501
|
+
@builtins.property
|
|
6502
|
+
def destination(self) -> "EventDestination":
|
|
6503
|
+
'''The event destination.'''
|
|
6504
|
+
result = self._values.get("destination")
|
|
6505
|
+
assert result is not None, "Required property 'destination' is missing"
|
|
6506
|
+
return typing.cast("EventDestination", result)
|
|
6507
|
+
|
|
6508
|
+
@builtins.property
|
|
6509
|
+
def configuration_set_event_destination_name(self) -> typing.Optional[builtins.str]:
|
|
6510
|
+
'''A name for the configuration set event destination.
|
|
6511
|
+
|
|
6512
|
+
:default: - a CloudFormation generated name
|
|
6513
|
+
'''
|
|
6514
|
+
result = self._values.get("configuration_set_event_destination_name")
|
|
6515
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
6516
|
+
|
|
6517
|
+
@builtins.property
|
|
6518
|
+
def enabled(self) -> typing.Optional[builtins.bool]:
|
|
6519
|
+
'''Whether Amazon SES publishes events to this destination.
|
|
6520
|
+
|
|
6521
|
+
:default: true
|
|
6522
|
+
'''
|
|
6523
|
+
result = self._values.get("enabled")
|
|
6524
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
6525
|
+
|
|
6526
|
+
@builtins.property
|
|
6527
|
+
def events(self) -> typing.Optional[typing.List["EmailSendingEvent"]]:
|
|
6528
|
+
'''The type of email sending events to publish to the event destination.
|
|
6529
|
+
|
|
6530
|
+
:default: - send all event types
|
|
6531
|
+
'''
|
|
6532
|
+
result = self._values.get("events")
|
|
6533
|
+
return typing.cast(typing.Optional[typing.List["EmailSendingEvent"]], result)
|
|
6534
|
+
|
|
6535
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
6536
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
6537
|
+
|
|
6538
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
6539
|
+
return not (rhs == self)
|
|
6540
|
+
|
|
6541
|
+
def __repr__(self) -> str:
|
|
6542
|
+
return "ConfigurationSetEventDestinationOptions(%s)" % ", ".join(
|
|
6543
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
6544
|
+
)
|
|
6545
|
+
|
|
6546
|
+
|
|
6547
|
+
@jsii.data_type(
|
|
6548
|
+
jsii_type="aws-cdk-lib.aws_ses.ConfigurationSetEventDestinationProps",
|
|
6549
|
+
jsii_struct_bases=[ConfigurationSetEventDestinationOptions],
|
|
6550
|
+
name_mapping={
|
|
6551
|
+
"destination": "destination",
|
|
6552
|
+
"configuration_set_event_destination_name": "configurationSetEventDestinationName",
|
|
6553
|
+
"enabled": "enabled",
|
|
6554
|
+
"events": "events",
|
|
6555
|
+
"configuration_set": "configurationSet",
|
|
6556
|
+
},
|
|
6557
|
+
)
|
|
6558
|
+
class ConfigurationSetEventDestinationProps(ConfigurationSetEventDestinationOptions):
|
|
6559
|
+
def __init__(
|
|
6560
|
+
self,
|
|
6561
|
+
*,
|
|
6562
|
+
destination: "EventDestination",
|
|
6563
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
6564
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
6565
|
+
events: typing.Optional[typing.Sequence["EmailSendingEvent"]] = None,
|
|
6566
|
+
configuration_set: "IConfigurationSet",
|
|
6567
|
+
) -> None:
|
|
6568
|
+
'''Properties for a configuration set event destination.
|
|
6569
|
+
|
|
6570
|
+
:param destination: The event destination.
|
|
6571
|
+
:param configuration_set_event_destination_name: A name for the configuration set event destination. Default: - a CloudFormation generated name
|
|
6572
|
+
:param enabled: Whether Amazon SES publishes events to this destination. Default: true
|
|
6573
|
+
:param events: The type of email sending events to publish to the event destination. Default: - send all event types
|
|
6574
|
+
:param configuration_set: The configuration set that contains the event destination.
|
|
6575
|
+
|
|
6576
|
+
:exampleMetadata: fixture=_generated
|
|
6577
|
+
|
|
6578
|
+
Example::
|
|
6579
|
+
|
|
6580
|
+
# The code below shows an example of how to instantiate this type.
|
|
6581
|
+
# The values are placeholders you should change.
|
|
6582
|
+
from aws_cdk import aws_ses as ses
|
|
6583
|
+
|
|
6584
|
+
# configuration_set: ses.ConfigurationSet
|
|
6585
|
+
# event_destination: ses.EventDestination
|
|
6586
|
+
|
|
6587
|
+
configuration_set_event_destination_props = ses.ConfigurationSetEventDestinationProps(
|
|
6588
|
+
configuration_set=configuration_set,
|
|
6589
|
+
destination=event_destination,
|
|
6590
|
+
|
|
6591
|
+
# the properties below are optional
|
|
6592
|
+
configuration_set_event_destination_name="configurationSetEventDestinationName",
|
|
6593
|
+
enabled=False,
|
|
6594
|
+
events=[ses.EmailSendingEvent.SEND]
|
|
6595
|
+
)
|
|
6596
|
+
'''
|
|
6597
|
+
if __debug__:
|
|
6598
|
+
type_hints = typing.get_type_hints(_typecheckingstub__dd3ac4f1af1f2fe9c11fa8894b2eae0f4b13c464b826cffda8b6937f4ab3e9c8)
|
|
6599
|
+
check_type(argname="argument destination", value=destination, expected_type=type_hints["destination"])
|
|
6600
|
+
check_type(argname="argument configuration_set_event_destination_name", value=configuration_set_event_destination_name, expected_type=type_hints["configuration_set_event_destination_name"])
|
|
6601
|
+
check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
|
|
6602
|
+
check_type(argname="argument events", value=events, expected_type=type_hints["events"])
|
|
6603
|
+
check_type(argname="argument configuration_set", value=configuration_set, expected_type=type_hints["configuration_set"])
|
|
6604
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
6605
|
+
"destination": destination,
|
|
6606
|
+
"configuration_set": configuration_set,
|
|
6607
|
+
}
|
|
6608
|
+
if configuration_set_event_destination_name is not None:
|
|
6609
|
+
self._values["configuration_set_event_destination_name"] = configuration_set_event_destination_name
|
|
6610
|
+
if enabled is not None:
|
|
6611
|
+
self._values["enabled"] = enabled
|
|
6612
|
+
if events is not None:
|
|
6613
|
+
self._values["events"] = events
|
|
6614
|
+
|
|
6615
|
+
@builtins.property
|
|
6616
|
+
def destination(self) -> "EventDestination":
|
|
6617
|
+
'''The event destination.'''
|
|
6618
|
+
result = self._values.get("destination")
|
|
6619
|
+
assert result is not None, "Required property 'destination' is missing"
|
|
6620
|
+
return typing.cast("EventDestination", result)
|
|
6621
|
+
|
|
6622
|
+
@builtins.property
|
|
6623
|
+
def configuration_set_event_destination_name(self) -> typing.Optional[builtins.str]:
|
|
6624
|
+
'''A name for the configuration set event destination.
|
|
6625
|
+
|
|
6626
|
+
:default: - a CloudFormation generated name
|
|
6627
|
+
'''
|
|
6628
|
+
result = self._values.get("configuration_set_event_destination_name")
|
|
6629
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
6630
|
+
|
|
6631
|
+
@builtins.property
|
|
6632
|
+
def enabled(self) -> typing.Optional[builtins.bool]:
|
|
6633
|
+
'''Whether Amazon SES publishes events to this destination.
|
|
6634
|
+
|
|
6635
|
+
:default: true
|
|
6636
|
+
'''
|
|
6637
|
+
result = self._values.get("enabled")
|
|
6638
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
6639
|
+
|
|
6640
|
+
@builtins.property
|
|
6641
|
+
def events(self) -> typing.Optional[typing.List["EmailSendingEvent"]]:
|
|
6642
|
+
'''The type of email sending events to publish to the event destination.
|
|
6643
|
+
|
|
6644
|
+
:default: - send all event types
|
|
6645
|
+
'''
|
|
6646
|
+
result = self._values.get("events")
|
|
6647
|
+
return typing.cast(typing.Optional[typing.List["EmailSendingEvent"]], result)
|
|
6648
|
+
|
|
6649
|
+
@builtins.property
|
|
6650
|
+
def configuration_set(self) -> "IConfigurationSet":
|
|
6651
|
+
'''The configuration set that contains the event destination.'''
|
|
6652
|
+
result = self._values.get("configuration_set")
|
|
6653
|
+
assert result is not None, "Required property 'configuration_set' is missing"
|
|
6654
|
+
return typing.cast("IConfigurationSet", result)
|
|
6655
|
+
|
|
6656
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
6657
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
6658
|
+
|
|
6659
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
6660
|
+
return not (rhs == self)
|
|
6661
|
+
|
|
6662
|
+
def __repr__(self) -> str:
|
|
6663
|
+
return "ConfigurationSetEventDestinationProps(%s)" % ", ".join(
|
|
6664
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
6665
|
+
)
|
|
6666
|
+
|
|
6667
|
+
|
|
6336
6668
|
@jsii.data_type(
|
|
6337
6669
|
jsii_type="aws-cdk-lib.aws_ses.ConfigurationSetProps",
|
|
6338
6670
|
jsii_struct_bases=[],
|
|
@@ -6572,13 +6904,12 @@ class DkimIdentity(
|
|
|
6572
6904
|
|
|
6573
6905
|
Example::
|
|
6574
6906
|
|
|
6575
|
-
# Example automatically generated from non-compiling source. May contain errors.
|
|
6576
6907
|
# my_hosted_zone: route53.IPublicHostedZone
|
|
6577
6908
|
|
|
6578
6909
|
|
|
6579
|
-
ses.EmailIdentity(
|
|
6910
|
+
ses.EmailIdentity(self, "Identity",
|
|
6580
6911
|
identity=ses.Identity.public_hosted_zone(my_hosted_zone),
|
|
6581
|
-
dkim_identity=DkimIdentity.byo_dkim(
|
|
6912
|
+
dkim_identity=ses.DkimIdentity.byo_dkim(
|
|
6582
6913
|
private_key=SecretValue.secrets_manager("dkim-private-key"),
|
|
6583
6914
|
public_key="...base64-encoded-public-key...",
|
|
6584
6915
|
selector="selector"
|
|
@@ -6950,11 +7281,10 @@ class EmailIdentityProps:
|
|
|
6950
7281
|
|
|
6951
7282
|
Example::
|
|
6952
7283
|
|
|
6953
|
-
# Example automatically generated from non-compiling source. May contain errors.
|
|
6954
7284
|
# my_hosted_zone: route53.IPublicHostedZone
|
|
6955
7285
|
|
|
6956
7286
|
|
|
6957
|
-
identity = ses.EmailIdentity(
|
|
7287
|
+
identity = ses.EmailIdentity(self, "Identity",
|
|
6958
7288
|
identity=ses.Identity.public_hosted_zone(my_hosted_zone),
|
|
6959
7289
|
mail_from_domain="mail.cdk.dev"
|
|
6960
7290
|
)
|
|
@@ -7075,6 +7405,143 @@ class EmailIdentityProps:
|
|
|
7075
7405
|
)
|
|
7076
7406
|
|
|
7077
7407
|
|
|
7408
|
+
@jsii.enum(jsii_type="aws-cdk-lib.aws_ses.EmailSendingEvent")
|
|
7409
|
+
class EmailSendingEvent(enum.Enum):
|
|
7410
|
+
'''Email sending event.'''
|
|
7411
|
+
|
|
7412
|
+
SEND = "SEND"
|
|
7413
|
+
'''The send request was successful and SES will attempt to deliver the message to the recipient's mail server.
|
|
7414
|
+
|
|
7415
|
+
(If account-level or global suppression is
|
|
7416
|
+
being used, SES will still count it as a send, but delivery is suppressed.)
|
|
7417
|
+
'''
|
|
7418
|
+
REJECT = "REJECT"
|
|
7419
|
+
'''SES accepted the email, but determined that it contained a virus and didn’t attempt to deliver it to the recipient’s mail server.'''
|
|
7420
|
+
BOUNCE = "BOUNCE"
|
|
7421
|
+
'''(Hard bounce) The recipient's mail server permanently rejected the email.
|
|
7422
|
+
|
|
7423
|
+
(Soft bounces are only included when SES fails to deliver the email after
|
|
7424
|
+
retrying for a period of time.)
|
|
7425
|
+
'''
|
|
7426
|
+
COMPLAINT = "COMPLAINT"
|
|
7427
|
+
'''The email was successfully delivered to the recipient’s mail server, but the recipient marked it as spam.'''
|
|
7428
|
+
DELIVERY = "DELIVERY"
|
|
7429
|
+
'''SES successfully delivered the email to the recipient's mail server.'''
|
|
7430
|
+
OPEN = "OPEN"
|
|
7431
|
+
'''The recipient received the message and opened it in their email client.'''
|
|
7432
|
+
CLICK = "CLICK"
|
|
7433
|
+
'''The recipient clicked one or more links in the email.'''
|
|
7434
|
+
RENDERING_FAILURE = "RENDERING_FAILURE"
|
|
7435
|
+
'''The email wasn't sent because of a template rendering issue.
|
|
7436
|
+
|
|
7437
|
+
This event type
|
|
7438
|
+
can occur when template data is missing, or when there is a mismatch between
|
|
7439
|
+
template parameters and data. (This event type only occurs when you send email
|
|
7440
|
+
using the ``SendTemplatedEmail`` or ``SendBulkTemplatedEmail`` API operations.)
|
|
7441
|
+
'''
|
|
7442
|
+
DELIVERY_DELAY = "DELIVERY_DELAY"
|
|
7443
|
+
'''The email couldn't be delivered to the recipient’s mail server because a temporary issue occurred.
|
|
7444
|
+
|
|
7445
|
+
Delivery delays can occur, for example, when the recipient's inbox
|
|
7446
|
+
is full, or when the receiving email server experiences a transient issue.
|
|
7447
|
+
'''
|
|
7448
|
+
SUBSCRIPTION = "SUBSCRIPTION"
|
|
7449
|
+
'''The email was successfully delivered, but the recipient updated their subscription preferences by clicking on an unsubscribe link as part of your subscription management.'''
|
|
7450
|
+
|
|
7451
|
+
|
|
7452
|
+
class EventDestination(
|
|
7453
|
+
metaclass=jsii.JSIIAbstractClass,
|
|
7454
|
+
jsii_type="aws-cdk-lib.aws_ses.EventDestination",
|
|
7455
|
+
):
|
|
7456
|
+
'''An event destination.
|
|
7457
|
+
|
|
7458
|
+
:exampleMetadata: infused
|
|
7459
|
+
|
|
7460
|
+
Example::
|
|
7461
|
+
|
|
7462
|
+
# my_configuration_set: ses.ConfigurationSet
|
|
7463
|
+
# my_topic: sns.Topic
|
|
7464
|
+
|
|
7465
|
+
|
|
7466
|
+
my_configuration_set.add_event_destination("ToSns",
|
|
7467
|
+
destination=ses.EventDestination.sns_topic(my_topic)
|
|
7468
|
+
)
|
|
7469
|
+
'''
|
|
7470
|
+
|
|
7471
|
+
def __init__(self) -> None:
|
|
7472
|
+
jsii.create(self.__class__, self, [])
|
|
7473
|
+
|
|
7474
|
+
@jsii.member(jsii_name="cloudWatchDimensions")
|
|
7475
|
+
@builtins.classmethod
|
|
7476
|
+
def cloud_watch_dimensions(
|
|
7477
|
+
cls,
|
|
7478
|
+
dimensions: typing.Sequence[typing.Union[CloudWatchDimension, typing.Dict[builtins.str, typing.Any]]],
|
|
7479
|
+
) -> "EventDestination":
|
|
7480
|
+
'''Use CloudWatch dimensions as event destination.
|
|
7481
|
+
|
|
7482
|
+
:param dimensions: -
|
|
7483
|
+
'''
|
|
7484
|
+
if __debug__:
|
|
7485
|
+
type_hints = typing.get_type_hints(_typecheckingstub__48f9cce8b82649ed9874f37f0ed571721b324063ca98764a07bb10a451e9fe92)
|
|
7486
|
+
check_type(argname="argument dimensions", value=dimensions, expected_type=type_hints["dimensions"])
|
|
7487
|
+
return typing.cast("EventDestination", jsii.sinvoke(cls, "cloudWatchDimensions", [dimensions]))
|
|
7488
|
+
|
|
7489
|
+
@jsii.member(jsii_name="snsTopic")
|
|
7490
|
+
@builtins.classmethod
|
|
7491
|
+
def sns_topic(cls, topic: _ITopic_9eca4852) -> "EventDestination":
|
|
7492
|
+
'''Use a SNS topic as event destination.
|
|
7493
|
+
|
|
7494
|
+
:param topic: -
|
|
7495
|
+
'''
|
|
7496
|
+
if __debug__:
|
|
7497
|
+
type_hints = typing.get_type_hints(_typecheckingstub__70dbe9528b7fbaa2cbed5b1def55a8c3126fbfed3ee256b878bbb907e4585c9c)
|
|
7498
|
+
check_type(argname="argument topic", value=topic, expected_type=type_hints["topic"])
|
|
7499
|
+
return typing.cast("EventDestination", jsii.sinvoke(cls, "snsTopic", [topic]))
|
|
7500
|
+
|
|
7501
|
+
@builtins.property
|
|
7502
|
+
@jsii.member(jsii_name="dimensions")
|
|
7503
|
+
@abc.abstractmethod
|
|
7504
|
+
def dimensions(self) -> typing.Optional[typing.List[CloudWatchDimension]]:
|
|
7505
|
+
'''A list of CloudWatch dimensions upon which to categorize your emails.
|
|
7506
|
+
|
|
7507
|
+
:default: - do not send events to CloudWatch
|
|
7508
|
+
'''
|
|
7509
|
+
...
|
|
7510
|
+
|
|
7511
|
+
@builtins.property
|
|
7512
|
+
@jsii.member(jsii_name="topic")
|
|
7513
|
+
@abc.abstractmethod
|
|
7514
|
+
def topic(self) -> typing.Optional[_ITopic_9eca4852]:
|
|
7515
|
+
'''A SNS topic to use as event destination.
|
|
7516
|
+
|
|
7517
|
+
:default: - do not send events to a SNS topic
|
|
7518
|
+
'''
|
|
7519
|
+
...
|
|
7520
|
+
|
|
7521
|
+
|
|
7522
|
+
class _EventDestinationProxy(EventDestination):
|
|
7523
|
+
@builtins.property
|
|
7524
|
+
@jsii.member(jsii_name="dimensions")
|
|
7525
|
+
def dimensions(self) -> typing.Optional[typing.List[CloudWatchDimension]]:
|
|
7526
|
+
'''A list of CloudWatch dimensions upon which to categorize your emails.
|
|
7527
|
+
|
|
7528
|
+
:default: - do not send events to CloudWatch
|
|
7529
|
+
'''
|
|
7530
|
+
return typing.cast(typing.Optional[typing.List[CloudWatchDimension]], jsii.get(self, "dimensions"))
|
|
7531
|
+
|
|
7532
|
+
@builtins.property
|
|
7533
|
+
@jsii.member(jsii_name="topic")
|
|
7534
|
+
def topic(self) -> typing.Optional[_ITopic_9eca4852]:
|
|
7535
|
+
'''A SNS topic to use as event destination.
|
|
7536
|
+
|
|
7537
|
+
:default: - do not send events to a SNS topic
|
|
7538
|
+
'''
|
|
7539
|
+
return typing.cast(typing.Optional[_ITopic_9eca4852], jsii.get(self, "topic"))
|
|
7540
|
+
|
|
7541
|
+
# Adding a "__jsii_proxy_class__(): typing.Type" function to the abstract class
|
|
7542
|
+
typing.cast(typing.Any, EventDestination).__jsii_proxy_class__ = lambda : _EventDestinationProxy
|
|
7543
|
+
|
|
7544
|
+
|
|
7078
7545
|
@jsii.interface(jsii_type="aws-cdk-lib.aws_ses.IConfigurationSet")
|
|
7079
7546
|
class IConfigurationSet(_IResource_c80c4260, typing_extensions.Protocol):
|
|
7080
7547
|
'''A configuration set.'''
|
|
@@ -7109,6 +7576,43 @@ class _IConfigurationSetProxy(
|
|
|
7109
7576
|
typing.cast(typing.Any, IConfigurationSet).__jsii_proxy_class__ = lambda : _IConfigurationSetProxy
|
|
7110
7577
|
|
|
7111
7578
|
|
|
7579
|
+
@jsii.interface(jsii_type="aws-cdk-lib.aws_ses.IConfigurationSetEventDestination")
|
|
7580
|
+
class IConfigurationSetEventDestination(
|
|
7581
|
+
_IResource_c80c4260,
|
|
7582
|
+
typing_extensions.Protocol,
|
|
7583
|
+
):
|
|
7584
|
+
'''A configuration set event destination.'''
|
|
7585
|
+
|
|
7586
|
+
@builtins.property
|
|
7587
|
+
@jsii.member(jsii_name="configurationSetEventDestinationId")
|
|
7588
|
+
def configuration_set_event_destination_id(self) -> builtins.str:
|
|
7589
|
+
'''The ID of the configuration set event destination.
|
|
7590
|
+
|
|
7591
|
+
:attribute: true
|
|
7592
|
+
'''
|
|
7593
|
+
...
|
|
7594
|
+
|
|
7595
|
+
|
|
7596
|
+
class _IConfigurationSetEventDestinationProxy(
|
|
7597
|
+
jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
|
|
7598
|
+
):
|
|
7599
|
+
'''A configuration set event destination.'''
|
|
7600
|
+
|
|
7601
|
+
__jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.aws_ses.IConfigurationSetEventDestination"
|
|
7602
|
+
|
|
7603
|
+
@builtins.property
|
|
7604
|
+
@jsii.member(jsii_name="configurationSetEventDestinationId")
|
|
7605
|
+
def configuration_set_event_destination_id(self) -> builtins.str:
|
|
7606
|
+
'''The ID of the configuration set event destination.
|
|
7607
|
+
|
|
7608
|
+
:attribute: true
|
|
7609
|
+
'''
|
|
7610
|
+
return typing.cast(builtins.str, jsii.get(self, "configurationSetEventDestinationId"))
|
|
7611
|
+
|
|
7612
|
+
# Adding a "__jsii_proxy_class__(): typing.Type" function to the interface
|
|
7613
|
+
typing.cast(typing.Any, IConfigurationSetEventDestination).__jsii_proxy_class__ = lambda : _IConfigurationSetEventDestinationProxy
|
|
7614
|
+
|
|
7615
|
+
|
|
7112
7616
|
@jsii.interface(jsii_type="aws-cdk-lib.aws_ses.IDedicatedIpPool")
|
|
7113
7617
|
class IDedicatedIpPool(_IResource_c80c4260, typing_extensions.Protocol):
|
|
7114
7618
|
'''A dedicated IP pool.'''
|
|
@@ -7393,11 +7897,10 @@ class Identity(
|
|
|
7393
7897
|
|
|
7394
7898
|
Example::
|
|
7395
7899
|
|
|
7396
|
-
# Example automatically generated from non-compiling source. May contain errors.
|
|
7397
7900
|
# my_hosted_zone: route53.IPublicHostedZone
|
|
7398
7901
|
|
|
7399
7902
|
|
|
7400
|
-
identity = ses.EmailIdentity(
|
|
7903
|
+
identity = ses.EmailIdentity(self, "Identity",
|
|
7401
7904
|
identity=ses.Identity.public_hosted_zone(my_hosted_zone),
|
|
7402
7905
|
mail_from_domain="mail.cdk.dev"
|
|
7403
7906
|
)
|
|
@@ -9183,6 +9686,36 @@ class ConfigurationSet(
|
|
|
9183
9686
|
check_type(argname="argument configuration_set_name", value=configuration_set_name, expected_type=type_hints["configuration_set_name"])
|
|
9184
9687
|
return typing.cast(IConfigurationSet, jsii.sinvoke(cls, "fromConfigurationSetName", [scope, id, configuration_set_name]))
|
|
9185
9688
|
|
|
9689
|
+
@jsii.member(jsii_name="addEventDestination")
|
|
9690
|
+
def add_event_destination(
|
|
9691
|
+
self,
|
|
9692
|
+
id: builtins.str,
|
|
9693
|
+
*,
|
|
9694
|
+
destination: EventDestination,
|
|
9695
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
9696
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
9697
|
+
events: typing.Optional[typing.Sequence[EmailSendingEvent]] = None,
|
|
9698
|
+
) -> "ConfigurationSetEventDestination":
|
|
9699
|
+
'''Adds an event destination to this configuration set.
|
|
9700
|
+
|
|
9701
|
+
:param id: -
|
|
9702
|
+
:param destination: The event destination.
|
|
9703
|
+
:param configuration_set_event_destination_name: A name for the configuration set event destination. Default: - a CloudFormation generated name
|
|
9704
|
+
:param enabled: Whether Amazon SES publishes events to this destination. Default: true
|
|
9705
|
+
:param events: The type of email sending events to publish to the event destination. Default: - send all event types
|
|
9706
|
+
'''
|
|
9707
|
+
if __debug__:
|
|
9708
|
+
type_hints = typing.get_type_hints(_typecheckingstub__969c3bbc0e7891ce9eb910e67644f0f9bcb29f65f5ec021df94eed425cb0d707)
|
|
9709
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
9710
|
+
options = ConfigurationSetEventDestinationOptions(
|
|
9711
|
+
destination=destination,
|
|
9712
|
+
configuration_set_event_destination_name=configuration_set_event_destination_name,
|
|
9713
|
+
enabled=enabled,
|
|
9714
|
+
events=events,
|
|
9715
|
+
)
|
|
9716
|
+
|
|
9717
|
+
return typing.cast("ConfigurationSetEventDestination", jsii.invoke(self, "addEventDestination", [id, options]))
|
|
9718
|
+
|
|
9186
9719
|
@builtins.property
|
|
9187
9720
|
@jsii.member(jsii_name="configurationSetName")
|
|
9188
9721
|
def configuration_set_name(self) -> builtins.str:
|
|
@@ -9190,6 +9723,98 @@ class ConfigurationSet(
|
|
|
9190
9723
|
return typing.cast(builtins.str, jsii.get(self, "configurationSetName"))
|
|
9191
9724
|
|
|
9192
9725
|
|
|
9726
|
+
@jsii.implements(IConfigurationSetEventDestination)
|
|
9727
|
+
class ConfigurationSetEventDestination(
|
|
9728
|
+
_Resource_45bc6135,
|
|
9729
|
+
metaclass=jsii.JSIIMeta,
|
|
9730
|
+
jsii_type="aws-cdk-lib.aws_ses.ConfigurationSetEventDestination",
|
|
9731
|
+
):
|
|
9732
|
+
'''A configuration set event destination.
|
|
9733
|
+
|
|
9734
|
+
:exampleMetadata: fixture=_generated
|
|
9735
|
+
|
|
9736
|
+
Example::
|
|
9737
|
+
|
|
9738
|
+
# The code below shows an example of how to instantiate this type.
|
|
9739
|
+
# The values are placeholders you should change.
|
|
9740
|
+
from aws_cdk import aws_ses as ses
|
|
9741
|
+
|
|
9742
|
+
# configuration_set: ses.ConfigurationSet
|
|
9743
|
+
# event_destination: ses.EventDestination
|
|
9744
|
+
|
|
9745
|
+
configuration_set_event_destination = ses.ConfigurationSetEventDestination(self, "MyConfigurationSetEventDestination",
|
|
9746
|
+
configuration_set=configuration_set,
|
|
9747
|
+
destination=event_destination,
|
|
9748
|
+
|
|
9749
|
+
# the properties below are optional
|
|
9750
|
+
configuration_set_event_destination_name="configurationSetEventDestinationName",
|
|
9751
|
+
enabled=False,
|
|
9752
|
+
events=[ses.EmailSendingEvent.SEND]
|
|
9753
|
+
)
|
|
9754
|
+
'''
|
|
9755
|
+
|
|
9756
|
+
def __init__(
|
|
9757
|
+
self,
|
|
9758
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
9759
|
+
id: builtins.str,
|
|
9760
|
+
*,
|
|
9761
|
+
configuration_set: IConfigurationSet,
|
|
9762
|
+
destination: EventDestination,
|
|
9763
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
9764
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
9765
|
+
events: typing.Optional[typing.Sequence[EmailSendingEvent]] = None,
|
|
9766
|
+
) -> None:
|
|
9767
|
+
'''
|
|
9768
|
+
:param scope: -
|
|
9769
|
+
:param id: -
|
|
9770
|
+
:param configuration_set: The configuration set that contains the event destination.
|
|
9771
|
+
:param destination: The event destination.
|
|
9772
|
+
:param configuration_set_event_destination_name: A name for the configuration set event destination. Default: - a CloudFormation generated name
|
|
9773
|
+
:param enabled: Whether Amazon SES publishes events to this destination. Default: true
|
|
9774
|
+
:param events: The type of email sending events to publish to the event destination. Default: - send all event types
|
|
9775
|
+
'''
|
|
9776
|
+
if __debug__:
|
|
9777
|
+
type_hints = typing.get_type_hints(_typecheckingstub__cf213dc05e866bbe3e9422388bafa084e54ef674803fa10657e5b96b908d6965)
|
|
9778
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
9779
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
9780
|
+
props = ConfigurationSetEventDestinationProps(
|
|
9781
|
+
configuration_set=configuration_set,
|
|
9782
|
+
destination=destination,
|
|
9783
|
+
configuration_set_event_destination_name=configuration_set_event_destination_name,
|
|
9784
|
+
enabled=enabled,
|
|
9785
|
+
events=events,
|
|
9786
|
+
)
|
|
9787
|
+
|
|
9788
|
+
jsii.create(self.__class__, self, [scope, id, props])
|
|
9789
|
+
|
|
9790
|
+
@jsii.member(jsii_name="fromConfigurationSetEventDestinationId")
|
|
9791
|
+
@builtins.classmethod
|
|
9792
|
+
def from_configuration_set_event_destination_id(
|
|
9793
|
+
cls,
|
|
9794
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
9795
|
+
id: builtins.str,
|
|
9796
|
+
configuration_set_event_destination_id: builtins.str,
|
|
9797
|
+
) -> IConfigurationSetEventDestination:
|
|
9798
|
+
'''Use an existing configuration set.
|
|
9799
|
+
|
|
9800
|
+
:param scope: -
|
|
9801
|
+
:param id: -
|
|
9802
|
+
:param configuration_set_event_destination_id: -
|
|
9803
|
+
'''
|
|
9804
|
+
if __debug__:
|
|
9805
|
+
type_hints = typing.get_type_hints(_typecheckingstub__4740349c6047d2ad783d767c6424ac19156d882d3534207b1440beda62370433)
|
|
9806
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
9807
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
9808
|
+
check_type(argname="argument configuration_set_event_destination_id", value=configuration_set_event_destination_id, expected_type=type_hints["configuration_set_event_destination_id"])
|
|
9809
|
+
return typing.cast(IConfigurationSetEventDestination, jsii.sinvoke(cls, "fromConfigurationSetEventDestinationId", [scope, id, configuration_set_event_destination_id]))
|
|
9810
|
+
|
|
9811
|
+
@builtins.property
|
|
9812
|
+
@jsii.member(jsii_name="configurationSetEventDestinationId")
|
|
9813
|
+
def configuration_set_event_destination_id(self) -> builtins.str:
|
|
9814
|
+
'''The ID of the configuration set event destination.'''
|
|
9815
|
+
return typing.cast(builtins.str, jsii.get(self, "configurationSetEventDestinationId"))
|
|
9816
|
+
|
|
9817
|
+
|
|
9193
9818
|
@jsii.implements(IDedicatedIpPool)
|
|
9194
9819
|
class DedicatedIpPool(
|
|
9195
9820
|
_Resource_45bc6135,
|
|
@@ -9437,11 +10062,10 @@ class EmailIdentity(
|
|
|
9437
10062
|
|
|
9438
10063
|
Example::
|
|
9439
10064
|
|
|
9440
|
-
# Example automatically generated from non-compiling source. May contain errors.
|
|
9441
10065
|
# my_hosted_zone: route53.IPublicHostedZone
|
|
9442
10066
|
|
|
9443
10067
|
|
|
9444
|
-
identity = ses.EmailIdentity(
|
|
10068
|
+
identity = ses.EmailIdentity(self, "Identity",
|
|
9445
10069
|
identity=ses.Identity.public_hosted_zone(my_hosted_zone),
|
|
9446
10070
|
mail_from_domain="mail.cdk.dev"
|
|
9447
10071
|
)
|
|
@@ -9601,7 +10225,12 @@ __all__ = [
|
|
|
9601
10225
|
"CfnTemplateProps",
|
|
9602
10226
|
"CfnVdmAttributes",
|
|
9603
10227
|
"CfnVdmAttributesProps",
|
|
10228
|
+
"CloudWatchDimension",
|
|
10229
|
+
"CloudWatchDimensionSource",
|
|
9604
10230
|
"ConfigurationSet",
|
|
10231
|
+
"ConfigurationSetEventDestination",
|
|
10232
|
+
"ConfigurationSetEventDestinationOptions",
|
|
10233
|
+
"ConfigurationSetEventDestinationProps",
|
|
9605
10234
|
"ConfigurationSetProps",
|
|
9606
10235
|
"ConfigurationSetTlsPolicy",
|
|
9607
10236
|
"DedicatedIpPool",
|
|
@@ -9614,7 +10243,10 @@ __all__ = [
|
|
|
9614
10243
|
"EasyDkimSigningKeyLength",
|
|
9615
10244
|
"EmailIdentity",
|
|
9616
10245
|
"EmailIdentityProps",
|
|
10246
|
+
"EmailSendingEvent",
|
|
10247
|
+
"EventDestination",
|
|
9617
10248
|
"IConfigurationSet",
|
|
10249
|
+
"IConfigurationSetEventDestination",
|
|
9618
10250
|
"IDedicatedIpPool",
|
|
9619
10251
|
"IEmailIdentity",
|
|
9620
10252
|
"IReceiptRule",
|
|
@@ -10451,6 +11083,36 @@ def _typecheckingstub__05720eed835713353d777877a75758a4e172dae5b79690ea107edcb7c
|
|
|
10451
11083
|
"""Type checking stubs"""
|
|
10452
11084
|
pass
|
|
10453
11085
|
|
|
11086
|
+
def _typecheckingstub__c718e80d3dd746209ff12fd14d08ce529bed18f85e0af362c1a2df8b5adc173a(
|
|
11087
|
+
*,
|
|
11088
|
+
default_value: builtins.str,
|
|
11089
|
+
name: builtins.str,
|
|
11090
|
+
source: CloudWatchDimensionSource,
|
|
11091
|
+
) -> None:
|
|
11092
|
+
"""Type checking stubs"""
|
|
11093
|
+
pass
|
|
11094
|
+
|
|
11095
|
+
def _typecheckingstub__80b5162c2d2ea9081e7450a4b5db43212eaf82f433a217fb2be6e012977034b6(
|
|
11096
|
+
*,
|
|
11097
|
+
destination: EventDestination,
|
|
11098
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
11099
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
11100
|
+
events: typing.Optional[typing.Sequence[EmailSendingEvent]] = None,
|
|
11101
|
+
) -> None:
|
|
11102
|
+
"""Type checking stubs"""
|
|
11103
|
+
pass
|
|
11104
|
+
|
|
11105
|
+
def _typecheckingstub__dd3ac4f1af1f2fe9c11fa8894b2eae0f4b13c464b826cffda8b6937f4ab3e9c8(
|
|
11106
|
+
*,
|
|
11107
|
+
destination: EventDestination,
|
|
11108
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
11109
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
11110
|
+
events: typing.Optional[typing.Sequence[EmailSendingEvent]] = None,
|
|
11111
|
+
configuration_set: IConfigurationSet,
|
|
11112
|
+
) -> None:
|
|
11113
|
+
"""Type checking stubs"""
|
|
11114
|
+
pass
|
|
11115
|
+
|
|
10454
11116
|
def _typecheckingstub__fb010161f6c1e40b88122d9cb7754dae093e9cbe5bbfc72b19737729a4f4523d(
|
|
10455
11117
|
*,
|
|
10456
11118
|
configuration_set_name: typing.Optional[builtins.str] = None,
|
|
@@ -10530,6 +11192,18 @@ def _typecheckingstub__53e1ee2f3b565a95ed952bf4ad2ae80cb7388ac4bd51d6eab5219f8a7
|
|
|
10530
11192
|
"""Type checking stubs"""
|
|
10531
11193
|
pass
|
|
10532
11194
|
|
|
11195
|
+
def _typecheckingstub__48f9cce8b82649ed9874f37f0ed571721b324063ca98764a07bb10a451e9fe92(
|
|
11196
|
+
dimensions: typing.Sequence[typing.Union[CloudWatchDimension, typing.Dict[builtins.str, typing.Any]]],
|
|
11197
|
+
) -> None:
|
|
11198
|
+
"""Type checking stubs"""
|
|
11199
|
+
pass
|
|
11200
|
+
|
|
11201
|
+
def _typecheckingstub__70dbe9528b7fbaa2cbed5b1def55a8c3126fbfed3ee256b878bbb907e4585c9c(
|
|
11202
|
+
topic: _ITopic_9eca4852,
|
|
11203
|
+
) -> None:
|
|
11204
|
+
"""Type checking stubs"""
|
|
11205
|
+
pass
|
|
11206
|
+
|
|
10533
11207
|
def _typecheckingstub__1c0b08f3a2fda3c68a4ad951604e55664aeae1537b8b8eb996f95b6feedcf9b5(
|
|
10534
11208
|
receipt_rule: IReceiptRule,
|
|
10535
11209
|
) -> None:
|
|
@@ -10792,6 +11466,38 @@ def _typecheckingstub__2ae99096d05b68163763ffbed7aafa034cd3a774f632bff2370d017f7
|
|
|
10792
11466
|
"""Type checking stubs"""
|
|
10793
11467
|
pass
|
|
10794
11468
|
|
|
11469
|
+
def _typecheckingstub__969c3bbc0e7891ce9eb910e67644f0f9bcb29f65f5ec021df94eed425cb0d707(
|
|
11470
|
+
id: builtins.str,
|
|
11471
|
+
*,
|
|
11472
|
+
destination: EventDestination,
|
|
11473
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
11474
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
11475
|
+
events: typing.Optional[typing.Sequence[EmailSendingEvent]] = None,
|
|
11476
|
+
) -> None:
|
|
11477
|
+
"""Type checking stubs"""
|
|
11478
|
+
pass
|
|
11479
|
+
|
|
11480
|
+
def _typecheckingstub__cf213dc05e866bbe3e9422388bafa084e54ef674803fa10657e5b96b908d6965(
|
|
11481
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
11482
|
+
id: builtins.str,
|
|
11483
|
+
*,
|
|
11484
|
+
configuration_set: IConfigurationSet,
|
|
11485
|
+
destination: EventDestination,
|
|
11486
|
+
configuration_set_event_destination_name: typing.Optional[builtins.str] = None,
|
|
11487
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
11488
|
+
events: typing.Optional[typing.Sequence[EmailSendingEvent]] = None,
|
|
11489
|
+
) -> None:
|
|
11490
|
+
"""Type checking stubs"""
|
|
11491
|
+
pass
|
|
11492
|
+
|
|
11493
|
+
def _typecheckingstub__4740349c6047d2ad783d767c6424ac19156d882d3534207b1440beda62370433(
|
|
11494
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
11495
|
+
id: builtins.str,
|
|
11496
|
+
configuration_set_event_destination_id: builtins.str,
|
|
11497
|
+
) -> None:
|
|
11498
|
+
"""Type checking stubs"""
|
|
11499
|
+
pass
|
|
11500
|
+
|
|
10795
11501
|
def _typecheckingstub__a4f168ec9aad173d023a8ac330a62f7c1ce87601f0a8876e8cbf35c7dcd89ead(
|
|
10796
11502
|
scope: _constructs_77d1e7e8.Construct,
|
|
10797
11503
|
id: builtins.str,
|