aws-sdk-ses 1.0.0.rc1

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.
@@ -0,0 +1,7 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module SES
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module SES
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,3735 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module SES
10
+ module Types
11
+
12
+ # When included in a receipt rule, this action adds a header to the
13
+ # received email.
14
+ #
15
+ # For information about adding a header using a receipt rule, see the
16
+ # [Amazon SES Developer Guide][1].
17
+ #
18
+ #
19
+ #
20
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-add-header.html
21
+ # @note When making an API call, pass AddHeaderAction
22
+ # data as a hash:
23
+ #
24
+ # {
25
+ # header_name: "HeaderName", # required
26
+ # header_value: "HeaderValue", # required
27
+ # }
28
+ # @!attribute [rw] header_name
29
+ # The name of the header to add. Must be between 1 and 50 characters,
30
+ # inclusive, and consist of alphanumeric (a-z, A-Z, 0-9) characters
31
+ # and dashes only.
32
+ # @return [String]
33
+ #
34
+ # @!attribute [rw] header_value
35
+ # Must be less than 2048 characters, and must not contain newline
36
+ # characters ("\\r" or "\\n").
37
+ # @return [String]
38
+ class AddHeaderAction < Struct.new(
39
+ :header_name,
40
+ :header_value)
41
+ include Aws::Structure
42
+ end
43
+
44
+ # Represents the body of the message. You can specify text, HTML, or
45
+ # both. If you use both, then the message should display correctly in
46
+ # the widest variety of email clients.
47
+ # @note When making an API call, pass Body
48
+ # data as a hash:
49
+ #
50
+ # {
51
+ # text: {
52
+ # data: "MessageData", # required
53
+ # charset: "Charset",
54
+ # },
55
+ # html: {
56
+ # data: "MessageData", # required
57
+ # charset: "Charset",
58
+ # },
59
+ # }
60
+ # @!attribute [rw] text
61
+ # The content of the message, in text format. Use this for text-based
62
+ # email clients, or clients on high-latency networks (such as mobile
63
+ # devices).
64
+ # @return [Types::Content]
65
+ #
66
+ # @!attribute [rw] html
67
+ # The content of the message, in HTML format. Use this for email
68
+ # clients that can process HTML. You can include clickable links,
69
+ # formatted text, and much more in an HTML message.
70
+ # @return [Types::Content]
71
+ class Body < Struct.new(
72
+ :text,
73
+ :html)
74
+ include Aws::Structure
75
+ end
76
+
77
+ # When included in a receipt rule, this action rejects the received
78
+ # email by returning a bounce response to the sender and, optionally,
79
+ # publishes a notification to Amazon Simple Notification Service (Amazon
80
+ # SNS).
81
+ #
82
+ # For information about sending a bounce message in response to a
83
+ # received email, see the [Amazon SES Developer Guide][1].
84
+ #
85
+ #
86
+ #
87
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-bounce.html
88
+ # @note When making an API call, pass BounceAction
89
+ # data as a hash:
90
+ #
91
+ # {
92
+ # topic_arn: "AmazonResourceName",
93
+ # smtp_reply_code: "BounceSmtpReplyCode", # required
94
+ # status_code: "BounceStatusCode",
95
+ # message: "BounceMessage", # required
96
+ # sender: "Address", # required
97
+ # }
98
+ # @!attribute [rw] topic_arn
99
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic to notify
100
+ # when the bounce action is taken. An example of an Amazon SNS topic
101
+ # ARN is `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more
102
+ # information about Amazon SNS topics, see the [Amazon SNS Developer
103
+ # Guide][1].
104
+ #
105
+ #
106
+ #
107
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
108
+ # @return [String]
109
+ #
110
+ # @!attribute [rw] smtp_reply_code
111
+ # The SMTP reply code, as defined by [RFC 5321][1].
112
+ #
113
+ #
114
+ #
115
+ # [1]: https://tools.ietf.org/html/rfc5321
116
+ # @return [String]
117
+ #
118
+ # @!attribute [rw] status_code
119
+ # The SMTP enhanced status code, as defined by [RFC 3463][1].
120
+ #
121
+ #
122
+ #
123
+ # [1]: https://tools.ietf.org/html/rfc3463
124
+ # @return [String]
125
+ #
126
+ # @!attribute [rw] message
127
+ # Human-readable text to include in the bounce message.
128
+ # @return [String]
129
+ #
130
+ # @!attribute [rw] sender
131
+ # The email address of the sender of the bounced email. This is the
132
+ # address from which the bounce message will be sent.
133
+ # @return [String]
134
+ class BounceAction < Struct.new(
135
+ :topic_arn,
136
+ :smtp_reply_code,
137
+ :status_code,
138
+ :message,
139
+ :sender)
140
+ include Aws::Structure
141
+ end
142
+
143
+ # Recipient-related information to include in the Delivery Status
144
+ # Notification (DSN) when an email that Amazon SES receives on your
145
+ # behalf bounces.
146
+ #
147
+ # For information about receiving email through Amazon SES, see the
148
+ # [Amazon SES Developer Guide][1].
149
+ #
150
+ #
151
+ #
152
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html
153
+ # @note When making an API call, pass BouncedRecipientInfo
154
+ # data as a hash:
155
+ #
156
+ # {
157
+ # recipient: "Address", # required
158
+ # recipient_arn: "AmazonResourceName",
159
+ # bounce_type: "DoesNotExist", # accepts DoesNotExist, MessageTooLarge, ExceededQuota, ContentRejected, Undefined, TemporaryFailure
160
+ # recipient_dsn_fields: {
161
+ # final_recipient: "Address",
162
+ # action: "failed", # required, accepts failed, delayed, delivered, relayed, expanded
163
+ # remote_mta: "RemoteMta",
164
+ # status: "DsnStatus", # required
165
+ # diagnostic_code: "DiagnosticCode",
166
+ # last_attempt_date: Time.now,
167
+ # extension_fields: [
168
+ # {
169
+ # name: "ExtensionFieldName", # required
170
+ # value: "ExtensionFieldValue", # required
171
+ # },
172
+ # ],
173
+ # },
174
+ # }
175
+ # @!attribute [rw] recipient
176
+ # The email address of the recipient of the bounced email.
177
+ # @return [String]
178
+ #
179
+ # @!attribute [rw] recipient_arn
180
+ # This parameter is used only for sending authorization. It is the ARN
181
+ # of the identity that is associated with the sending authorization
182
+ # policy that permits you to receive email for the recipient of the
183
+ # bounced email. For more information about sending authorization, see
184
+ # the [Amazon SES Developer Guide][1].
185
+ #
186
+ #
187
+ #
188
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
189
+ # @return [String]
190
+ #
191
+ # @!attribute [rw] bounce_type
192
+ # The reason for the bounce. You must provide either this parameter or
193
+ # `RecipientDsnFields`.
194
+ # @return [String]
195
+ #
196
+ # @!attribute [rw] recipient_dsn_fields
197
+ # Recipient-related DSN fields, most of which would normally be filled
198
+ # in automatically when provided with a `BounceType`. You must provide
199
+ # either this parameter or `BounceType`.
200
+ # @return [Types::RecipientDsnFields]
201
+ class BouncedRecipientInfo < Struct.new(
202
+ :recipient,
203
+ :recipient_arn,
204
+ :bounce_type,
205
+ :recipient_dsn_fields)
206
+ include Aws::Structure
207
+ end
208
+
209
+ # Represents a request to create a receipt rule set by cloning an
210
+ # existing one. You use receipt rule sets to receive email with Amazon
211
+ # SES. For more information, see the [Amazon SES Developer Guide][1].
212
+ #
213
+ #
214
+ #
215
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
216
+ # @note When making an API call, pass CloneReceiptRuleSetRequest
217
+ # data as a hash:
218
+ #
219
+ # {
220
+ # rule_set_name: "ReceiptRuleSetName", # required
221
+ # original_rule_set_name: "ReceiptRuleSetName", # required
222
+ # }
223
+ # @!attribute [rw] rule_set_name
224
+ # The name of the rule set to create. The name must:
225
+ #
226
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
227
+ # underscores (\_), or dashes (-).
228
+ #
229
+ # * Start and end with a letter or number.
230
+ #
231
+ # * Contain less than 64 characters.
232
+ # @return [String]
233
+ #
234
+ # @!attribute [rw] original_rule_set_name
235
+ # The name of the rule set to clone.
236
+ # @return [String]
237
+ class CloneReceiptRuleSetRequest < Struct.new(
238
+ :rule_set_name,
239
+ :original_rule_set_name)
240
+ include Aws::Structure
241
+ end
242
+
243
+ # An empty element returned on a successful request.
244
+ class CloneReceiptRuleSetResponse < Aws::EmptyStructure; end
245
+
246
+ # Contains information associated with an Amazon CloudWatch event
247
+ # destination to which email sending events are published.
248
+ #
249
+ # Event destinations, such as Amazon CloudWatch, are associated with
250
+ # configuration sets, which enable you to publish email sending events.
251
+ # For information about using configuration sets, see the [Amazon SES
252
+ # Developer Guide][1].
253
+ #
254
+ #
255
+ #
256
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
257
+ # @note When making an API call, pass CloudWatchDestination
258
+ # data as a hash:
259
+ #
260
+ # {
261
+ # dimension_configurations: [ # required
262
+ # {
263
+ # dimension_name: "DimensionName", # required
264
+ # dimension_value_source: "messageTag", # required, accepts messageTag, emailHeader
265
+ # default_dimension_value: "DefaultDimensionValue", # required
266
+ # },
267
+ # ],
268
+ # }
269
+ # @!attribute [rw] dimension_configurations
270
+ # A list of dimensions upon which to categorize your emails when you
271
+ # publish email sending events to Amazon CloudWatch.
272
+ # @return [Array<Types::CloudWatchDimensionConfiguration>]
273
+ class CloudWatchDestination < Struct.new(
274
+ :dimension_configurations)
275
+ include Aws::Structure
276
+ end
277
+
278
+ # Contains the dimension configuration to use when you publish email
279
+ # sending events to Amazon CloudWatch.
280
+ #
281
+ # For information about publishing email sending events to Amazon
282
+ # CloudWatch, see the [Amazon SES Developer Guide][1].
283
+ #
284
+ #
285
+ #
286
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
287
+ # @note When making an API call, pass CloudWatchDimensionConfiguration
288
+ # data as a hash:
289
+ #
290
+ # {
291
+ # dimension_name: "DimensionName", # required
292
+ # dimension_value_source: "messageTag", # required, accepts messageTag, emailHeader
293
+ # default_dimension_value: "DefaultDimensionValue", # required
294
+ # }
295
+ # @!attribute [rw] dimension_name
296
+ # The name of an Amazon CloudWatch dimension associated with an email
297
+ # sending metric. The name must:
298
+ #
299
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores
300
+ # (\_), or dashes (-).
301
+ #
302
+ # * Contain less than 256 characters.
303
+ # @return [String]
304
+ #
305
+ # @!attribute [rw] dimension_value_source
306
+ # The place where Amazon SES finds the value of a dimension to publish
307
+ # to Amazon CloudWatch. If you want Amazon SES to use the message tags
308
+ # that you specify using an `X-SES-MESSAGE-TAGS` header or a parameter
309
+ # to the `SendEmail`/`SendRawEmail` API, choose `messageTag`. If you
310
+ # want Amazon SES to use your own email headers, choose `emailHeader`.
311
+ # @return [String]
312
+ #
313
+ # @!attribute [rw] default_dimension_value
314
+ # The default value of the dimension that is published to Amazon
315
+ # CloudWatch if you do not provide the value of the dimension when you
316
+ # send an email. The default value must:
317
+ #
318
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores
319
+ # (\_), or dashes (-).
320
+ #
321
+ # * Contain less than 256 characters.
322
+ # @return [String]
323
+ class CloudWatchDimensionConfiguration < Struct.new(
324
+ :dimension_name,
325
+ :dimension_value_source,
326
+ :default_dimension_value)
327
+ include Aws::Structure
328
+ end
329
+
330
+ # The name of the configuration set.
331
+ #
332
+ # Configuration sets enable you to publish email sending events. For
333
+ # information about using configuration sets, see the [Amazon SES
334
+ # Developer Guide][1].
335
+ #
336
+ #
337
+ #
338
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
339
+ # @note When making an API call, pass ConfigurationSet
340
+ # data as a hash:
341
+ #
342
+ # {
343
+ # name: "ConfigurationSetName", # required
344
+ # }
345
+ # @!attribute [rw] name
346
+ # The name of the configuration set. The name must:
347
+ #
348
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores
349
+ # (\_), or dashes (-).
350
+ #
351
+ # * Contain less than 64 characters.
352
+ # @return [String]
353
+ class ConfigurationSet < Struct.new(
354
+ :name)
355
+ include Aws::Structure
356
+ end
357
+
358
+ # Represents textual data, plus an optional character set specification.
359
+ #
360
+ # By default, the text must be 7-bit ASCII, due to the constraints of
361
+ # the SMTP protocol. If the text must contain any other characters, then
362
+ # you must also specify a character set. Examples include UTF-8,
363
+ # ISO-8859-1, and Shift\_JIS.
364
+ # @note When making an API call, pass Content
365
+ # data as a hash:
366
+ #
367
+ # {
368
+ # data: "MessageData", # required
369
+ # charset: "Charset",
370
+ # }
371
+ # @!attribute [rw] data
372
+ # The textual data of the content.
373
+ # @return [String]
374
+ #
375
+ # @!attribute [rw] charset
376
+ # The character set of the content.
377
+ # @return [String]
378
+ class Content < Struct.new(
379
+ :data,
380
+ :charset)
381
+ include Aws::Structure
382
+ end
383
+
384
+ # Represents a request to create a configuration set event destination.
385
+ # A configuration set event destination, which can be either Amazon
386
+ # CloudWatch or Amazon Kinesis Firehose, describes an AWS service in
387
+ # which Amazon SES publishes the email sending events associated with a
388
+ # configuration set. For information about using configuration sets, see
389
+ # the [Amazon SES Developer Guide][1].
390
+ #
391
+ #
392
+ #
393
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
394
+ # @note When making an API call, pass CreateConfigurationSetEventDestinationRequest
395
+ # data as a hash:
396
+ #
397
+ # {
398
+ # configuration_set_name: "ConfigurationSetName", # required
399
+ # event_destination: { # required
400
+ # name: "EventDestinationName", # required
401
+ # enabled: false,
402
+ # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery
403
+ # kinesis_firehose_destination: {
404
+ # iam_role_arn: "AmazonResourceName", # required
405
+ # delivery_stream_arn: "AmazonResourceName", # required
406
+ # },
407
+ # cloud_watch_destination: {
408
+ # dimension_configurations: [ # required
409
+ # {
410
+ # dimension_name: "DimensionName", # required
411
+ # dimension_value_source: "messageTag", # required, accepts messageTag, emailHeader
412
+ # default_dimension_value: "DefaultDimensionValue", # required
413
+ # },
414
+ # ],
415
+ # },
416
+ # },
417
+ # }
418
+ # @!attribute [rw] configuration_set_name
419
+ # The name of the configuration set to which to apply the event
420
+ # destination.
421
+ # @return [String]
422
+ #
423
+ # @!attribute [rw] event_destination
424
+ # An object that describes the AWS service to which Amazon SES will
425
+ # publish the email sending events associated with the specified
426
+ # configuration set.
427
+ # @return [Types::EventDestination]
428
+ class CreateConfigurationSetEventDestinationRequest < Struct.new(
429
+ :configuration_set_name,
430
+ :event_destination)
431
+ include Aws::Structure
432
+ end
433
+
434
+ # An empty element returned on a successful request.
435
+ class CreateConfigurationSetEventDestinationResponse < Aws::EmptyStructure; end
436
+
437
+ # Represents a request to create a configuration set. Configuration sets
438
+ # enable you to publish email sending events. For information about
439
+ # using configuration sets, see the [Amazon SES Developer Guide][1].
440
+ #
441
+ #
442
+ #
443
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
444
+ # @note When making an API call, pass CreateConfigurationSetRequest
445
+ # data as a hash:
446
+ #
447
+ # {
448
+ # configuration_set: { # required
449
+ # name: "ConfigurationSetName", # required
450
+ # },
451
+ # }
452
+ # @!attribute [rw] configuration_set
453
+ # A data structure that contains the name of the configuration set.
454
+ # @return [Types::ConfigurationSet]
455
+ class CreateConfigurationSetRequest < Struct.new(
456
+ :configuration_set)
457
+ include Aws::Structure
458
+ end
459
+
460
+ # An empty element returned on a successful request.
461
+ class CreateConfigurationSetResponse < Aws::EmptyStructure; end
462
+
463
+ # Represents a request to create a new IP address filter. You use IP
464
+ # address filters when you receive email with Amazon SES. For more
465
+ # information, see the [Amazon SES Developer Guide][1].
466
+ #
467
+ #
468
+ #
469
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
470
+ # @note When making an API call, pass CreateReceiptFilterRequest
471
+ # data as a hash:
472
+ #
473
+ # {
474
+ # filter: { # required
475
+ # name: "ReceiptFilterName", # required
476
+ # ip_filter: { # required
477
+ # policy: "Block", # required, accepts Block, Allow
478
+ # cidr: "Cidr", # required
479
+ # },
480
+ # },
481
+ # }
482
+ # @!attribute [rw] filter
483
+ # A data structure that describes the IP address filter to create,
484
+ # which consists of a name, an IP address range, and whether to allow
485
+ # or block mail from it.
486
+ # @return [Types::ReceiptFilter]
487
+ class CreateReceiptFilterRequest < Struct.new(
488
+ :filter)
489
+ include Aws::Structure
490
+ end
491
+
492
+ # An empty element returned on a successful request.
493
+ class CreateReceiptFilterResponse < Aws::EmptyStructure; end
494
+
495
+ # Represents a request to create a receipt rule. You use receipt rules
496
+ # to receive email with Amazon SES. For more information, see the
497
+ # [Amazon SES Developer Guide][1].
498
+ #
499
+ #
500
+ #
501
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
502
+ # @note When making an API call, pass CreateReceiptRuleRequest
503
+ # data as a hash:
504
+ #
505
+ # {
506
+ # rule_set_name: "ReceiptRuleSetName", # required
507
+ # after: "ReceiptRuleName",
508
+ # rule: { # required
509
+ # name: "ReceiptRuleName", # required
510
+ # enabled: false,
511
+ # tls_policy: "Require", # accepts Require, Optional
512
+ # recipients: ["Recipient"],
513
+ # actions: [
514
+ # {
515
+ # s3_action: {
516
+ # topic_arn: "AmazonResourceName",
517
+ # bucket_name: "S3BucketName", # required
518
+ # object_key_prefix: "S3KeyPrefix",
519
+ # kms_key_arn: "AmazonResourceName",
520
+ # },
521
+ # bounce_action: {
522
+ # topic_arn: "AmazonResourceName",
523
+ # smtp_reply_code: "BounceSmtpReplyCode", # required
524
+ # status_code: "BounceStatusCode",
525
+ # message: "BounceMessage", # required
526
+ # sender: "Address", # required
527
+ # },
528
+ # workmail_action: {
529
+ # topic_arn: "AmazonResourceName",
530
+ # organization_arn: "AmazonResourceName", # required
531
+ # },
532
+ # lambda_action: {
533
+ # topic_arn: "AmazonResourceName",
534
+ # function_arn: "AmazonResourceName", # required
535
+ # invocation_type: "Event", # accepts Event, RequestResponse
536
+ # },
537
+ # stop_action: {
538
+ # scope: "RuleSet", # required, accepts RuleSet
539
+ # topic_arn: "AmazonResourceName",
540
+ # },
541
+ # add_header_action: {
542
+ # header_name: "HeaderName", # required
543
+ # header_value: "HeaderValue", # required
544
+ # },
545
+ # sns_action: {
546
+ # topic_arn: "AmazonResourceName", # required
547
+ # encoding: "UTF-8", # accepts UTF-8, Base64
548
+ # },
549
+ # },
550
+ # ],
551
+ # scan_enabled: false,
552
+ # },
553
+ # }
554
+ # @!attribute [rw] rule_set_name
555
+ # The name of the rule set to which to add the rule.
556
+ # @return [String]
557
+ #
558
+ # @!attribute [rw] after
559
+ # The name of an existing rule after which the new rule will be
560
+ # placed. If this parameter is null, the new rule will be inserted at
561
+ # the beginning of the rule list.
562
+ # @return [String]
563
+ #
564
+ # @!attribute [rw] rule
565
+ # A data structure that contains the specified rule's name, actions,
566
+ # recipients, domains, enabled status, scan status, and TLS policy.
567
+ # @return [Types::ReceiptRule]
568
+ class CreateReceiptRuleRequest < Struct.new(
569
+ :rule_set_name,
570
+ :after,
571
+ :rule)
572
+ include Aws::Structure
573
+ end
574
+
575
+ # An empty element returned on a successful request.
576
+ class CreateReceiptRuleResponse < Aws::EmptyStructure; end
577
+
578
+ # Represents a request to create an empty receipt rule set. You use
579
+ # receipt rule sets to receive email with Amazon SES. For more
580
+ # information, see the [Amazon SES Developer Guide][1].
581
+ #
582
+ #
583
+ #
584
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
585
+ # @note When making an API call, pass CreateReceiptRuleSetRequest
586
+ # data as a hash:
587
+ #
588
+ # {
589
+ # rule_set_name: "ReceiptRuleSetName", # required
590
+ # }
591
+ # @!attribute [rw] rule_set_name
592
+ # The name of the rule set to create. The name must:
593
+ #
594
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
595
+ # underscores (\_), or dashes (-).
596
+ #
597
+ # * Start and end with a letter or number.
598
+ #
599
+ # * Contain less than 64 characters.
600
+ # @return [String]
601
+ class CreateReceiptRuleSetRequest < Struct.new(
602
+ :rule_set_name)
603
+ include Aws::Structure
604
+ end
605
+
606
+ # An empty element returned on a successful request.
607
+ class CreateReceiptRuleSetResponse < Aws::EmptyStructure; end
608
+
609
+ # Represents a request to delete a configuration set event destination.
610
+ # Configuration set event destinations are associated with configuration
611
+ # sets, which enable you to publish email sending events. For
612
+ # information about using configuration sets, see the [Amazon SES
613
+ # Developer Guide][1].
614
+ #
615
+ #
616
+ #
617
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
618
+ # @note When making an API call, pass DeleteConfigurationSetEventDestinationRequest
619
+ # data as a hash:
620
+ #
621
+ # {
622
+ # configuration_set_name: "ConfigurationSetName", # required
623
+ # event_destination_name: "EventDestinationName", # required
624
+ # }
625
+ # @!attribute [rw] configuration_set_name
626
+ # The name of the configuration set from which to delete the event
627
+ # destination.
628
+ # @return [String]
629
+ #
630
+ # @!attribute [rw] event_destination_name
631
+ # The name of the event destination to delete.
632
+ # @return [String]
633
+ class DeleteConfigurationSetEventDestinationRequest < Struct.new(
634
+ :configuration_set_name,
635
+ :event_destination_name)
636
+ include Aws::Structure
637
+ end
638
+
639
+ # An empty element returned on a successful request.
640
+ class DeleteConfigurationSetEventDestinationResponse < Aws::EmptyStructure; end
641
+
642
+ # Represents a request to delete a configuration set. Configuration sets
643
+ # enable you to publish email sending events. For information about
644
+ # using configuration sets, see the [Amazon SES Developer Guide][1].
645
+ #
646
+ #
647
+ #
648
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
649
+ # @note When making an API call, pass DeleteConfigurationSetRequest
650
+ # data as a hash:
651
+ #
652
+ # {
653
+ # configuration_set_name: "ConfigurationSetName", # required
654
+ # }
655
+ # @!attribute [rw] configuration_set_name
656
+ # The name of the configuration set to delete.
657
+ # @return [String]
658
+ class DeleteConfigurationSetRequest < Struct.new(
659
+ :configuration_set_name)
660
+ include Aws::Structure
661
+ end
662
+
663
+ # An empty element returned on a successful request.
664
+ class DeleteConfigurationSetResponse < Aws::EmptyStructure; end
665
+
666
+ # Represents a request to delete a sending authorization policy for an
667
+ # identity. Sending authorization is an Amazon SES feature that enables
668
+ # you to authorize other senders to use your identities. For
669
+ # information, see the [Amazon SES Developer Guide][1].
670
+ #
671
+ #
672
+ #
673
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
674
+ # @note When making an API call, pass DeleteIdentityPolicyRequest
675
+ # data as a hash:
676
+ #
677
+ # {
678
+ # identity: "Identity", # required
679
+ # policy_name: "PolicyName", # required
680
+ # }
681
+ # @!attribute [rw] identity
682
+ # The identity that is associated with the policy that you want to
683
+ # delete. You can specify the identity by using its name or by using
684
+ # its Amazon Resource Name (ARN). Examples: `user@example.com`,
685
+ # `example.com`,
686
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`.
687
+ #
688
+ # To successfully call this API, you must own the identity.
689
+ # @return [String]
690
+ #
691
+ # @!attribute [rw] policy_name
692
+ # The name of the policy to be deleted.
693
+ # @return [String]
694
+ class DeleteIdentityPolicyRequest < Struct.new(
695
+ :identity,
696
+ :policy_name)
697
+ include Aws::Structure
698
+ end
699
+
700
+ # An empty element returned on a successful request.
701
+ class DeleteIdentityPolicyResponse < Aws::EmptyStructure; end
702
+
703
+ # Represents a request to delete one of your Amazon SES identities (an
704
+ # email address or domain).
705
+ # @note When making an API call, pass DeleteIdentityRequest
706
+ # data as a hash:
707
+ #
708
+ # {
709
+ # identity: "Identity", # required
710
+ # }
711
+ # @!attribute [rw] identity
712
+ # The identity to be removed from the list of identities for the AWS
713
+ # Account.
714
+ # @return [String]
715
+ class DeleteIdentityRequest < Struct.new(
716
+ :identity)
717
+ include Aws::Structure
718
+ end
719
+
720
+ # An empty element returned on a successful request.
721
+ class DeleteIdentityResponse < Aws::EmptyStructure; end
722
+
723
+ # Represents a request to delete an IP address filter. You use IP
724
+ # address filters when you receive email with Amazon SES. For more
725
+ # information, see the [Amazon SES Developer Guide][1].
726
+ #
727
+ #
728
+ #
729
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
730
+ # @note When making an API call, pass DeleteReceiptFilterRequest
731
+ # data as a hash:
732
+ #
733
+ # {
734
+ # filter_name: "ReceiptFilterName", # required
735
+ # }
736
+ # @!attribute [rw] filter_name
737
+ # The name of the IP address filter to delete.
738
+ # @return [String]
739
+ class DeleteReceiptFilterRequest < Struct.new(
740
+ :filter_name)
741
+ include Aws::Structure
742
+ end
743
+
744
+ # An empty element returned on a successful request.
745
+ class DeleteReceiptFilterResponse < Aws::EmptyStructure; end
746
+
747
+ # Represents a request to delete a receipt rule. You use receipt rules
748
+ # to receive email with Amazon SES. For more information, see the
749
+ # [Amazon SES Developer Guide][1].
750
+ #
751
+ #
752
+ #
753
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
754
+ # @note When making an API call, pass DeleteReceiptRuleRequest
755
+ # data as a hash:
756
+ #
757
+ # {
758
+ # rule_set_name: "ReceiptRuleSetName", # required
759
+ # rule_name: "ReceiptRuleName", # required
760
+ # }
761
+ # @!attribute [rw] rule_set_name
762
+ # The name of the receipt rule set that contains the receipt rule to
763
+ # delete.
764
+ # @return [String]
765
+ #
766
+ # @!attribute [rw] rule_name
767
+ # The name of the receipt rule to delete.
768
+ # @return [String]
769
+ class DeleteReceiptRuleRequest < Struct.new(
770
+ :rule_set_name,
771
+ :rule_name)
772
+ include Aws::Structure
773
+ end
774
+
775
+ # An empty element returned on a successful request.
776
+ class DeleteReceiptRuleResponse < Aws::EmptyStructure; end
777
+
778
+ # Represents a request to delete a receipt rule set and all of the
779
+ # receipt rules it contains. You use receipt rule sets to receive email
780
+ # with Amazon SES. For more information, see the [Amazon SES Developer
781
+ # Guide][1].
782
+ #
783
+ #
784
+ #
785
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
786
+ # @note When making an API call, pass DeleteReceiptRuleSetRequest
787
+ # data as a hash:
788
+ #
789
+ # {
790
+ # rule_set_name: "ReceiptRuleSetName", # required
791
+ # }
792
+ # @!attribute [rw] rule_set_name
793
+ # The name of the receipt rule set to delete.
794
+ # @return [String]
795
+ class DeleteReceiptRuleSetRequest < Struct.new(
796
+ :rule_set_name)
797
+ include Aws::Structure
798
+ end
799
+
800
+ # An empty element returned on a successful request.
801
+ class DeleteReceiptRuleSetResponse < Aws::EmptyStructure; end
802
+
803
+ # Represents a request to delete an email address from the list of email
804
+ # addresses you have attempted to verify under your AWS account.
805
+ # @note When making an API call, pass DeleteVerifiedEmailAddressRequest
806
+ # data as a hash:
807
+ #
808
+ # {
809
+ # email_address: "Address", # required
810
+ # }
811
+ # @!attribute [rw] email_address
812
+ # An email address to be removed from the list of verified addresses.
813
+ # @return [String]
814
+ class DeleteVerifiedEmailAddressRequest < Struct.new(
815
+ :email_address)
816
+ include Aws::Structure
817
+ end
818
+
819
+ # Represents a request to return the metadata and receipt rules for the
820
+ # receipt rule set that is currently active. You use receipt rule sets
821
+ # to receive email with Amazon SES. For more information, see the
822
+ # [Amazon SES Developer Guide][1].
823
+ #
824
+ #
825
+ #
826
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
827
+ # @api private
828
+ class DescribeActiveReceiptRuleSetRequest < Aws::EmptyStructure; end
829
+
830
+ # Represents the metadata and receipt rules for the receipt rule set
831
+ # that is currently active.
832
+ # @!attribute [rw] metadata
833
+ # The metadata for the currently active receipt rule set. The metadata
834
+ # consists of the rule set name and a timestamp of when the rule set
835
+ # was created.
836
+ # @return [Types::ReceiptRuleSetMetadata]
837
+ #
838
+ # @!attribute [rw] rules
839
+ # The receipt rules that belong to the active rule set.
840
+ # @return [Array<Types::ReceiptRule>]
841
+ class DescribeActiveReceiptRuleSetResponse < Struct.new(
842
+ :metadata,
843
+ :rules)
844
+ include Aws::Structure
845
+ end
846
+
847
+ # Represents a request to return the details of a configuration set.
848
+ # Configuration sets enable you to publish email sending events. For
849
+ # information about using configuration sets, see the [Amazon SES
850
+ # Developer Guide][1].
851
+ #
852
+ #
853
+ #
854
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
855
+ # @note When making an API call, pass DescribeConfigurationSetRequest
856
+ # data as a hash:
857
+ #
858
+ # {
859
+ # configuration_set_name: "ConfigurationSetName", # required
860
+ # configuration_set_attribute_names: ["eventDestinations"], # accepts eventDestinations
861
+ # }
862
+ # @!attribute [rw] configuration_set_name
863
+ # The name of the configuration set to describe.
864
+ # @return [String]
865
+ #
866
+ # @!attribute [rw] configuration_set_attribute_names
867
+ # A list of configuration set attributes to return.
868
+ # @return [Array<String>]
869
+ class DescribeConfigurationSetRequest < Struct.new(
870
+ :configuration_set_name,
871
+ :configuration_set_attribute_names)
872
+ include Aws::Structure
873
+ end
874
+
875
+ # Represents the details of a configuration set. Configuration sets
876
+ # enable you to publish email sending events. For information about
877
+ # using configuration sets, see the [Amazon SES Developer Guide][1].
878
+ #
879
+ #
880
+ #
881
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
882
+ # @!attribute [rw] configuration_set
883
+ # The configuration set object associated with the specified
884
+ # configuration set.
885
+ # @return [Types::ConfigurationSet]
886
+ #
887
+ # @!attribute [rw] event_destinations
888
+ # A list of event destinations associated with the configuration set.
889
+ # @return [Array<Types::EventDestination>]
890
+ class DescribeConfigurationSetResponse < Struct.new(
891
+ :configuration_set,
892
+ :event_destinations)
893
+ include Aws::Structure
894
+ end
895
+
896
+ # Represents a request to return the details of a receipt rule. You use
897
+ # receipt rules to receive email with Amazon SES. For more information,
898
+ # see the [Amazon SES Developer Guide][1].
899
+ #
900
+ #
901
+ #
902
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
903
+ # @note When making an API call, pass DescribeReceiptRuleRequest
904
+ # data as a hash:
905
+ #
906
+ # {
907
+ # rule_set_name: "ReceiptRuleSetName", # required
908
+ # rule_name: "ReceiptRuleName", # required
909
+ # }
910
+ # @!attribute [rw] rule_set_name
911
+ # The name of the receipt rule set to which the receipt rule belongs.
912
+ # @return [String]
913
+ #
914
+ # @!attribute [rw] rule_name
915
+ # The name of the receipt rule.
916
+ # @return [String]
917
+ class DescribeReceiptRuleRequest < Struct.new(
918
+ :rule_set_name,
919
+ :rule_name)
920
+ include Aws::Structure
921
+ end
922
+
923
+ # Represents the details of a receipt rule.
924
+ # @!attribute [rw] rule
925
+ # A data structure that contains the specified receipt rule's name,
926
+ # actions, recipients, domains, enabled status, scan status, and
927
+ # Transport Layer Security (TLS) policy.
928
+ # @return [Types::ReceiptRule]
929
+ class DescribeReceiptRuleResponse < Struct.new(
930
+ :rule)
931
+ include Aws::Structure
932
+ end
933
+
934
+ # Represents a request to return the details of a receipt rule set. You
935
+ # use receipt rule sets to receive email with Amazon SES. For more
936
+ # information, see the [Amazon SES Developer Guide][1].
937
+ #
938
+ #
939
+ #
940
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
941
+ # @note When making an API call, pass DescribeReceiptRuleSetRequest
942
+ # data as a hash:
943
+ #
944
+ # {
945
+ # rule_set_name: "ReceiptRuleSetName", # required
946
+ # }
947
+ # @!attribute [rw] rule_set_name
948
+ # The name of the receipt rule set to describe.
949
+ # @return [String]
950
+ class DescribeReceiptRuleSetRequest < Struct.new(
951
+ :rule_set_name)
952
+ include Aws::Structure
953
+ end
954
+
955
+ # Represents the details of the specified receipt rule set.
956
+ # @!attribute [rw] metadata
957
+ # The metadata for the receipt rule set, which consists of the rule
958
+ # set name and the timestamp of when the rule set was created.
959
+ # @return [Types::ReceiptRuleSetMetadata]
960
+ #
961
+ # @!attribute [rw] rules
962
+ # A list of the receipt rules that belong to the specified receipt
963
+ # rule set.
964
+ # @return [Array<Types::ReceiptRule>]
965
+ class DescribeReceiptRuleSetResponse < Struct.new(
966
+ :metadata,
967
+ :rules)
968
+ include Aws::Structure
969
+ end
970
+
971
+ # Represents the destination of the message, consisting of To:, CC:, and
972
+ # BCC: fields.
973
+ #
974
+ # By default, the string must be 7-bit ASCII. If the text must contain
975
+ # any other characters, then you must use MIME encoded-word syntax (RFC
976
+ # 2047) instead of a literal string. MIME encoded-word syntax uses the
977
+ # following form: `=?charset?encoding?encoded-text?=`. For more
978
+ # information, see [RFC 2047][1].
979
+ #
980
+ #
981
+ #
982
+ # [1]: http://tools.ietf.org/html/rfc2047
983
+ # @note When making an API call, pass Destination
984
+ # data as a hash:
985
+ #
986
+ # {
987
+ # to_addresses: ["Address"],
988
+ # cc_addresses: ["Address"],
989
+ # bcc_addresses: ["Address"],
990
+ # }
991
+ # @!attribute [rw] to_addresses
992
+ # The To: field(s) of the message.
993
+ # @return [Array<String>]
994
+ #
995
+ # @!attribute [rw] cc_addresses
996
+ # The CC: field(s) of the message.
997
+ # @return [Array<String>]
998
+ #
999
+ # @!attribute [rw] bcc_addresses
1000
+ # The BCC: field(s) of the message.
1001
+ # @return [Array<String>]
1002
+ class Destination < Struct.new(
1003
+ :to_addresses,
1004
+ :cc_addresses,
1005
+ :bcc_addresses)
1006
+ include Aws::Structure
1007
+ end
1008
+
1009
+ # Contains information about the event destination to which the
1010
+ # specified email sending events are published.
1011
+ #
1012
+ # <note markdown="1"> When you create or update an event destination, you must provide one,
1013
+ # and only one, destination. The destination can be either Amazon
1014
+ # CloudWatch or Amazon Kinesis Firehose.
1015
+ #
1016
+ # </note>
1017
+ #
1018
+ # Event destinations are associated with configuration sets, which
1019
+ # enable you to publish email sending events to Amazon CloudWatch or
1020
+ # Amazon Kinesis Firehose. For information about using configuration
1021
+ # sets, see the [Amazon SES Developer Guide][1].
1022
+ #
1023
+ #
1024
+ #
1025
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
1026
+ # @note When making an API call, pass EventDestination
1027
+ # data as a hash:
1028
+ #
1029
+ # {
1030
+ # name: "EventDestinationName", # required
1031
+ # enabled: false,
1032
+ # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery
1033
+ # kinesis_firehose_destination: {
1034
+ # iam_role_arn: "AmazonResourceName", # required
1035
+ # delivery_stream_arn: "AmazonResourceName", # required
1036
+ # },
1037
+ # cloud_watch_destination: {
1038
+ # dimension_configurations: [ # required
1039
+ # {
1040
+ # dimension_name: "DimensionName", # required
1041
+ # dimension_value_source: "messageTag", # required, accepts messageTag, emailHeader
1042
+ # default_dimension_value: "DefaultDimensionValue", # required
1043
+ # },
1044
+ # ],
1045
+ # },
1046
+ # }
1047
+ # @!attribute [rw] name
1048
+ # The name of the event destination. The name must:
1049
+ #
1050
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores
1051
+ # (\_), or dashes (-).
1052
+ #
1053
+ # * Contain less than 64 characters.
1054
+ # @return [String]
1055
+ #
1056
+ # @!attribute [rw] enabled
1057
+ # Sets whether Amazon SES publishes events to this destination when
1058
+ # you send an email with the associated configuration set. Set to
1059
+ # `true` to enable publishing to this destination; set to `false` to
1060
+ # prevent publishing to this destination. The default value is
1061
+ # `false`.
1062
+ # @return [Boolean]
1063
+ #
1064
+ # @!attribute [rw] matching_event_types
1065
+ # The type of email sending events to publish to the event
1066
+ # destination.
1067
+ # @return [Array<String>]
1068
+ #
1069
+ # @!attribute [rw] kinesis_firehose_destination
1070
+ # An object that contains the delivery stream ARN and the IAM role ARN
1071
+ # associated with an Amazon Kinesis Firehose event destination.
1072
+ # @return [Types::KinesisFirehoseDestination]
1073
+ #
1074
+ # @!attribute [rw] cloud_watch_destination
1075
+ # An object that contains the names, default values, and sources of
1076
+ # the dimensions associated with an Amazon CloudWatch event
1077
+ # destination.
1078
+ # @return [Types::CloudWatchDestination]
1079
+ class EventDestination < Struct.new(
1080
+ :name,
1081
+ :enabled,
1082
+ :matching_event_types,
1083
+ :kinesis_firehose_destination,
1084
+ :cloud_watch_destination)
1085
+ include Aws::Structure
1086
+ end
1087
+
1088
+ # Additional X-headers to include in the Delivery Status Notification
1089
+ # (DSN) when an email that Amazon SES receives on your behalf bounces.
1090
+ #
1091
+ # For information about receiving email through Amazon SES, see the
1092
+ # [Amazon SES Developer Guide][1].
1093
+ #
1094
+ #
1095
+ #
1096
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html
1097
+ # @note When making an API call, pass ExtensionField
1098
+ # data as a hash:
1099
+ #
1100
+ # {
1101
+ # name: "ExtensionFieldName", # required
1102
+ # value: "ExtensionFieldValue", # required
1103
+ # }
1104
+ # @!attribute [rw] name
1105
+ # The name of the header to add. Must be between 1 and 50 characters,
1106
+ # inclusive, and consist of alphanumeric (a-z, A-Z, 0-9) characters
1107
+ # and dashes only.
1108
+ # @return [String]
1109
+ #
1110
+ # @!attribute [rw] value
1111
+ # The value of the header to add. Must be less than 2048 characters,
1112
+ # and must not contain newline characters ("\\r" or "\\n").
1113
+ # @return [String]
1114
+ class ExtensionField < Struct.new(
1115
+ :name,
1116
+ :value)
1117
+ include Aws::Structure
1118
+ end
1119
+
1120
+ # Represents a request for the status of Amazon SES Easy DKIM signing
1121
+ # for an identity. For domain identities, this request also returns the
1122
+ # DKIM tokens that are required for Easy DKIM signing, and whether
1123
+ # Amazon SES successfully verified that these tokens were published. For
1124
+ # more information about Easy DKIM, see the [Amazon SES Developer
1125
+ # Guide][1].
1126
+ #
1127
+ #
1128
+ #
1129
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html
1130
+ # @note When making an API call, pass GetIdentityDkimAttributesRequest
1131
+ # data as a hash:
1132
+ #
1133
+ # {
1134
+ # identities: ["Identity"], # required
1135
+ # }
1136
+ # @!attribute [rw] identities
1137
+ # A list of one or more verified identities - email addresses,
1138
+ # domains, or both.
1139
+ # @return [Array<String>]
1140
+ class GetIdentityDkimAttributesRequest < Struct.new(
1141
+ :identities)
1142
+ include Aws::Structure
1143
+ end
1144
+
1145
+ # Represents the status of Amazon SES Easy DKIM signing for an identity.
1146
+ # For domain identities, this response also contains the DKIM tokens
1147
+ # that are required for Easy DKIM signing, and whether Amazon SES
1148
+ # successfully verified that these tokens were published.
1149
+ # @!attribute [rw] dkim_attributes
1150
+ # The DKIM attributes for an email address or a domain.
1151
+ # @return [Hash<String,Types::IdentityDkimAttributes>]
1152
+ class GetIdentityDkimAttributesResponse < Struct.new(
1153
+ :dkim_attributes)
1154
+ include Aws::Structure
1155
+ end
1156
+
1157
+ # Represents a request to return the Amazon SES custom MAIL FROM
1158
+ # attributes for a list of identities. For information about using a
1159
+ # custom MAIL FROM domain, see the [Amazon SES Developer Guide][1].
1160
+ #
1161
+ #
1162
+ #
1163
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html
1164
+ # @note When making an API call, pass GetIdentityMailFromDomainAttributesRequest
1165
+ # data as a hash:
1166
+ #
1167
+ # {
1168
+ # identities: ["Identity"], # required
1169
+ # }
1170
+ # @!attribute [rw] identities
1171
+ # A list of one or more identities.
1172
+ # @return [Array<String>]
1173
+ class GetIdentityMailFromDomainAttributesRequest < Struct.new(
1174
+ :identities)
1175
+ include Aws::Structure
1176
+ end
1177
+
1178
+ # Represents the custom MAIL FROM attributes for a list of identities.
1179
+ # @!attribute [rw] mail_from_domain_attributes
1180
+ # A map of identities to custom MAIL FROM attributes.
1181
+ # @return [Hash<String,Types::IdentityMailFromDomainAttributes>]
1182
+ class GetIdentityMailFromDomainAttributesResponse < Struct.new(
1183
+ :mail_from_domain_attributes)
1184
+ include Aws::Structure
1185
+ end
1186
+
1187
+ # Represents a request to return the notification attributes for a list
1188
+ # of identities you verified with Amazon SES. For information about
1189
+ # Amazon SES notifications, see the [Amazon SES Developer Guide][1].
1190
+ #
1191
+ #
1192
+ #
1193
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html
1194
+ # @note When making an API call, pass GetIdentityNotificationAttributesRequest
1195
+ # data as a hash:
1196
+ #
1197
+ # {
1198
+ # identities: ["Identity"], # required
1199
+ # }
1200
+ # @!attribute [rw] identities
1201
+ # A list of one or more identities. You can specify an identity by
1202
+ # using its name or by using its Amazon Resource Name (ARN). Examples:
1203
+ # `user@example.com`, `example.com`,
1204
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`.
1205
+ # @return [Array<String>]
1206
+ class GetIdentityNotificationAttributesRequest < Struct.new(
1207
+ :identities)
1208
+ include Aws::Structure
1209
+ end
1210
+
1211
+ # Represents the notification attributes for a list of identities.
1212
+ # @!attribute [rw] notification_attributes
1213
+ # A map of Identity to IdentityNotificationAttributes.
1214
+ # @return [Hash<String,Types::IdentityNotificationAttributes>]
1215
+ class GetIdentityNotificationAttributesResponse < Struct.new(
1216
+ :notification_attributes)
1217
+ include Aws::Structure
1218
+ end
1219
+
1220
+ # Represents a request to return the requested sending authorization
1221
+ # policies for an identity. Sending authorization is an Amazon SES
1222
+ # feature that enables you to authorize other senders to use your
1223
+ # identities. For information, see the [Amazon SES Developer Guide][1].
1224
+ #
1225
+ #
1226
+ #
1227
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
1228
+ # @note When making an API call, pass GetIdentityPoliciesRequest
1229
+ # data as a hash:
1230
+ #
1231
+ # {
1232
+ # identity: "Identity", # required
1233
+ # policy_names: ["PolicyName"], # required
1234
+ # }
1235
+ # @!attribute [rw] identity
1236
+ # The identity for which the policies will be retrieved. You can
1237
+ # specify an identity by using its name or by using its Amazon
1238
+ # Resource Name (ARN). Examples: `user@example.com`, `example.com`,
1239
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`.
1240
+ #
1241
+ # To successfully call this API, you must own the identity.
1242
+ # @return [String]
1243
+ #
1244
+ # @!attribute [rw] policy_names
1245
+ # A list of the names of policies to be retrieved. You can retrieve a
1246
+ # maximum of 20 policies at a time. If you do not know the names of
1247
+ # the policies that are attached to the identity, you can use
1248
+ # `ListIdentityPolicies`.
1249
+ # @return [Array<String>]
1250
+ class GetIdentityPoliciesRequest < Struct.new(
1251
+ :identity,
1252
+ :policy_names)
1253
+ include Aws::Structure
1254
+ end
1255
+
1256
+ # Represents the requested sending authorization policies.
1257
+ # @!attribute [rw] policies
1258
+ # A map of policy names to policies.
1259
+ # @return [Hash<String,String>]
1260
+ class GetIdentityPoliciesResponse < Struct.new(
1261
+ :policies)
1262
+ include Aws::Structure
1263
+ end
1264
+
1265
+ # Represents a request to return the Amazon SES verification status of a
1266
+ # list of identities. For domain identities, this request also returns
1267
+ # the verification token. For information about verifying identities
1268
+ # with Amazon SES, see the [Amazon SES Developer Guide][1].
1269
+ #
1270
+ #
1271
+ #
1272
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html
1273
+ # @note When making an API call, pass GetIdentityVerificationAttributesRequest
1274
+ # data as a hash:
1275
+ #
1276
+ # {
1277
+ # identities: ["Identity"], # required
1278
+ # }
1279
+ # @!attribute [rw] identities
1280
+ # A list of identities.
1281
+ # @return [Array<String>]
1282
+ class GetIdentityVerificationAttributesRequest < Struct.new(
1283
+ :identities)
1284
+ include Aws::Structure
1285
+ end
1286
+
1287
+ # The Amazon SES verification status of a list of identities. For domain
1288
+ # identities, this response also contains the verification token.
1289
+ # @!attribute [rw] verification_attributes
1290
+ # A map of Identities to IdentityVerificationAttributes objects.
1291
+ # @return [Hash<String,Types::IdentityVerificationAttributes>]
1292
+ class GetIdentityVerificationAttributesResponse < Struct.new(
1293
+ :verification_attributes)
1294
+ include Aws::Structure
1295
+ end
1296
+
1297
+ # Represents your Amazon SES daily sending quota, maximum send rate, and
1298
+ # the number of emails you have sent in the last 24 hours.
1299
+ # @!attribute [rw] max_24_hour_send
1300
+ # The maximum number of emails the user is allowed to send in a
1301
+ # 24-hour interval. A value of -1 signifies an unlimited quota.
1302
+ # @return [Float]
1303
+ #
1304
+ # @!attribute [rw] max_send_rate
1305
+ # The maximum number of emails that Amazon SES can accept from the
1306
+ # user's account per second.
1307
+ #
1308
+ # <note markdown="1"> The rate at which Amazon SES accepts the user's messages might be
1309
+ # less than the maximum send rate.
1310
+ #
1311
+ # </note>
1312
+ # @return [Float]
1313
+ #
1314
+ # @!attribute [rw] sent_last_24_hours
1315
+ # The number of emails sent during the previous 24 hours.
1316
+ # @return [Float]
1317
+ class GetSendQuotaResponse < Struct.new(
1318
+ :max_24_hour_send,
1319
+ :max_send_rate,
1320
+ :sent_last_24_hours)
1321
+ include Aws::Structure
1322
+ end
1323
+
1324
+ # Represents a list of data points. This list contains aggregated data
1325
+ # from the previous two weeks of your sending activity with Amazon SES.
1326
+ # @!attribute [rw] send_data_points
1327
+ # A list of data points, each of which represents 15 minutes of
1328
+ # activity.
1329
+ # @return [Array<Types::SendDataPoint>]
1330
+ class GetSendStatisticsResponse < Struct.new(
1331
+ :send_data_points)
1332
+ include Aws::Structure
1333
+ end
1334
+
1335
+ # Represents the DKIM attributes of a verified email address or a
1336
+ # domain.
1337
+ # @!attribute [rw] dkim_enabled
1338
+ # True if DKIM signing is enabled for email sent from the identity;
1339
+ # false otherwise. The default value is true.
1340
+ # @return [Boolean]
1341
+ #
1342
+ # @!attribute [rw] dkim_verification_status
1343
+ # Describes whether Amazon SES has successfully verified the DKIM DNS
1344
+ # records (tokens) published in the domain name's DNS. (This only
1345
+ # applies to domain identities, not email address identities.)
1346
+ # @return [String]
1347
+ #
1348
+ # @!attribute [rw] dkim_tokens
1349
+ # A set of character strings that represent the domain's identity.
1350
+ # Using these tokens, you will need to create DNS CNAME records that
1351
+ # point to DKIM public keys hosted by Amazon SES. Amazon Web Services
1352
+ # will eventually detect that you have updated your DNS records; this
1353
+ # detection process may take up to 72 hours. Upon successful
1354
+ # detection, Amazon SES will be able to DKIM-sign email originating
1355
+ # from that domain. (This only applies to domain identities, not email
1356
+ # address identities.)
1357
+ #
1358
+ # For more information about creating DNS records using DKIM tokens,
1359
+ # go to the [Amazon SES Developer Guide][1].
1360
+ #
1361
+ #
1362
+ #
1363
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html
1364
+ # @return [Array<String>]
1365
+ class IdentityDkimAttributes < Struct.new(
1366
+ :dkim_enabled,
1367
+ :dkim_verification_status,
1368
+ :dkim_tokens)
1369
+ include Aws::Structure
1370
+ end
1371
+
1372
+ # Represents the custom MAIL FROM domain attributes of a verified
1373
+ # identity (email address or domain).
1374
+ # @!attribute [rw] mail_from_domain
1375
+ # The custom MAIL FROM domain that the identity is configured to use.
1376
+ # @return [String]
1377
+ #
1378
+ # @!attribute [rw] mail_from_domain_status
1379
+ # The state that indicates whether Amazon SES has successfully read
1380
+ # the MX record required for custom MAIL FROM domain setup. If the
1381
+ # state is `Success`, Amazon SES uses the specified custom MAIL FROM
1382
+ # domain when the verified identity sends an email. All other states
1383
+ # indicate that Amazon SES takes the action described by
1384
+ # `BehaviorOnMXFailure`.
1385
+ # @return [String]
1386
+ #
1387
+ # @!attribute [rw] behavior_on_mx_failure
1388
+ # The action that Amazon SES takes if it cannot successfully read the
1389
+ # required MX record when you send an email. A value of
1390
+ # `UseDefaultValue` indicates that if Amazon SES cannot read the
1391
+ # required MX record, it uses amazonses.com (or a subdomain of that)
1392
+ # as the MAIL FROM domain. A value of `RejectMessage` indicates that
1393
+ # if Amazon SES cannot read the required MX record, Amazon SES returns
1394
+ # a `MailFromDomainNotVerified` error and does not send the email.
1395
+ #
1396
+ # The custom MAIL FROM setup states that result in this behavior are
1397
+ # `Pending`, `Failed`, and `TemporaryFailure`.
1398
+ # @return [String]
1399
+ class IdentityMailFromDomainAttributes < Struct.new(
1400
+ :mail_from_domain,
1401
+ :mail_from_domain_status,
1402
+ :behavior_on_mx_failure)
1403
+ include Aws::Structure
1404
+ end
1405
+
1406
+ # Represents the notification attributes of an identity, including
1407
+ # whether an identity has Amazon Simple Notification Service (Amazon
1408
+ # SNS) topics set for bounce, complaint, and/or delivery notifications,
1409
+ # and whether feedback forwarding is enabled for bounce and complaint
1410
+ # notifications.
1411
+ # @!attribute [rw] bounce_topic
1412
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon
1413
+ # SES will publish bounce notifications.
1414
+ # @return [String]
1415
+ #
1416
+ # @!attribute [rw] complaint_topic
1417
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon
1418
+ # SES will publish complaint notifications.
1419
+ # @return [String]
1420
+ #
1421
+ # @!attribute [rw] delivery_topic
1422
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon
1423
+ # SES will publish delivery notifications.
1424
+ # @return [String]
1425
+ #
1426
+ # @!attribute [rw] forwarding_enabled
1427
+ # Describes whether Amazon SES will forward bounce and complaint
1428
+ # notifications as email. `true` indicates that Amazon SES will
1429
+ # forward bounce and complaint notifications as email, while `false`
1430
+ # indicates that bounce and complaint notifications will be published
1431
+ # only to the specified bounce and complaint Amazon SNS topics.
1432
+ # @return [Boolean]
1433
+ #
1434
+ # @!attribute [rw] headers_in_bounce_notifications_enabled
1435
+ # Describes whether Amazon SES includes the original email headers in
1436
+ # Amazon SNS notifications of type `Bounce`. A value of `true`
1437
+ # specifies that Amazon SES will include headers in bounce
1438
+ # notifications, and a value of `false` specifies that Amazon SES will
1439
+ # not include headers in bounce notifications.
1440
+ # @return [Boolean]
1441
+ #
1442
+ # @!attribute [rw] headers_in_complaint_notifications_enabled
1443
+ # Describes whether Amazon SES includes the original email headers in
1444
+ # Amazon SNS notifications of type `Complaint`. A value of `true`
1445
+ # specifies that Amazon SES will include headers in complaint
1446
+ # notifications, and a value of `false` specifies that Amazon SES will
1447
+ # not include headers in complaint notifications.
1448
+ # @return [Boolean]
1449
+ #
1450
+ # @!attribute [rw] headers_in_delivery_notifications_enabled
1451
+ # Describes whether Amazon SES includes the original email headers in
1452
+ # Amazon SNS notifications of type `Delivery`. A value of `true`
1453
+ # specifies that Amazon SES will include headers in delivery
1454
+ # notifications, and a value of `false` specifies that Amazon SES will
1455
+ # not include headers in delivery notifications.
1456
+ # @return [Boolean]
1457
+ class IdentityNotificationAttributes < Struct.new(
1458
+ :bounce_topic,
1459
+ :complaint_topic,
1460
+ :delivery_topic,
1461
+ :forwarding_enabled,
1462
+ :headers_in_bounce_notifications_enabled,
1463
+ :headers_in_complaint_notifications_enabled,
1464
+ :headers_in_delivery_notifications_enabled)
1465
+ include Aws::Structure
1466
+ end
1467
+
1468
+ # Represents the verification attributes of a single identity.
1469
+ # @!attribute [rw] verification_status
1470
+ # The verification status of the identity: "Pending", "Success",
1471
+ # "Failed", or "TemporaryFailure".
1472
+ # @return [String]
1473
+ #
1474
+ # @!attribute [rw] verification_token
1475
+ # The verification token for a domain identity. Null for email address
1476
+ # identities.
1477
+ # @return [String]
1478
+ class IdentityVerificationAttributes < Struct.new(
1479
+ :verification_status,
1480
+ :verification_token)
1481
+ include Aws::Structure
1482
+ end
1483
+
1484
+ # Contains the delivery stream ARN and the IAM role ARN associated with
1485
+ # an Amazon Kinesis Firehose event destination.
1486
+ #
1487
+ # Event destinations, such as Amazon Kinesis Firehose, are associated
1488
+ # with configuration sets, which enable you to publish email sending
1489
+ # events. For information about using configuration sets, see the
1490
+ # [Amazon SES Developer Guide][1].
1491
+ #
1492
+ #
1493
+ #
1494
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
1495
+ # @note When making an API call, pass KinesisFirehoseDestination
1496
+ # data as a hash:
1497
+ #
1498
+ # {
1499
+ # iam_role_arn: "AmazonResourceName", # required
1500
+ # delivery_stream_arn: "AmazonResourceName", # required
1501
+ # }
1502
+ # @!attribute [rw] iam_role_arn
1503
+ # The ARN of the IAM role under which Amazon SES publishes email
1504
+ # sending events to the Amazon Kinesis Firehose stream.
1505
+ # @return [String]
1506
+ #
1507
+ # @!attribute [rw] delivery_stream_arn
1508
+ # The ARN of the Amazon Kinesis Firehose stream to which to publish
1509
+ # email sending events.
1510
+ # @return [String]
1511
+ class KinesisFirehoseDestination < Struct.new(
1512
+ :iam_role_arn,
1513
+ :delivery_stream_arn)
1514
+ include Aws::Structure
1515
+ end
1516
+
1517
+ # When included in a receipt rule, this action calls an AWS Lambda
1518
+ # function and, optionally, publishes a notification to Amazon Simple
1519
+ # Notification Service (Amazon SNS).
1520
+ #
1521
+ # To enable Amazon SES to call your AWS Lambda function or to publish to
1522
+ # an Amazon SNS topic of another account, Amazon SES must have
1523
+ # permission to access those resources. For information about giving
1524
+ # permissions, see the [Amazon SES Developer Guide][1].
1525
+ #
1526
+ # For information about using AWS Lambda actions in receipt rules, see
1527
+ # the [Amazon SES Developer Guide][2].
1528
+ #
1529
+ #
1530
+ #
1531
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html
1532
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda.html
1533
+ # @note When making an API call, pass LambdaAction
1534
+ # data as a hash:
1535
+ #
1536
+ # {
1537
+ # topic_arn: "AmazonResourceName",
1538
+ # function_arn: "AmazonResourceName", # required
1539
+ # invocation_type: "Event", # accepts Event, RequestResponse
1540
+ # }
1541
+ # @!attribute [rw] topic_arn
1542
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic to notify
1543
+ # when the Lambda action is taken. An example of an Amazon SNS topic
1544
+ # ARN is `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more
1545
+ # information about Amazon SNS topics, see the [Amazon SNS Developer
1546
+ # Guide][1].
1547
+ #
1548
+ #
1549
+ #
1550
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
1551
+ # @return [String]
1552
+ #
1553
+ # @!attribute [rw] function_arn
1554
+ # The Amazon Resource Name (ARN) of the AWS Lambda function. An
1555
+ # example of an AWS Lambda function ARN is
1556
+ # `arn:aws:lambda:us-west-2:account-id:function:MyFunction`. For more
1557
+ # information about AWS Lambda, see the [AWS Lambda Developer
1558
+ # Guide][1].
1559
+ #
1560
+ #
1561
+ #
1562
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/welcome.html
1563
+ # @return [String]
1564
+ #
1565
+ # @!attribute [rw] invocation_type
1566
+ # The invocation type of the AWS Lambda function. An invocation type
1567
+ # of `RequestResponse` means that the execution of the function will
1568
+ # immediately result in a response, and a value of `Event` means that
1569
+ # the function will be invoked asynchronously. The default value is
1570
+ # `Event`. For information about AWS Lambda invocation types, see the
1571
+ # [AWS Lambda Developer Guide][1].
1572
+ #
1573
+ # There is a 30-second timeout on `RequestResponse` invocations. You
1574
+ # should use `Event` invocation in most cases. Use `RequestResponse`
1575
+ # only when you want to make a mail flow decision, such as whether to
1576
+ # stop the receipt rule or the receipt rule set.
1577
+ #
1578
+ #
1579
+ #
1580
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html
1581
+ # @return [String]
1582
+ class LambdaAction < Struct.new(
1583
+ :topic_arn,
1584
+ :function_arn,
1585
+ :invocation_type)
1586
+ include Aws::Structure
1587
+ end
1588
+
1589
+ # Represents a request to list the configuration sets associated with
1590
+ # your AWS account. Configuration sets enable you to publish email
1591
+ # sending events. For information about using configuration sets, see
1592
+ # the [Amazon SES Developer Guide][1].
1593
+ #
1594
+ #
1595
+ #
1596
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
1597
+ # @note When making an API call, pass ListConfigurationSetsRequest
1598
+ # data as a hash:
1599
+ #
1600
+ # {
1601
+ # next_token: "NextToken",
1602
+ # max_items: 1,
1603
+ # }
1604
+ # @!attribute [rw] next_token
1605
+ # A token returned from a previous call to `ListConfigurationSets` to
1606
+ # indicate the position of the configuration set in the configuration
1607
+ # set list.
1608
+ # @return [String]
1609
+ #
1610
+ # @!attribute [rw] max_items
1611
+ # The number of configuration sets to return.
1612
+ # @return [Integer]
1613
+ class ListConfigurationSetsRequest < Struct.new(
1614
+ :next_token,
1615
+ :max_items)
1616
+ include Aws::Structure
1617
+ end
1618
+
1619
+ # A list of configuration sets associated with your AWS account.
1620
+ # Configuration sets enable you to publish email sending events. For
1621
+ # information about using configuration sets, see the [Amazon SES
1622
+ # Developer Guide][1].
1623
+ #
1624
+ #
1625
+ #
1626
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
1627
+ # @!attribute [rw] configuration_sets
1628
+ # A list of configuration sets.
1629
+ # @return [Array<Types::ConfigurationSet>]
1630
+ #
1631
+ # @!attribute [rw] next_token
1632
+ # A token indicating that there are additional configuration sets
1633
+ # available to be listed. Pass this token to successive calls of
1634
+ # `ListConfigurationSets`.
1635
+ # @return [String]
1636
+ class ListConfigurationSetsResponse < Struct.new(
1637
+ :configuration_sets,
1638
+ :next_token)
1639
+ include Aws::Structure
1640
+ end
1641
+
1642
+ # Represents a request to return a list of all identities (email
1643
+ # addresses and domains) that you have attempted to verify under your
1644
+ # AWS account, regardless of verification status.
1645
+ # @note When making an API call, pass ListIdentitiesRequest
1646
+ # data as a hash:
1647
+ #
1648
+ # {
1649
+ # identity_type: "EmailAddress", # accepts EmailAddress, Domain
1650
+ # next_token: "NextToken",
1651
+ # max_items: 1,
1652
+ # }
1653
+ # @!attribute [rw] identity_type
1654
+ # The type of the identities to list. Possible values are
1655
+ # "EmailAddress" and "Domain". If this parameter is omitted, then
1656
+ # all identities will be listed.
1657
+ # @return [String]
1658
+ #
1659
+ # @!attribute [rw] next_token
1660
+ # The token to use for pagination.
1661
+ # @return [String]
1662
+ #
1663
+ # @!attribute [rw] max_items
1664
+ # The maximum number of identities per page. Possible values are
1665
+ # 1-1000 inclusive.
1666
+ # @return [Integer]
1667
+ class ListIdentitiesRequest < Struct.new(
1668
+ :identity_type,
1669
+ :next_token,
1670
+ :max_items)
1671
+ include Aws::Structure
1672
+ end
1673
+
1674
+ # A list of all identities that you have attempted to verify under your
1675
+ # AWS account, regardless of verification status.
1676
+ # @!attribute [rw] identities
1677
+ # A list of identities.
1678
+ # @return [Array<String>]
1679
+ #
1680
+ # @!attribute [rw] next_token
1681
+ # The token used for pagination.
1682
+ # @return [String]
1683
+ class ListIdentitiesResponse < Struct.new(
1684
+ :identities,
1685
+ :next_token)
1686
+ include Aws::Structure
1687
+ end
1688
+
1689
+ # Represents a request to return a list of sending authorization
1690
+ # policies that are attached to an identity. Sending authorization is an
1691
+ # Amazon SES feature that enables you to authorize other senders to use
1692
+ # your identities. For information, see the [Amazon SES Developer
1693
+ # Guide][1].
1694
+ #
1695
+ #
1696
+ #
1697
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
1698
+ # @note When making an API call, pass ListIdentityPoliciesRequest
1699
+ # data as a hash:
1700
+ #
1701
+ # {
1702
+ # identity: "Identity", # required
1703
+ # }
1704
+ # @!attribute [rw] identity
1705
+ # The identity that is associated with the policy for which the
1706
+ # policies will be listed. You can specify an identity by using its
1707
+ # name or by using its Amazon Resource Name (ARN). Examples:
1708
+ # `user@example.com`, `example.com`,
1709
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`.
1710
+ #
1711
+ # To successfully call this API, you must own the identity.
1712
+ # @return [String]
1713
+ class ListIdentityPoliciesRequest < Struct.new(
1714
+ :identity)
1715
+ include Aws::Structure
1716
+ end
1717
+
1718
+ # A list of names of sending authorization policies that apply to an
1719
+ # identity.
1720
+ # @!attribute [rw] policy_names
1721
+ # A list of names of policies that apply to the specified identity.
1722
+ # @return [Array<String>]
1723
+ class ListIdentityPoliciesResponse < Struct.new(
1724
+ :policy_names)
1725
+ include Aws::Structure
1726
+ end
1727
+
1728
+ # Represents a request to list the IP address filters that exist under
1729
+ # your AWS account. You use IP address filters when you receive email
1730
+ # with Amazon SES. For more information, see the [Amazon SES Developer
1731
+ # Guide][1].
1732
+ #
1733
+ #
1734
+ #
1735
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
1736
+ # @api private
1737
+ class ListReceiptFiltersRequest < Aws::EmptyStructure; end
1738
+
1739
+ # A list of IP address filters that exist under your AWS account.
1740
+ # @!attribute [rw] filters
1741
+ # A list of IP address filter data structures, which each consist of a
1742
+ # name, an IP address range, and whether to allow or block mail from
1743
+ # it.
1744
+ # @return [Array<Types::ReceiptFilter>]
1745
+ class ListReceiptFiltersResponse < Struct.new(
1746
+ :filters)
1747
+ include Aws::Structure
1748
+ end
1749
+
1750
+ # Represents a request to list the receipt rule sets that exist under
1751
+ # your AWS account. You use receipt rule sets to receive email with
1752
+ # Amazon SES. For more information, see the [Amazon SES Developer
1753
+ # Guide][1].
1754
+ #
1755
+ #
1756
+ #
1757
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
1758
+ # @note When making an API call, pass ListReceiptRuleSetsRequest
1759
+ # data as a hash:
1760
+ #
1761
+ # {
1762
+ # next_token: "NextToken",
1763
+ # }
1764
+ # @!attribute [rw] next_token
1765
+ # A token returned from a previous call to `ListReceiptRuleSets` to
1766
+ # indicate the position in the receipt rule set list.
1767
+ # @return [String]
1768
+ class ListReceiptRuleSetsRequest < Struct.new(
1769
+ :next_token)
1770
+ include Aws::Structure
1771
+ end
1772
+
1773
+ # A list of receipt rule sets that exist under your AWS account.
1774
+ # @!attribute [rw] rule_sets
1775
+ # The metadata for the currently active receipt rule set. The metadata
1776
+ # consists of the rule set name and the timestamp of when the rule set
1777
+ # was created.
1778
+ # @return [Array<Types::ReceiptRuleSetMetadata>]
1779
+ #
1780
+ # @!attribute [rw] next_token
1781
+ # A token indicating that there are additional receipt rule sets
1782
+ # available to be listed. Pass this token to successive calls of
1783
+ # `ListReceiptRuleSets` to retrieve up to 100 receipt rule sets at a
1784
+ # time.
1785
+ # @return [String]
1786
+ class ListReceiptRuleSetsResponse < Struct.new(
1787
+ :rule_sets,
1788
+ :next_token)
1789
+ include Aws::Structure
1790
+ end
1791
+
1792
+ # A list of email addresses that you have verified with Amazon SES under
1793
+ # your AWS account.
1794
+ # @!attribute [rw] verified_email_addresses
1795
+ # A list of email addresses that have been verified.
1796
+ # @return [Array<String>]
1797
+ class ListVerifiedEmailAddressesResponse < Struct.new(
1798
+ :verified_email_addresses)
1799
+ include Aws::Structure
1800
+ end
1801
+
1802
+ # Represents the message to be sent, composed of a subject and a body.
1803
+ # @note When making an API call, pass Message
1804
+ # data as a hash:
1805
+ #
1806
+ # {
1807
+ # subject: { # required
1808
+ # data: "MessageData", # required
1809
+ # charset: "Charset",
1810
+ # },
1811
+ # body: { # required
1812
+ # text: {
1813
+ # data: "MessageData", # required
1814
+ # charset: "Charset",
1815
+ # },
1816
+ # html: {
1817
+ # data: "MessageData", # required
1818
+ # charset: "Charset",
1819
+ # },
1820
+ # },
1821
+ # }
1822
+ # @!attribute [rw] subject
1823
+ # The subject of the message: A short summary of the content, which
1824
+ # will appear in the recipient's inbox.
1825
+ # @return [Types::Content]
1826
+ #
1827
+ # @!attribute [rw] body
1828
+ # The message body.
1829
+ # @return [Types::Body]
1830
+ class Message < Struct.new(
1831
+ :subject,
1832
+ :body)
1833
+ include Aws::Structure
1834
+ end
1835
+
1836
+ # Message-related information to include in the Delivery Status
1837
+ # Notification (DSN) when an email that Amazon SES receives on your
1838
+ # behalf bounces.
1839
+ #
1840
+ # For information about receiving email through Amazon SES, see the
1841
+ # [Amazon SES Developer Guide][1].
1842
+ #
1843
+ #
1844
+ #
1845
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html
1846
+ # @note When making an API call, pass MessageDsn
1847
+ # data as a hash:
1848
+ #
1849
+ # {
1850
+ # reporting_mta: "ReportingMta", # required
1851
+ # arrival_date: Time.now,
1852
+ # extension_fields: [
1853
+ # {
1854
+ # name: "ExtensionFieldName", # required
1855
+ # value: "ExtensionFieldValue", # required
1856
+ # },
1857
+ # ],
1858
+ # }
1859
+ # @!attribute [rw] reporting_mta
1860
+ # The reporting MTA that attempted to deliver the message, formatted
1861
+ # as specified in [RFC 3464][1] (`mta-name-type; mta-name`). The
1862
+ # default value is `dns; inbound-smtp.[region].amazonaws.com`.
1863
+ #
1864
+ #
1865
+ #
1866
+ # [1]: https://tools.ietf.org/html/rfc3464
1867
+ # @return [String]
1868
+ #
1869
+ # @!attribute [rw] arrival_date
1870
+ # When the message was received by the reporting mail transfer agent
1871
+ # (MTA), in [RFC 822][1] date-time format.
1872
+ #
1873
+ #
1874
+ #
1875
+ # [1]: https://www.ietf.org/rfc/rfc0822.txt
1876
+ # @return [Time]
1877
+ #
1878
+ # @!attribute [rw] extension_fields
1879
+ # Additional X-headers to include in the DSN.
1880
+ # @return [Array<Types::ExtensionField>]
1881
+ class MessageDsn < Struct.new(
1882
+ :reporting_mta,
1883
+ :arrival_date,
1884
+ :extension_fields)
1885
+ include Aws::Structure
1886
+ end
1887
+
1888
+ # Contains the name and value of a tag that you can provide to
1889
+ # `SendEmail` or `SendRawEmail` to apply to an email.
1890
+ #
1891
+ # Message tags, which you use with configuration sets, enable you to
1892
+ # publish email sending events. For information about using
1893
+ # configuration sets, see the [Amazon SES Developer Guide][1].
1894
+ #
1895
+ #
1896
+ #
1897
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
1898
+ # @note When making an API call, pass MessageTag
1899
+ # data as a hash:
1900
+ #
1901
+ # {
1902
+ # name: "MessageTagName", # required
1903
+ # value: "MessageTagValue", # required
1904
+ # }
1905
+ # @!attribute [rw] name
1906
+ # The name of the tag. The name must:
1907
+ #
1908
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores
1909
+ # (\_), or dashes (-).
1910
+ #
1911
+ # * Contain less than 256 characters.
1912
+ # @return [String]
1913
+ #
1914
+ # @!attribute [rw] value
1915
+ # The value of the tag. The value must:
1916
+ #
1917
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores
1918
+ # (\_), or dashes (-).
1919
+ #
1920
+ # * Contain less than 256 characters.
1921
+ # @return [String]
1922
+ class MessageTag < Struct.new(
1923
+ :name,
1924
+ :value)
1925
+ include Aws::Structure
1926
+ end
1927
+
1928
+ # Represents a request to add or update a sending authorization policy
1929
+ # for an identity. Sending authorization is an Amazon SES feature that
1930
+ # enables you to authorize other senders to use your identities. For
1931
+ # information, see the [Amazon SES Developer Guide][1].
1932
+ #
1933
+ #
1934
+ #
1935
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
1936
+ # @note When making an API call, pass PutIdentityPolicyRequest
1937
+ # data as a hash:
1938
+ #
1939
+ # {
1940
+ # identity: "Identity", # required
1941
+ # policy_name: "PolicyName", # required
1942
+ # policy: "Policy", # required
1943
+ # }
1944
+ # @!attribute [rw] identity
1945
+ # The identity to which the policy will apply. You can specify an
1946
+ # identity by using its name or by using its Amazon Resource Name
1947
+ # (ARN). Examples: `user@example.com`, `example.com`,
1948
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`.
1949
+ #
1950
+ # To successfully call this API, you must own the identity.
1951
+ # @return [String]
1952
+ #
1953
+ # @!attribute [rw] policy_name
1954
+ # The name of the policy.
1955
+ #
1956
+ # The policy name cannot exceed 64 characters and can only include
1957
+ # alphanumeric characters, dashes, and underscores.
1958
+ # @return [String]
1959
+ #
1960
+ # @!attribute [rw] policy
1961
+ # The text of the policy in JSON format. The policy cannot exceed 4
1962
+ # KB.
1963
+ #
1964
+ # For information about the syntax of sending authorization policies,
1965
+ # see the [Amazon SES Developer Guide][1].
1966
+ #
1967
+ #
1968
+ #
1969
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-policies.html
1970
+ # @return [String]
1971
+ class PutIdentityPolicyRequest < Struct.new(
1972
+ :identity,
1973
+ :policy_name,
1974
+ :policy)
1975
+ include Aws::Structure
1976
+ end
1977
+
1978
+ # An empty element returned on a successful request.
1979
+ class PutIdentityPolicyResponse < Aws::EmptyStructure; end
1980
+
1981
+ # Represents the raw data of the message.
1982
+ # @note When making an API call, pass RawMessage
1983
+ # data as a hash:
1984
+ #
1985
+ # {
1986
+ # data: "data", # required
1987
+ # }
1988
+ # @!attribute [rw] data
1989
+ # The raw data of the message. The client must ensure that the message
1990
+ # format complies with Internet email standards regarding email header
1991
+ # fields, MIME types, MIME encoding, and base64 encoding.
1992
+ #
1993
+ # The To:, CC:, and BCC: headers in the raw message can contain a
1994
+ # group list.
1995
+ #
1996
+ # If you are using `SendRawEmail` with sending authorization, you can
1997
+ # include X-headers in the raw message to specify the "Source,"
1998
+ # "From," and "Return-Path" addresses. For more information, see
1999
+ # the documentation for `SendRawEmail`.
2000
+ #
2001
+ # Do not include these X-headers in the DKIM signature, because they
2002
+ # are removed by Amazon SES before sending the email.
2003
+ #
2004
+ # For more information, go to the [Amazon SES Developer Guide][1].
2005
+ #
2006
+ #
2007
+ #
2008
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html
2009
+ # @return [String]
2010
+ class RawMessage < Struct.new(
2011
+ :data)
2012
+ include Aws::Structure
2013
+ end
2014
+
2015
+ # An action that Amazon SES can take when it receives an email on behalf
2016
+ # of one or more email addresses or domains that you own. An instance of
2017
+ # this data type can represent only one action.
2018
+ #
2019
+ # For information about setting up receipt rules, see the [Amazon SES
2020
+ # Developer Guide][1].
2021
+ #
2022
+ #
2023
+ #
2024
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html
2025
+ # @note When making an API call, pass ReceiptAction
2026
+ # data as a hash:
2027
+ #
2028
+ # {
2029
+ # s3_action: {
2030
+ # topic_arn: "AmazonResourceName",
2031
+ # bucket_name: "S3BucketName", # required
2032
+ # object_key_prefix: "S3KeyPrefix",
2033
+ # kms_key_arn: "AmazonResourceName",
2034
+ # },
2035
+ # bounce_action: {
2036
+ # topic_arn: "AmazonResourceName",
2037
+ # smtp_reply_code: "BounceSmtpReplyCode", # required
2038
+ # status_code: "BounceStatusCode",
2039
+ # message: "BounceMessage", # required
2040
+ # sender: "Address", # required
2041
+ # },
2042
+ # workmail_action: {
2043
+ # topic_arn: "AmazonResourceName",
2044
+ # organization_arn: "AmazonResourceName", # required
2045
+ # },
2046
+ # lambda_action: {
2047
+ # topic_arn: "AmazonResourceName",
2048
+ # function_arn: "AmazonResourceName", # required
2049
+ # invocation_type: "Event", # accepts Event, RequestResponse
2050
+ # },
2051
+ # stop_action: {
2052
+ # scope: "RuleSet", # required, accepts RuleSet
2053
+ # topic_arn: "AmazonResourceName",
2054
+ # },
2055
+ # add_header_action: {
2056
+ # header_name: "HeaderName", # required
2057
+ # header_value: "HeaderValue", # required
2058
+ # },
2059
+ # sns_action: {
2060
+ # topic_arn: "AmazonResourceName", # required
2061
+ # encoding: "UTF-8", # accepts UTF-8, Base64
2062
+ # },
2063
+ # }
2064
+ # @!attribute [rw] s3_action
2065
+ # Saves the received message to an Amazon Simple Storage Service
2066
+ # (Amazon S3) bucket and, optionally, publishes a notification to
2067
+ # Amazon SNS.
2068
+ # @return [Types::S3Action]
2069
+ #
2070
+ # @!attribute [rw] bounce_action
2071
+ # Rejects the received email by returning a bounce response to the
2072
+ # sender and, optionally, publishes a notification to Amazon Simple
2073
+ # Notification Service (Amazon SNS).
2074
+ # @return [Types::BounceAction]
2075
+ #
2076
+ # @!attribute [rw] workmail_action
2077
+ # Calls Amazon WorkMail and, optionally, publishes a notification to
2078
+ # Amazon SNS.
2079
+ # @return [Types::WorkmailAction]
2080
+ #
2081
+ # @!attribute [rw] lambda_action
2082
+ # Calls an AWS Lambda function, and optionally, publishes a
2083
+ # notification to Amazon SNS.
2084
+ # @return [Types::LambdaAction]
2085
+ #
2086
+ # @!attribute [rw] stop_action
2087
+ # Terminates the evaluation of the receipt rule set and optionally
2088
+ # publishes a notification to Amazon SNS.
2089
+ # @return [Types::StopAction]
2090
+ #
2091
+ # @!attribute [rw] add_header_action
2092
+ # Adds a header to the received email.
2093
+ # @return [Types::AddHeaderAction]
2094
+ #
2095
+ # @!attribute [rw] sns_action
2096
+ # Publishes the email content within a notification to Amazon SNS.
2097
+ # @return [Types::SNSAction]
2098
+ class ReceiptAction < Struct.new(
2099
+ :s3_action,
2100
+ :bounce_action,
2101
+ :workmail_action,
2102
+ :lambda_action,
2103
+ :stop_action,
2104
+ :add_header_action,
2105
+ :sns_action)
2106
+ include Aws::Structure
2107
+ end
2108
+
2109
+ # A receipt IP address filter enables you to specify whether to accept
2110
+ # or reject mail originating from an IP address or range of IP
2111
+ # addresses.
2112
+ #
2113
+ # For information about setting up IP address filters, see the [Amazon
2114
+ # SES Developer Guide][1].
2115
+ #
2116
+ #
2117
+ #
2118
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html
2119
+ # @note When making an API call, pass ReceiptFilter
2120
+ # data as a hash:
2121
+ #
2122
+ # {
2123
+ # name: "ReceiptFilterName", # required
2124
+ # ip_filter: { # required
2125
+ # policy: "Block", # required, accepts Block, Allow
2126
+ # cidr: "Cidr", # required
2127
+ # },
2128
+ # }
2129
+ # @!attribute [rw] name
2130
+ # The name of the IP address filter. The name must:
2131
+ #
2132
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
2133
+ # underscores (\_), or dashes (-).
2134
+ #
2135
+ # * Start and end with a letter or number.
2136
+ #
2137
+ # * Contain less than 64 characters.
2138
+ # @return [String]
2139
+ #
2140
+ # @!attribute [rw] ip_filter
2141
+ # A structure that provides the IP addresses to block or allow, and
2142
+ # whether to block or allow incoming mail from them.
2143
+ # @return [Types::ReceiptIpFilter]
2144
+ class ReceiptFilter < Struct.new(
2145
+ :name,
2146
+ :ip_filter)
2147
+ include Aws::Structure
2148
+ end
2149
+
2150
+ # A receipt IP address filter enables you to specify whether to accept
2151
+ # or reject mail originating from an IP address or range of IP
2152
+ # addresses.
2153
+ #
2154
+ # For information about setting up IP address filters, see the [Amazon
2155
+ # SES Developer Guide][1].
2156
+ #
2157
+ #
2158
+ #
2159
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html
2160
+ # @note When making an API call, pass ReceiptIpFilter
2161
+ # data as a hash:
2162
+ #
2163
+ # {
2164
+ # policy: "Block", # required, accepts Block, Allow
2165
+ # cidr: "Cidr", # required
2166
+ # }
2167
+ # @!attribute [rw] policy
2168
+ # Indicates whether to block or allow incoming mail from the specified
2169
+ # IP addresses.
2170
+ # @return [String]
2171
+ #
2172
+ # @!attribute [rw] cidr
2173
+ # A single IP address or a range of IP addresses that you want to
2174
+ # block or allow, specified in Classless Inter-Domain Routing (CIDR)
2175
+ # notation. An example of a single email address is 10.0.0.1. An
2176
+ # example of a range of IP addresses is 10.0.0.1/24. For more
2177
+ # information about CIDR notation, see [RFC 2317][1].
2178
+ #
2179
+ #
2180
+ #
2181
+ # [1]: https://tools.ietf.org/html/rfc2317
2182
+ # @return [String]
2183
+ class ReceiptIpFilter < Struct.new(
2184
+ :policy,
2185
+ :cidr)
2186
+ include Aws::Structure
2187
+ end
2188
+
2189
+ # Receipt rules enable you to specify which actions Amazon SES should
2190
+ # take when it receives mail on behalf of one or more email addresses or
2191
+ # domains that you own.
2192
+ #
2193
+ # Each receipt rule defines a set of email addresses or domains to which
2194
+ # it applies. If the email addresses or domains match at least one
2195
+ # recipient address of the message, Amazon SES executes all of the
2196
+ # receipt rule's actions on the message.
2197
+ #
2198
+ # For information about setting up receipt rules, see the [Amazon SES
2199
+ # Developer Guide][1].
2200
+ #
2201
+ #
2202
+ #
2203
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html
2204
+ # @note When making an API call, pass ReceiptRule
2205
+ # data as a hash:
2206
+ #
2207
+ # {
2208
+ # name: "ReceiptRuleName", # required
2209
+ # enabled: false,
2210
+ # tls_policy: "Require", # accepts Require, Optional
2211
+ # recipients: ["Recipient"],
2212
+ # actions: [
2213
+ # {
2214
+ # s3_action: {
2215
+ # topic_arn: "AmazonResourceName",
2216
+ # bucket_name: "S3BucketName", # required
2217
+ # object_key_prefix: "S3KeyPrefix",
2218
+ # kms_key_arn: "AmazonResourceName",
2219
+ # },
2220
+ # bounce_action: {
2221
+ # topic_arn: "AmazonResourceName",
2222
+ # smtp_reply_code: "BounceSmtpReplyCode", # required
2223
+ # status_code: "BounceStatusCode",
2224
+ # message: "BounceMessage", # required
2225
+ # sender: "Address", # required
2226
+ # },
2227
+ # workmail_action: {
2228
+ # topic_arn: "AmazonResourceName",
2229
+ # organization_arn: "AmazonResourceName", # required
2230
+ # },
2231
+ # lambda_action: {
2232
+ # topic_arn: "AmazonResourceName",
2233
+ # function_arn: "AmazonResourceName", # required
2234
+ # invocation_type: "Event", # accepts Event, RequestResponse
2235
+ # },
2236
+ # stop_action: {
2237
+ # scope: "RuleSet", # required, accepts RuleSet
2238
+ # topic_arn: "AmazonResourceName",
2239
+ # },
2240
+ # add_header_action: {
2241
+ # header_name: "HeaderName", # required
2242
+ # header_value: "HeaderValue", # required
2243
+ # },
2244
+ # sns_action: {
2245
+ # topic_arn: "AmazonResourceName", # required
2246
+ # encoding: "UTF-8", # accepts UTF-8, Base64
2247
+ # },
2248
+ # },
2249
+ # ],
2250
+ # scan_enabled: false,
2251
+ # }
2252
+ # @!attribute [rw] name
2253
+ # The name of the receipt rule. The name must:
2254
+ #
2255
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
2256
+ # underscores (\_), or dashes (-).
2257
+ #
2258
+ # * Start and end with a letter or number.
2259
+ #
2260
+ # * Contain less than 64 characters.
2261
+ # @return [String]
2262
+ #
2263
+ # @!attribute [rw] enabled
2264
+ # If `true`, the receipt rule is active. The default value is `false`.
2265
+ # @return [Boolean]
2266
+ #
2267
+ # @!attribute [rw] tls_policy
2268
+ # Specifies whether Amazon SES should require that incoming email is
2269
+ # delivered over a connection encrypted with Transport Layer Security
2270
+ # (TLS). If this parameter is set to `Require`, Amazon SES will bounce
2271
+ # emails that are not received over TLS. The default is `Optional`.
2272
+ # @return [String]
2273
+ #
2274
+ # @!attribute [rw] recipients
2275
+ # The recipient domains and email addresses to which the receipt rule
2276
+ # applies. If this field is not specified, this rule will match all
2277
+ # recipients under all verified domains.
2278
+ # @return [Array<String>]
2279
+ #
2280
+ # @!attribute [rw] actions
2281
+ # An ordered list of actions to perform on messages that match at
2282
+ # least one of the recipient email addresses or domains specified in
2283
+ # the receipt rule.
2284
+ # @return [Array<Types::ReceiptAction>]
2285
+ #
2286
+ # @!attribute [rw] scan_enabled
2287
+ # If `true`, then messages to which this receipt rule applies are
2288
+ # scanned for spam and viruses. The default value is `false`.
2289
+ # @return [Boolean]
2290
+ class ReceiptRule < Struct.new(
2291
+ :name,
2292
+ :enabled,
2293
+ :tls_policy,
2294
+ :recipients,
2295
+ :actions,
2296
+ :scan_enabled)
2297
+ include Aws::Structure
2298
+ end
2299
+
2300
+ # Information about a receipt rule set.
2301
+ #
2302
+ # A receipt rule set is a collection of rules that specify what Amazon
2303
+ # SES should do with mail it receives on behalf of your account's
2304
+ # verified domains.
2305
+ #
2306
+ # For information about setting up receipt rule sets, see the [Amazon
2307
+ # SES Developer Guide][1].
2308
+ #
2309
+ #
2310
+ #
2311
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html
2312
+ # @!attribute [rw] name
2313
+ # The name of the receipt rule set. The name must:
2314
+ #
2315
+ # * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.),
2316
+ # underscores (\_), or dashes (-).
2317
+ #
2318
+ # * Start and end with a letter or number.
2319
+ #
2320
+ # * Contain less than 64 characters.
2321
+ # @return [String]
2322
+ #
2323
+ # @!attribute [rw] created_timestamp
2324
+ # The date and time the receipt rule set was created.
2325
+ # @return [Time]
2326
+ class ReceiptRuleSetMetadata < Struct.new(
2327
+ :name,
2328
+ :created_timestamp)
2329
+ include Aws::Structure
2330
+ end
2331
+
2332
+ # Recipient-related information to include in the Delivery Status
2333
+ # Notification (DSN) when an email that Amazon SES receives on your
2334
+ # behalf bounces.
2335
+ #
2336
+ # For information about receiving email through Amazon SES, see the
2337
+ # [Amazon SES Developer Guide][1].
2338
+ #
2339
+ #
2340
+ #
2341
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html
2342
+ # @note When making an API call, pass RecipientDsnFields
2343
+ # data as a hash:
2344
+ #
2345
+ # {
2346
+ # final_recipient: "Address",
2347
+ # action: "failed", # required, accepts failed, delayed, delivered, relayed, expanded
2348
+ # remote_mta: "RemoteMta",
2349
+ # status: "DsnStatus", # required
2350
+ # diagnostic_code: "DiagnosticCode",
2351
+ # last_attempt_date: Time.now,
2352
+ # extension_fields: [
2353
+ # {
2354
+ # name: "ExtensionFieldName", # required
2355
+ # value: "ExtensionFieldValue", # required
2356
+ # },
2357
+ # ],
2358
+ # }
2359
+ # @!attribute [rw] final_recipient
2360
+ # The email address to which the message was ultimately delivered.
2361
+ # This corresponds to the `Final-Recipient` in the DSN. If not
2362
+ # specified, `FinalRecipient` will be set to the `Recipient` specified
2363
+ # in the `BouncedRecipientInfo` structure. Either `FinalRecipient` or
2364
+ # the recipient in `BouncedRecipientInfo` must be a recipient of the
2365
+ # original bounced message.
2366
+ #
2367
+ # <note markdown="1"> Do not prepend the `FinalRecipient` email address with `rfc 822;`,
2368
+ # as described in [RFC 3798][1].
2369
+ #
2370
+ # </note>
2371
+ #
2372
+ #
2373
+ #
2374
+ # [1]: https://tools.ietf.org/html/rfc3798
2375
+ # @return [String]
2376
+ #
2377
+ # @!attribute [rw] action
2378
+ # The action performed by the reporting mail transfer agent (MTA) as a
2379
+ # result of its attempt to deliver the message to the recipient
2380
+ # address. This is required by [RFC 3464][1].
2381
+ #
2382
+ #
2383
+ #
2384
+ # [1]: https://tools.ietf.org/html/rfc3464
2385
+ # @return [String]
2386
+ #
2387
+ # @!attribute [rw] remote_mta
2388
+ # The MTA to which the remote MTA attempted to deliver the message,
2389
+ # formatted as specified in [RFC 3464][1] (`mta-name-type; mta-name`).
2390
+ # This parameter typically applies only to propagating synchronous
2391
+ # bounces.
2392
+ #
2393
+ #
2394
+ #
2395
+ # [1]: https://tools.ietf.org/html/rfc3464
2396
+ # @return [String]
2397
+ #
2398
+ # @!attribute [rw] status
2399
+ # The status code that indicates what went wrong. This is required by
2400
+ # [RFC 3464][1].
2401
+ #
2402
+ #
2403
+ #
2404
+ # [1]: https://tools.ietf.org/html/rfc3464
2405
+ # @return [String]
2406
+ #
2407
+ # @!attribute [rw] diagnostic_code
2408
+ # An extended explanation of what went wrong; this is usually an SMTP
2409
+ # response. See [RFC 3463][1] for the correct formatting of this
2410
+ # parameter.
2411
+ #
2412
+ #
2413
+ #
2414
+ # [1]: https://tools.ietf.org/html/rfc3463
2415
+ # @return [String]
2416
+ #
2417
+ # @!attribute [rw] last_attempt_date
2418
+ # The time the final delivery attempt was made, in [RFC 822][1]
2419
+ # date-time format.
2420
+ #
2421
+ #
2422
+ #
2423
+ # [1]: https://www.ietf.org/rfc/rfc0822.txt
2424
+ # @return [Time]
2425
+ #
2426
+ # @!attribute [rw] extension_fields
2427
+ # Additional X-headers to include in the DSN.
2428
+ # @return [Array<Types::ExtensionField>]
2429
+ class RecipientDsnFields < Struct.new(
2430
+ :final_recipient,
2431
+ :action,
2432
+ :remote_mta,
2433
+ :status,
2434
+ :diagnostic_code,
2435
+ :last_attempt_date,
2436
+ :extension_fields)
2437
+ include Aws::Structure
2438
+ end
2439
+
2440
+ # Represents a request to reorder the receipt rules within a receipt
2441
+ # rule set. You use receipt rule sets to receive email with Amazon SES.
2442
+ # For more information, see the [Amazon SES Developer Guide][1].
2443
+ #
2444
+ #
2445
+ #
2446
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
2447
+ # @note When making an API call, pass ReorderReceiptRuleSetRequest
2448
+ # data as a hash:
2449
+ #
2450
+ # {
2451
+ # rule_set_name: "ReceiptRuleSetName", # required
2452
+ # rule_names: ["ReceiptRuleName"], # required
2453
+ # }
2454
+ # @!attribute [rw] rule_set_name
2455
+ # The name of the receipt rule set to reorder.
2456
+ # @return [String]
2457
+ #
2458
+ # @!attribute [rw] rule_names
2459
+ # A list of the specified receipt rule set's receipt rules in the
2460
+ # order that you want to put them.
2461
+ # @return [Array<String>]
2462
+ class ReorderReceiptRuleSetRequest < Struct.new(
2463
+ :rule_set_name,
2464
+ :rule_names)
2465
+ include Aws::Structure
2466
+ end
2467
+
2468
+ # An empty element returned on a successful request.
2469
+ class ReorderReceiptRuleSetResponse < Aws::EmptyStructure; end
2470
+
2471
+ # When included in a receipt rule, this action saves the received
2472
+ # message to an Amazon Simple Storage Service (Amazon S3) bucket and,
2473
+ # optionally, publishes a notification to Amazon Simple Notification
2474
+ # Service (Amazon SNS).
2475
+ #
2476
+ # To enable Amazon SES to write emails to your Amazon S3 bucket, use an
2477
+ # AWS KMS key to encrypt your emails, or publish to an Amazon SNS topic
2478
+ # of another account, Amazon SES must have permission to access those
2479
+ # resources. For information about giving permissions, see the [Amazon
2480
+ # SES Developer Guide][1].
2481
+ #
2482
+ # <note markdown="1"> When you save your emails to an Amazon S3 bucket, the maximum email
2483
+ # size (including headers) is 30 MB. Emails larger than that will
2484
+ # bounce.
2485
+ #
2486
+ # </note>
2487
+ #
2488
+ # For information about specifying Amazon S3 actions in receipt rules,
2489
+ # see the [Amazon SES Developer Guide][2].
2490
+ #
2491
+ #
2492
+ #
2493
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html
2494
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-s3.html
2495
+ # @note When making an API call, pass S3Action
2496
+ # data as a hash:
2497
+ #
2498
+ # {
2499
+ # topic_arn: "AmazonResourceName",
2500
+ # bucket_name: "S3BucketName", # required
2501
+ # object_key_prefix: "S3KeyPrefix",
2502
+ # kms_key_arn: "AmazonResourceName",
2503
+ # }
2504
+ # @!attribute [rw] topic_arn
2505
+ # The ARN of the Amazon SNS topic to notify when the message is saved
2506
+ # to the Amazon S3 bucket. An example of an Amazon SNS topic ARN is
2507
+ # `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more information
2508
+ # about Amazon SNS topics, see the [Amazon SNS Developer Guide][1].
2509
+ #
2510
+ #
2511
+ #
2512
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
2513
+ # @return [String]
2514
+ #
2515
+ # @!attribute [rw] bucket_name
2516
+ # The name of the Amazon S3 bucket to which to save the received
2517
+ # email.
2518
+ # @return [String]
2519
+ #
2520
+ # @!attribute [rw] object_key_prefix
2521
+ # The key prefix of the Amazon S3 bucket. The key prefix is similar to
2522
+ # a directory name that enables you to store similar data under the
2523
+ # same directory in a bucket.
2524
+ # @return [String]
2525
+ #
2526
+ # @!attribute [rw] kms_key_arn
2527
+ # The customer master key that Amazon SES should use to encrypt your
2528
+ # emails before saving them to the Amazon S3 bucket. You can use the
2529
+ # default master key or a custom master key you created in AWS KMS as
2530
+ # follows:
2531
+ #
2532
+ # * To use the default master key, provide an ARN in the form of
2533
+ # `arn:aws:kms:REGION:ACCOUNT-ID-WITHOUT-HYPHENS:alias/aws/ses`. For
2534
+ # example, if your AWS account ID is 123456789012 and you want to
2535
+ # use the default master key in the US West (Oregon) region, the ARN
2536
+ # of the default master key would be
2537
+ # `arn:aws:kms:us-west-2:123456789012:alias/aws/ses`. If you use the
2538
+ # default master key, you don't need to perform any extra steps to
2539
+ # give Amazon SES permission to use the key.
2540
+ #
2541
+ # * To use a custom master key you created in AWS KMS, provide the ARN
2542
+ # of the master key and ensure that you add a statement to your
2543
+ # key's policy to give Amazon SES permission to use it. For more
2544
+ # information about giving permissions, see the [Amazon SES
2545
+ # Developer Guide][1].
2546
+ #
2547
+ # For more information about key policies, see the [AWS KMS Developer
2548
+ # Guide][2]. If you do not specify a master key, Amazon SES will not
2549
+ # encrypt your emails.
2550
+ #
2551
+ # Your mail is encrypted by Amazon SES using the Amazon S3 encryption
2552
+ # client before the mail is submitted to Amazon S3 for storage. It is
2553
+ # not encrypted using Amazon S3 server-side encryption. This means
2554
+ # that you must use the Amazon S3 encryption client to decrypt the
2555
+ # email after retrieving it from Amazon S3, as the service has no
2556
+ # access to use your AWS KMS keys for decryption. This encryption
2557
+ # client is currently available with the [AWS Java SDK][3] and [AWS
2558
+ # Ruby SDK][4] only. For more information about client-side encryption
2559
+ # using AWS KMS master keys, see the [Amazon S3 Developer Guide][5].
2560
+ #
2561
+ #
2562
+ #
2563
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html
2564
+ # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html
2565
+ # [3]: http://aws.amazon.com/sdk-for-java/
2566
+ # [4]: http://aws.amazon.com/sdk-for-ruby/
2567
+ # [5]: http://alpha-docs-aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
2568
+ # @return [String]
2569
+ class S3Action < Struct.new(
2570
+ :topic_arn,
2571
+ :bucket_name,
2572
+ :object_key_prefix,
2573
+ :kms_key_arn)
2574
+ include Aws::Structure
2575
+ end
2576
+
2577
+ # When included in a receipt rule, this action publishes a notification
2578
+ # to Amazon Simple Notification Service (Amazon SNS). This action
2579
+ # includes a complete copy of the email content in the Amazon SNS
2580
+ # notifications. Amazon SNS notifications for all other actions simply
2581
+ # provide information about the email. They do not include the email
2582
+ # content itself.
2583
+ #
2584
+ # If you own the Amazon SNS topic, you don't need to do anything to
2585
+ # give Amazon SES permission to publish emails to it. However, if you
2586
+ # don't own the Amazon SNS topic, you need to attach a policy to the
2587
+ # topic to give Amazon SES permissions to access it. For information
2588
+ # about giving permissions, see the [Amazon SES Developer Guide][1].
2589
+ #
2590
+ # You can only publish emails that are 150 KB or less (including the
2591
+ # header) to Amazon SNS. Larger emails will bounce. If you anticipate
2592
+ # emails larger than 150 KB, use the S3 action instead.
2593
+ #
2594
+ # For information about using a receipt rule to publish an Amazon SNS
2595
+ # notification, see the [Amazon SES Developer Guide][2].
2596
+ #
2597
+ #
2598
+ #
2599
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html
2600
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-sns.html
2601
+ # @note When making an API call, pass SNSAction
2602
+ # data as a hash:
2603
+ #
2604
+ # {
2605
+ # topic_arn: "AmazonResourceName", # required
2606
+ # encoding: "UTF-8", # accepts UTF-8, Base64
2607
+ # }
2608
+ # @!attribute [rw] topic_arn
2609
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic to notify. An
2610
+ # example of an Amazon SNS topic ARN is
2611
+ # `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more information
2612
+ # about Amazon SNS topics, see the [Amazon SNS Developer Guide][1].
2613
+ #
2614
+ #
2615
+ #
2616
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
2617
+ # @return [String]
2618
+ #
2619
+ # @!attribute [rw] encoding
2620
+ # The encoding to use for the email within the Amazon SNS
2621
+ # notification. UTF-8 is easier to use, but may not preserve all
2622
+ # special characters when a message was encoded with a different
2623
+ # encoding format. Base64 preserves all special characters. The
2624
+ # default value is UTF-8.
2625
+ # @return [String]
2626
+ class SNSAction < Struct.new(
2627
+ :topic_arn,
2628
+ :encoding)
2629
+ include Aws::Structure
2630
+ end
2631
+
2632
+ # Represents a request to send a bounce message to the sender of an
2633
+ # email you received through Amazon SES.
2634
+ # @note When making an API call, pass SendBounceRequest
2635
+ # data as a hash:
2636
+ #
2637
+ # {
2638
+ # original_message_id: "MessageId", # required
2639
+ # bounce_sender: "Address", # required
2640
+ # explanation: "Explanation",
2641
+ # message_dsn: {
2642
+ # reporting_mta: "ReportingMta", # required
2643
+ # arrival_date: Time.now,
2644
+ # extension_fields: [
2645
+ # {
2646
+ # name: "ExtensionFieldName", # required
2647
+ # value: "ExtensionFieldValue", # required
2648
+ # },
2649
+ # ],
2650
+ # },
2651
+ # bounced_recipient_info_list: [ # required
2652
+ # {
2653
+ # recipient: "Address", # required
2654
+ # recipient_arn: "AmazonResourceName",
2655
+ # bounce_type: "DoesNotExist", # accepts DoesNotExist, MessageTooLarge, ExceededQuota, ContentRejected, Undefined, TemporaryFailure
2656
+ # recipient_dsn_fields: {
2657
+ # final_recipient: "Address",
2658
+ # action: "failed", # required, accepts failed, delayed, delivered, relayed, expanded
2659
+ # remote_mta: "RemoteMta",
2660
+ # status: "DsnStatus", # required
2661
+ # diagnostic_code: "DiagnosticCode",
2662
+ # last_attempt_date: Time.now,
2663
+ # extension_fields: [
2664
+ # {
2665
+ # name: "ExtensionFieldName", # required
2666
+ # value: "ExtensionFieldValue", # required
2667
+ # },
2668
+ # ],
2669
+ # },
2670
+ # },
2671
+ # ],
2672
+ # bounce_sender_arn: "AmazonResourceName",
2673
+ # }
2674
+ # @!attribute [rw] original_message_id
2675
+ # The message ID of the message to be bounced.
2676
+ # @return [String]
2677
+ #
2678
+ # @!attribute [rw] bounce_sender
2679
+ # The address to use in the "From" header of the bounce message.
2680
+ # This must be an identity that you have verified with Amazon SES.
2681
+ # @return [String]
2682
+ #
2683
+ # @!attribute [rw] explanation
2684
+ # Human-readable text for the bounce message to explain the failure.
2685
+ # If not specified, the text will be auto-generated based on the
2686
+ # bounced recipient information.
2687
+ # @return [String]
2688
+ #
2689
+ # @!attribute [rw] message_dsn
2690
+ # Message-related DSN fields. If not specified, Amazon SES will choose
2691
+ # the values.
2692
+ # @return [Types::MessageDsn]
2693
+ #
2694
+ # @!attribute [rw] bounced_recipient_info_list
2695
+ # A list of recipients of the bounced message, including the
2696
+ # information required to create the Delivery Status Notifications
2697
+ # (DSNs) for the recipients. You must specify at least one
2698
+ # `BouncedRecipientInfo` in the list.
2699
+ # @return [Array<Types::BouncedRecipientInfo>]
2700
+ #
2701
+ # @!attribute [rw] bounce_sender_arn
2702
+ # This parameter is used only for sending authorization. It is the ARN
2703
+ # of the identity that is associated with the sending authorization
2704
+ # policy that permits you to use the address in the "From" header of
2705
+ # the bounce. For more information about sending authorization, see
2706
+ # the [Amazon SES Developer Guide][1].
2707
+ #
2708
+ #
2709
+ #
2710
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
2711
+ # @return [String]
2712
+ class SendBounceRequest < Struct.new(
2713
+ :original_message_id,
2714
+ :bounce_sender,
2715
+ :explanation,
2716
+ :message_dsn,
2717
+ :bounced_recipient_info_list,
2718
+ :bounce_sender_arn)
2719
+ include Aws::Structure
2720
+ end
2721
+
2722
+ # Represents a unique message ID.
2723
+ # @!attribute [rw] message_id
2724
+ # The message ID of the bounce message.
2725
+ # @return [String]
2726
+ class SendBounceResponse < Struct.new(
2727
+ :message_id)
2728
+ include Aws::Structure
2729
+ end
2730
+
2731
+ # Represents sending statistics data. Each `SendDataPoint` contains
2732
+ # statistics for a 15-minute period of sending activity.
2733
+ # @!attribute [rw] timestamp
2734
+ # Time of the data point.
2735
+ # @return [Time]
2736
+ #
2737
+ # @!attribute [rw] delivery_attempts
2738
+ # Number of emails that have been sent.
2739
+ # @return [Integer]
2740
+ #
2741
+ # @!attribute [rw] bounces
2742
+ # Number of emails that have bounced.
2743
+ # @return [Integer]
2744
+ #
2745
+ # @!attribute [rw] complaints
2746
+ # Number of unwanted emails that were rejected by recipients.
2747
+ # @return [Integer]
2748
+ #
2749
+ # @!attribute [rw] rejects
2750
+ # Number of emails rejected by Amazon SES.
2751
+ # @return [Integer]
2752
+ class SendDataPoint < Struct.new(
2753
+ :timestamp,
2754
+ :delivery_attempts,
2755
+ :bounces,
2756
+ :complaints,
2757
+ :rejects)
2758
+ include Aws::Structure
2759
+ end
2760
+
2761
+ # Represents a request to send a single formatted email using Amazon
2762
+ # SES. For more information, see the [Amazon SES Developer Guide][1].
2763
+ #
2764
+ #
2765
+ #
2766
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-formatted.html
2767
+ # @note When making an API call, pass SendEmailRequest
2768
+ # data as a hash:
2769
+ #
2770
+ # {
2771
+ # source: "Address", # required
2772
+ # destination: { # required
2773
+ # to_addresses: ["Address"],
2774
+ # cc_addresses: ["Address"],
2775
+ # bcc_addresses: ["Address"],
2776
+ # },
2777
+ # message: { # required
2778
+ # subject: { # required
2779
+ # data: "MessageData", # required
2780
+ # charset: "Charset",
2781
+ # },
2782
+ # body: { # required
2783
+ # text: {
2784
+ # data: "MessageData", # required
2785
+ # charset: "Charset",
2786
+ # },
2787
+ # html: {
2788
+ # data: "MessageData", # required
2789
+ # charset: "Charset",
2790
+ # },
2791
+ # },
2792
+ # },
2793
+ # reply_to_addresses: ["Address"],
2794
+ # return_path: "Address",
2795
+ # source_arn: "AmazonResourceName",
2796
+ # return_path_arn: "AmazonResourceName",
2797
+ # tags: [
2798
+ # {
2799
+ # name: "MessageTagName", # required
2800
+ # value: "MessageTagValue", # required
2801
+ # },
2802
+ # ],
2803
+ # configuration_set_name: "ConfigurationSetName",
2804
+ # }
2805
+ # @!attribute [rw] source
2806
+ # The email address that is sending the email. This email address must
2807
+ # be either individually verified with Amazon SES, or from a domain
2808
+ # that has been verified with Amazon SES. For information about
2809
+ # verifying identities, see the [Amazon SES Developer Guide][1].
2810
+ #
2811
+ # If you are sending on behalf of another user and have been permitted
2812
+ # to do so by a sending authorization policy, then you must also
2813
+ # specify the `SourceArn` parameter. For more information about
2814
+ # sending authorization, see the [Amazon SES Developer Guide][2].
2815
+ #
2816
+ # In all cases, the email address must be 7-bit ASCII. If the text
2817
+ # must contain any other characters, then you must use MIME
2818
+ # encoded-word syntax (RFC 2047) instead of a literal string. MIME
2819
+ # encoded-word syntax uses the following form:
2820
+ # `=?charset?encoding?encoded-text?=`. For more information, see [RFC
2821
+ # 2047][3].
2822
+ #
2823
+ #
2824
+ #
2825
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html
2826
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
2827
+ # [3]: http://tools.ietf.org/html/rfc2047
2828
+ # @return [String]
2829
+ #
2830
+ # @!attribute [rw] destination
2831
+ # The destination for this email, composed of To:, CC:, and BCC:
2832
+ # fields.
2833
+ # @return [Types::Destination]
2834
+ #
2835
+ # @!attribute [rw] message
2836
+ # The message to be sent.
2837
+ # @return [Types::Message]
2838
+ #
2839
+ # @!attribute [rw] reply_to_addresses
2840
+ # The reply-to email address(es) for the message. If the recipient
2841
+ # replies to the message, each reply-to address will receive the
2842
+ # reply.
2843
+ # @return [Array<String>]
2844
+ #
2845
+ # @!attribute [rw] return_path
2846
+ # The email address to which bounces and complaints are to be
2847
+ # forwarded when feedback forwarding is enabled. If the message cannot
2848
+ # be delivered to the recipient, then an error message will be
2849
+ # returned from the recipient's ISP; this message will then be
2850
+ # forwarded to the email address specified by the `ReturnPath`
2851
+ # parameter. The `ReturnPath` parameter is never overwritten. This
2852
+ # email address must be either individually verified with Amazon SES,
2853
+ # or from a domain that has been verified with Amazon SES.
2854
+ # @return [String]
2855
+ #
2856
+ # @!attribute [rw] source_arn
2857
+ # This parameter is used only for sending authorization. It is the ARN
2858
+ # of the identity that is associated with the sending authorization
2859
+ # policy that permits you to send for the email address specified in
2860
+ # the `Source` parameter.
2861
+ #
2862
+ # For example, if the owner of `example.com` (which has ARN
2863
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
2864
+ # a policy to it that authorizes you to send from `user@example.com`,
2865
+ # then you would specify the `SourceArn` to be
2866
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
2867
+ # `Source` to be `user@example.com`.
2868
+ #
2869
+ # For more information about sending authorization, see the [Amazon
2870
+ # SES Developer Guide][1].
2871
+ #
2872
+ #
2873
+ #
2874
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
2875
+ # @return [String]
2876
+ #
2877
+ # @!attribute [rw] return_path_arn
2878
+ # This parameter is used only for sending authorization. It is the ARN
2879
+ # of the identity that is associated with the sending authorization
2880
+ # policy that permits you to use the email address specified in the
2881
+ # `ReturnPath` parameter.
2882
+ #
2883
+ # For example, if the owner of `example.com` (which has ARN
2884
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
2885
+ # a policy to it that authorizes you to use `feedback@example.com`,
2886
+ # then you would specify the `ReturnPathArn` to be
2887
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
2888
+ # `ReturnPath` to be `feedback@example.com`.
2889
+ #
2890
+ # For more information about sending authorization, see the [Amazon
2891
+ # SES Developer Guide][1].
2892
+ #
2893
+ #
2894
+ #
2895
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
2896
+ # @return [String]
2897
+ #
2898
+ # @!attribute [rw] tags
2899
+ # A list of tags, in the form of name/value pairs, to apply to an
2900
+ # email that you send using `SendEmail`. Tags correspond to
2901
+ # characteristics of the email that you define, so that you can
2902
+ # publish email sending events.
2903
+ # @return [Array<Types::MessageTag>]
2904
+ #
2905
+ # @!attribute [rw] configuration_set_name
2906
+ # The name of the configuration set to use when you send an email
2907
+ # using `SendEmail`.
2908
+ # @return [String]
2909
+ class SendEmailRequest < Struct.new(
2910
+ :source,
2911
+ :destination,
2912
+ :message,
2913
+ :reply_to_addresses,
2914
+ :return_path,
2915
+ :source_arn,
2916
+ :return_path_arn,
2917
+ :tags,
2918
+ :configuration_set_name)
2919
+ include Aws::Structure
2920
+ end
2921
+
2922
+ # Represents a unique message ID.
2923
+ # @!attribute [rw] message_id
2924
+ # The unique message identifier returned from the `SendEmail` action.
2925
+ # @return [String]
2926
+ class SendEmailResponse < Struct.new(
2927
+ :message_id)
2928
+ include Aws::Structure
2929
+ end
2930
+
2931
+ # Represents a request to send a single raw email using Amazon SES. For
2932
+ # more information, see the [Amazon SES Developer Guide][1].
2933
+ #
2934
+ #
2935
+ #
2936
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html
2937
+ # @note When making an API call, pass SendRawEmailRequest
2938
+ # data as a hash:
2939
+ #
2940
+ # {
2941
+ # source: "Address",
2942
+ # destinations: ["Address"],
2943
+ # raw_message: { # required
2944
+ # data: "data", # required
2945
+ # },
2946
+ # from_arn: "AmazonResourceName",
2947
+ # source_arn: "AmazonResourceName",
2948
+ # return_path_arn: "AmazonResourceName",
2949
+ # tags: [
2950
+ # {
2951
+ # name: "MessageTagName", # required
2952
+ # value: "MessageTagValue", # required
2953
+ # },
2954
+ # ],
2955
+ # configuration_set_name: "ConfigurationSetName",
2956
+ # }
2957
+ # @!attribute [rw] source
2958
+ # The identity's email address. If you do not provide a value for
2959
+ # this parameter, you must specify a "From" address in the raw text
2960
+ # of the message. (You can also specify both.)
2961
+ #
2962
+ # By default, the string must be 7-bit ASCII. If the text must contain
2963
+ # any other characters, then you must use MIME encoded-word syntax
2964
+ # (RFC 2047) instead of a literal string. MIME encoded-word syntax
2965
+ # uses the following form: `=?charset?encoding?encoded-text?=`. For
2966
+ # more information, see [RFC 2047][1].
2967
+ #
2968
+ # <note markdown="1"> If you specify the `Source` parameter and have feedback forwarding
2969
+ # enabled, then bounces and complaints will be sent to this email
2970
+ # address. This takes precedence over any *Return-Path* header that
2971
+ # you might include in the raw text of the message.
2972
+ #
2973
+ # </note>
2974
+ #
2975
+ #
2976
+ #
2977
+ # [1]: http://tools.ietf.org/html/rfc2047
2978
+ # @return [String]
2979
+ #
2980
+ # @!attribute [rw] destinations
2981
+ # A list of destinations for the message, consisting of To:, CC:, and
2982
+ # BCC: addresses.
2983
+ # @return [Array<String>]
2984
+ #
2985
+ # @!attribute [rw] raw_message
2986
+ # The raw text of the message. The client is responsible for ensuring
2987
+ # the following:
2988
+ #
2989
+ # * Message must contain a header and a body, separated by a blank
2990
+ # line.
2991
+ #
2992
+ # * All required header fields must be present.
2993
+ #
2994
+ # * Each part of a multipart MIME message must be formatted properly.
2995
+ #
2996
+ # * MIME content types must be among those supported by Amazon SES.
2997
+ # For more information, go to the [Amazon SES Developer Guide][1].
2998
+ #
2999
+ # * Must be base64-encoded.
3000
+ #
3001
+ #
3002
+ #
3003
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mime-types.html
3004
+ # @return [Types::RawMessage]
3005
+ #
3006
+ # @!attribute [rw] from_arn
3007
+ # This parameter is used only for sending authorization. It is the ARN
3008
+ # of the identity that is associated with the sending authorization
3009
+ # policy that permits you to specify a particular "From" address in
3010
+ # the header of the raw email.
3011
+ #
3012
+ # Instead of using this parameter, you can use the X-header
3013
+ # `X-SES-FROM-ARN` in the raw message of the email. If you use both
3014
+ # the `FromArn` parameter and the corresponding X-header, Amazon SES
3015
+ # uses the value of the `FromArn` parameter.
3016
+ #
3017
+ # <note markdown="1"> For information about when to use this parameter, see the
3018
+ # description of `SendRawEmail` in this guide, or see the [Amazon SES
3019
+ # Developer Guide][1].
3020
+ #
3021
+ # </note>
3022
+ #
3023
+ #
3024
+ #
3025
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html
3026
+ # @return [String]
3027
+ #
3028
+ # @!attribute [rw] source_arn
3029
+ # This parameter is used only for sending authorization. It is the ARN
3030
+ # of the identity that is associated with the sending authorization
3031
+ # policy that permits you to send for the email address specified in
3032
+ # the `Source` parameter.
3033
+ #
3034
+ # For example, if the owner of `example.com` (which has ARN
3035
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
3036
+ # a policy to it that authorizes you to send from `user@example.com`,
3037
+ # then you would specify the `SourceArn` to be
3038
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
3039
+ # `Source` to be `user@example.com`.
3040
+ #
3041
+ # Instead of using this parameter, you can use the X-header
3042
+ # `X-SES-SOURCE-ARN` in the raw message of the email. If you use both
3043
+ # the `SourceArn` parameter and the corresponding X-header, Amazon SES
3044
+ # uses the value of the `SourceArn` parameter.
3045
+ #
3046
+ # <note markdown="1"> For information about when to use this parameter, see the
3047
+ # description of `SendRawEmail` in this guide, or see the [Amazon SES
3048
+ # Developer Guide][1].
3049
+ #
3050
+ # </note>
3051
+ #
3052
+ #
3053
+ #
3054
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html
3055
+ # @return [String]
3056
+ #
3057
+ # @!attribute [rw] return_path_arn
3058
+ # This parameter is used only for sending authorization. It is the ARN
3059
+ # of the identity that is associated with the sending authorization
3060
+ # policy that permits you to use the email address specified in the
3061
+ # `ReturnPath` parameter.
3062
+ #
3063
+ # For example, if the owner of `example.com` (which has ARN
3064
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
3065
+ # a policy to it that authorizes you to use `feedback@example.com`,
3066
+ # then you would specify the `ReturnPathArn` to be
3067
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
3068
+ # `ReturnPath` to be `feedback@example.com`.
3069
+ #
3070
+ # Instead of using this parameter, you can use the X-header
3071
+ # `X-SES-RETURN-PATH-ARN` in the raw message of the email. If you use
3072
+ # both the `ReturnPathArn` parameter and the corresponding X-header,
3073
+ # Amazon SES uses the value of the `ReturnPathArn` parameter.
3074
+ #
3075
+ # <note markdown="1"> For information about when to use this parameter, see the
3076
+ # description of `SendRawEmail` in this guide, or see the [Amazon SES
3077
+ # Developer Guide][1].
3078
+ #
3079
+ # </note>
3080
+ #
3081
+ #
3082
+ #
3083
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html
3084
+ # @return [String]
3085
+ #
3086
+ # @!attribute [rw] tags
3087
+ # A list of tags, in the form of name/value pairs, to apply to an
3088
+ # email that you send using `SendRawEmail`. Tags correspond to
3089
+ # characteristics of the email that you define, so that you can
3090
+ # publish email sending events.
3091
+ # @return [Array<Types::MessageTag>]
3092
+ #
3093
+ # @!attribute [rw] configuration_set_name
3094
+ # The name of the configuration set to use when you send an email
3095
+ # using `SendRawEmail`.
3096
+ # @return [String]
3097
+ class SendRawEmailRequest < Struct.new(
3098
+ :source,
3099
+ :destinations,
3100
+ :raw_message,
3101
+ :from_arn,
3102
+ :source_arn,
3103
+ :return_path_arn,
3104
+ :tags,
3105
+ :configuration_set_name)
3106
+ include Aws::Structure
3107
+ end
3108
+
3109
+ # Represents a unique message ID.
3110
+ # @!attribute [rw] message_id
3111
+ # The unique message identifier returned from the `SendRawEmail`
3112
+ # action.
3113
+ # @return [String]
3114
+ class SendRawEmailResponse < Struct.new(
3115
+ :message_id)
3116
+ include Aws::Structure
3117
+ end
3118
+
3119
+ # Represents a request to set a receipt rule set as the active receipt
3120
+ # rule set. You use receipt rule sets to receive email with Amazon SES.
3121
+ # For more information, see the [Amazon SES Developer Guide][1].
3122
+ #
3123
+ #
3124
+ #
3125
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
3126
+ # @note When making an API call, pass SetActiveReceiptRuleSetRequest
3127
+ # data as a hash:
3128
+ #
3129
+ # {
3130
+ # rule_set_name: "ReceiptRuleSetName",
3131
+ # }
3132
+ # @!attribute [rw] rule_set_name
3133
+ # The name of the receipt rule set to make active. Setting this value
3134
+ # to null disables all email receiving.
3135
+ # @return [String]
3136
+ class SetActiveReceiptRuleSetRequest < Struct.new(
3137
+ :rule_set_name)
3138
+ include Aws::Structure
3139
+ end
3140
+
3141
+ # An empty element returned on a successful request.
3142
+ class SetActiveReceiptRuleSetResponse < Aws::EmptyStructure; end
3143
+
3144
+ # Represents a request to enable or disable Amazon SES Easy DKIM signing
3145
+ # for an identity. For more information about setting up Easy DKIM, see
3146
+ # the [Amazon SES Developer Guide][1].
3147
+ #
3148
+ #
3149
+ #
3150
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html
3151
+ # @note When making an API call, pass SetIdentityDkimEnabledRequest
3152
+ # data as a hash:
3153
+ #
3154
+ # {
3155
+ # identity: "Identity", # required
3156
+ # dkim_enabled: false, # required
3157
+ # }
3158
+ # @!attribute [rw] identity
3159
+ # The identity for which DKIM signing should be enabled or disabled.
3160
+ # @return [String]
3161
+ #
3162
+ # @!attribute [rw] dkim_enabled
3163
+ # Sets whether DKIM signing is enabled for an identity. Set to `true`
3164
+ # to enable DKIM signing for this identity; `false` to disable it.
3165
+ # @return [Boolean]
3166
+ class SetIdentityDkimEnabledRequest < Struct.new(
3167
+ :identity,
3168
+ :dkim_enabled)
3169
+ include Aws::Structure
3170
+ end
3171
+
3172
+ # An empty element returned on a successful request.
3173
+ class SetIdentityDkimEnabledResponse < Aws::EmptyStructure; end
3174
+
3175
+ # Represents a request to enable or disable whether Amazon SES forwards
3176
+ # you bounce and complaint notifications through email. For information
3177
+ # about email feedback forwarding, see the [Amazon SES Developer
3178
+ # Guide][1].
3179
+ #
3180
+ #
3181
+ #
3182
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-email.html
3183
+ # @note When making an API call, pass SetIdentityFeedbackForwardingEnabledRequest
3184
+ # data as a hash:
3185
+ #
3186
+ # {
3187
+ # identity: "Identity", # required
3188
+ # forwarding_enabled: false, # required
3189
+ # }
3190
+ # @!attribute [rw] identity
3191
+ # The identity for which to set bounce and complaint notification
3192
+ # forwarding. Examples: `user@example.com`, `example.com`.
3193
+ # @return [String]
3194
+ #
3195
+ # @!attribute [rw] forwarding_enabled
3196
+ # Sets whether Amazon SES will forward bounce and complaint
3197
+ # notifications as email. `true` specifies that Amazon SES will
3198
+ # forward bounce and complaint notifications as email, in addition to
3199
+ # any Amazon SNS topic publishing otherwise specified. `false`
3200
+ # specifies that Amazon SES will publish bounce and complaint
3201
+ # notifications only through Amazon SNS. This value can only be set to
3202
+ # `false` when Amazon SNS topics are set for both `Bounce` and
3203
+ # `Complaint` notification types.
3204
+ # @return [Boolean]
3205
+ class SetIdentityFeedbackForwardingEnabledRequest < Struct.new(
3206
+ :identity,
3207
+ :forwarding_enabled)
3208
+ include Aws::Structure
3209
+ end
3210
+
3211
+ # An empty element returned on a successful request.
3212
+ class SetIdentityFeedbackForwardingEnabledResponse < Aws::EmptyStructure; end
3213
+
3214
+ # Represents a request to set whether Amazon SES includes the original
3215
+ # email headers in the Amazon SNS notifications of a specified type. For
3216
+ # information about notifications, see the [Amazon SES Developer
3217
+ # Guide][1].
3218
+ #
3219
+ #
3220
+ #
3221
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-sns.html
3222
+ # @note When making an API call, pass SetIdentityHeadersInNotificationsEnabledRequest
3223
+ # data as a hash:
3224
+ #
3225
+ # {
3226
+ # identity: "Identity", # required
3227
+ # notification_type: "Bounce", # required, accepts Bounce, Complaint, Delivery
3228
+ # enabled: false, # required
3229
+ # }
3230
+ # @!attribute [rw] identity
3231
+ # The identity for which to enable or disable headers in
3232
+ # notifications. Examples: `user@example.com`, `example.com`.
3233
+ # @return [String]
3234
+ #
3235
+ # @!attribute [rw] notification_type
3236
+ # The notification type for which to enable or disable headers in
3237
+ # notifications.
3238
+ # @return [String]
3239
+ #
3240
+ # @!attribute [rw] enabled
3241
+ # Sets whether Amazon SES includes the original email headers in
3242
+ # Amazon SNS notifications of the specified notification type. A value
3243
+ # of `true` specifies that Amazon SES will include headers in
3244
+ # notifications, and a value of `false` specifies that Amazon SES will
3245
+ # not include headers in notifications.
3246
+ #
3247
+ # This value can only be set when `NotificationType` is already set to
3248
+ # use a particular Amazon SNS topic.
3249
+ # @return [Boolean]
3250
+ class SetIdentityHeadersInNotificationsEnabledRequest < Struct.new(
3251
+ :identity,
3252
+ :notification_type,
3253
+ :enabled)
3254
+ include Aws::Structure
3255
+ end
3256
+
3257
+ # An empty element returned on a successful request.
3258
+ class SetIdentityHeadersInNotificationsEnabledResponse < Aws::EmptyStructure; end
3259
+
3260
+ # Represents a request to enable or disable the Amazon SES custom MAIL
3261
+ # FROM domain setup for a verified identity. For information about using
3262
+ # a custom MAIL FROM domain, see the [Amazon SES Developer Guide][1].
3263
+ #
3264
+ #
3265
+ #
3266
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html
3267
+ # @note When making an API call, pass SetIdentityMailFromDomainRequest
3268
+ # data as a hash:
3269
+ #
3270
+ # {
3271
+ # identity: "Identity", # required
3272
+ # mail_from_domain: "MailFromDomainName",
3273
+ # behavior_on_mx_failure: "UseDefaultValue", # accepts UseDefaultValue, RejectMessage
3274
+ # }
3275
+ # @!attribute [rw] identity
3276
+ # The verified identity for which you want to enable or disable the
3277
+ # specified custom MAIL FROM domain.
3278
+ # @return [String]
3279
+ #
3280
+ # @!attribute [rw] mail_from_domain
3281
+ # The custom MAIL FROM domain that you want the verified identity to
3282
+ # use. The MAIL FROM domain must 1) be a subdomain of the verified
3283
+ # identity, 2) not be used in a "From" address if the MAIL FROM
3284
+ # domain is the destination of email feedback forwarding (for more
3285
+ # information, see the [Amazon SES Developer Guide][1]), and 3) not be
3286
+ # used to receive emails. A value of `null` disables the custom MAIL
3287
+ # FROM setting for the identity.
3288
+ #
3289
+ #
3290
+ #
3291
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html
3292
+ # @return [String]
3293
+ #
3294
+ # @!attribute [rw] behavior_on_mx_failure
3295
+ # The action that you want Amazon SES to take if it cannot
3296
+ # successfully read the required MX record when you send an email. If
3297
+ # you choose `UseDefaultValue`, Amazon SES will use amazonses.com (or
3298
+ # a subdomain of that) as the MAIL FROM domain. If you choose
3299
+ # `RejectMessage`, Amazon SES will return a
3300
+ # `MailFromDomainNotVerified` error and not send the email.
3301
+ #
3302
+ # The action specified in `BehaviorOnMXFailure` is taken when the
3303
+ # custom MAIL FROM domain setup is in the `Pending`, `Failed`, and
3304
+ # `TemporaryFailure` states.
3305
+ # @return [String]
3306
+ class SetIdentityMailFromDomainRequest < Struct.new(
3307
+ :identity,
3308
+ :mail_from_domain,
3309
+ :behavior_on_mx_failure)
3310
+ include Aws::Structure
3311
+ end
3312
+
3313
+ # An empty element returned on a successful request.
3314
+ class SetIdentityMailFromDomainResponse < Aws::EmptyStructure; end
3315
+
3316
+ # Represents a request to specify the Amazon SNS topic to which Amazon
3317
+ # SES will publish bounce, complaint, or delivery notifications for
3318
+ # emails sent with that identity as the Source. For information about
3319
+ # Amazon SES notifications, see the [Amazon SES Developer Guide][1].
3320
+ #
3321
+ #
3322
+ #
3323
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-sns.html
3324
+ # @note When making an API call, pass SetIdentityNotificationTopicRequest
3325
+ # data as a hash:
3326
+ #
3327
+ # {
3328
+ # identity: "Identity", # required
3329
+ # notification_type: "Bounce", # required, accepts Bounce, Complaint, Delivery
3330
+ # sns_topic: "NotificationTopic",
3331
+ # }
3332
+ # @!attribute [rw] identity
3333
+ # The identity for which the Amazon SNS topic will be set. You can
3334
+ # specify an identity by using its name or by using its Amazon
3335
+ # Resource Name (ARN). Examples: `user@example.com`, `example.com`,
3336
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`.
3337
+ # @return [String]
3338
+ #
3339
+ # @!attribute [rw] notification_type
3340
+ # The type of notifications that will be published to the specified
3341
+ # Amazon SNS topic.
3342
+ # @return [String]
3343
+ #
3344
+ # @!attribute [rw] sns_topic
3345
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic. If the
3346
+ # parameter is omitted from the request or a null value is passed,
3347
+ # `SnsTopic` is cleared and publishing is disabled.
3348
+ # @return [String]
3349
+ class SetIdentityNotificationTopicRequest < Struct.new(
3350
+ :identity,
3351
+ :notification_type,
3352
+ :sns_topic)
3353
+ include Aws::Structure
3354
+ end
3355
+
3356
+ # An empty element returned on a successful request.
3357
+ class SetIdentityNotificationTopicResponse < Aws::EmptyStructure; end
3358
+
3359
+ # Represents a request to set the position of a receipt rule in a
3360
+ # receipt rule set. You use receipt rule sets to receive email with
3361
+ # Amazon SES. For more information, see the [Amazon SES Developer
3362
+ # Guide][1].
3363
+ #
3364
+ #
3365
+ #
3366
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
3367
+ # @note When making an API call, pass SetReceiptRulePositionRequest
3368
+ # data as a hash:
3369
+ #
3370
+ # {
3371
+ # rule_set_name: "ReceiptRuleSetName", # required
3372
+ # rule_name: "ReceiptRuleName", # required
3373
+ # after: "ReceiptRuleName",
3374
+ # }
3375
+ # @!attribute [rw] rule_set_name
3376
+ # The name of the receipt rule set that contains the receipt rule to
3377
+ # reposition.
3378
+ # @return [String]
3379
+ #
3380
+ # @!attribute [rw] rule_name
3381
+ # The name of the receipt rule to reposition.
3382
+ # @return [String]
3383
+ #
3384
+ # @!attribute [rw] after
3385
+ # The name of the receipt rule after which to place the specified
3386
+ # receipt rule.
3387
+ # @return [String]
3388
+ class SetReceiptRulePositionRequest < Struct.new(
3389
+ :rule_set_name,
3390
+ :rule_name,
3391
+ :after)
3392
+ include Aws::Structure
3393
+ end
3394
+
3395
+ # An empty element returned on a successful request.
3396
+ class SetReceiptRulePositionResponse < Aws::EmptyStructure; end
3397
+
3398
+ # When included in a receipt rule, this action terminates the evaluation
3399
+ # of the receipt rule set and, optionally, publishes a notification to
3400
+ # Amazon Simple Notification Service (Amazon SNS).
3401
+ #
3402
+ # For information about setting a stop action in a receipt rule, see the
3403
+ # [Amazon SES Developer Guide][1].
3404
+ #
3405
+ #
3406
+ #
3407
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-stop.html
3408
+ # @note When making an API call, pass StopAction
3409
+ # data as a hash:
3410
+ #
3411
+ # {
3412
+ # scope: "RuleSet", # required, accepts RuleSet
3413
+ # topic_arn: "AmazonResourceName",
3414
+ # }
3415
+ # @!attribute [rw] scope
3416
+ # The scope to which the Stop action applies. That is, what is being
3417
+ # stopped.
3418
+ # @return [String]
3419
+ #
3420
+ # @!attribute [rw] topic_arn
3421
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic to notify
3422
+ # when the stop action is taken. An example of an Amazon SNS topic ARN
3423
+ # is `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more
3424
+ # information about Amazon SNS topics, see the [Amazon SNS Developer
3425
+ # Guide][1].
3426
+ #
3427
+ #
3428
+ #
3429
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
3430
+ # @return [String]
3431
+ class StopAction < Struct.new(
3432
+ :scope,
3433
+ :topic_arn)
3434
+ include Aws::Structure
3435
+ end
3436
+
3437
+ # Represents a request to update the event destination of a
3438
+ # configuration set. Configuration sets enable you to publish email
3439
+ # sending events. For information about using configuration sets, see
3440
+ # the [Amazon SES Developer Guide][1].
3441
+ #
3442
+ #
3443
+ #
3444
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
3445
+ # @note When making an API call, pass UpdateConfigurationSetEventDestinationRequest
3446
+ # data as a hash:
3447
+ #
3448
+ # {
3449
+ # configuration_set_name: "ConfigurationSetName", # required
3450
+ # event_destination: { # required
3451
+ # name: "EventDestinationName", # required
3452
+ # enabled: false,
3453
+ # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery
3454
+ # kinesis_firehose_destination: {
3455
+ # iam_role_arn: "AmazonResourceName", # required
3456
+ # delivery_stream_arn: "AmazonResourceName", # required
3457
+ # },
3458
+ # cloud_watch_destination: {
3459
+ # dimension_configurations: [ # required
3460
+ # {
3461
+ # dimension_name: "DimensionName", # required
3462
+ # dimension_value_source: "messageTag", # required, accepts messageTag, emailHeader
3463
+ # default_dimension_value: "DefaultDimensionValue", # required
3464
+ # },
3465
+ # ],
3466
+ # },
3467
+ # },
3468
+ # }
3469
+ # @!attribute [rw] configuration_set_name
3470
+ # The name of the configuration set that you want to update.
3471
+ # @return [String]
3472
+ #
3473
+ # @!attribute [rw] event_destination
3474
+ # The event destination object that you want to apply to the specified
3475
+ # configuration set.
3476
+ # @return [Types::EventDestination]
3477
+ class UpdateConfigurationSetEventDestinationRequest < Struct.new(
3478
+ :configuration_set_name,
3479
+ :event_destination)
3480
+ include Aws::Structure
3481
+ end
3482
+
3483
+ # An empty element returned on a successful request.
3484
+ class UpdateConfigurationSetEventDestinationResponse < Aws::EmptyStructure; end
3485
+
3486
+ # Represents a request to update a receipt rule. You use receipt rules
3487
+ # to receive email with Amazon SES. For more information, see the
3488
+ # [Amazon SES Developer Guide][1].
3489
+ #
3490
+ #
3491
+ #
3492
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html
3493
+ # @note When making an API call, pass UpdateReceiptRuleRequest
3494
+ # data as a hash:
3495
+ #
3496
+ # {
3497
+ # rule_set_name: "ReceiptRuleSetName", # required
3498
+ # rule: { # required
3499
+ # name: "ReceiptRuleName", # required
3500
+ # enabled: false,
3501
+ # tls_policy: "Require", # accepts Require, Optional
3502
+ # recipients: ["Recipient"],
3503
+ # actions: [
3504
+ # {
3505
+ # s3_action: {
3506
+ # topic_arn: "AmazonResourceName",
3507
+ # bucket_name: "S3BucketName", # required
3508
+ # object_key_prefix: "S3KeyPrefix",
3509
+ # kms_key_arn: "AmazonResourceName",
3510
+ # },
3511
+ # bounce_action: {
3512
+ # topic_arn: "AmazonResourceName",
3513
+ # smtp_reply_code: "BounceSmtpReplyCode", # required
3514
+ # status_code: "BounceStatusCode",
3515
+ # message: "BounceMessage", # required
3516
+ # sender: "Address", # required
3517
+ # },
3518
+ # workmail_action: {
3519
+ # topic_arn: "AmazonResourceName",
3520
+ # organization_arn: "AmazonResourceName", # required
3521
+ # },
3522
+ # lambda_action: {
3523
+ # topic_arn: "AmazonResourceName",
3524
+ # function_arn: "AmazonResourceName", # required
3525
+ # invocation_type: "Event", # accepts Event, RequestResponse
3526
+ # },
3527
+ # stop_action: {
3528
+ # scope: "RuleSet", # required, accepts RuleSet
3529
+ # topic_arn: "AmazonResourceName",
3530
+ # },
3531
+ # add_header_action: {
3532
+ # header_name: "HeaderName", # required
3533
+ # header_value: "HeaderValue", # required
3534
+ # },
3535
+ # sns_action: {
3536
+ # topic_arn: "AmazonResourceName", # required
3537
+ # encoding: "UTF-8", # accepts UTF-8, Base64
3538
+ # },
3539
+ # },
3540
+ # ],
3541
+ # scan_enabled: false,
3542
+ # },
3543
+ # }
3544
+ # @!attribute [rw] rule_set_name
3545
+ # The name of the receipt rule set to which the receipt rule belongs.
3546
+ # @return [String]
3547
+ #
3548
+ # @!attribute [rw] rule
3549
+ # A data structure that contains the updated receipt rule information.
3550
+ # @return [Types::ReceiptRule]
3551
+ class UpdateReceiptRuleRequest < Struct.new(
3552
+ :rule_set_name,
3553
+ :rule)
3554
+ include Aws::Structure
3555
+ end
3556
+
3557
+ # An empty element returned on a successful request.
3558
+ class UpdateReceiptRuleResponse < Aws::EmptyStructure; end
3559
+
3560
+ # Represents a request to generate the CNAME records needed to set up
3561
+ # Easy DKIM with Amazon SES. For more information about setting up Easy
3562
+ # DKIM, see the [Amazon SES Developer Guide][1].
3563
+ #
3564
+ #
3565
+ #
3566
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html
3567
+ # @note When making an API call, pass VerifyDomainDkimRequest
3568
+ # data as a hash:
3569
+ #
3570
+ # {
3571
+ # domain: "Domain", # required
3572
+ # }
3573
+ # @!attribute [rw] domain
3574
+ # The name of the domain to be verified for Easy DKIM signing.
3575
+ # @return [String]
3576
+ class VerifyDomainDkimRequest < Struct.new(
3577
+ :domain)
3578
+ include Aws::Structure
3579
+ end
3580
+
3581
+ # Returns CNAME records that you must publish to the DNS server of your
3582
+ # domain to set up Easy DKIM with Amazon SES.
3583
+ # @!attribute [rw] dkim_tokens
3584
+ # A set of character strings that represent the domain's identity. If
3585
+ # the identity is an email address, the tokens represent the domain of
3586
+ # that address.
3587
+ #
3588
+ # Using these tokens, you will need to create DNS CNAME records that
3589
+ # point to DKIM public keys hosted by Amazon SES. Amazon Web Services
3590
+ # will eventually detect that you have updated your DNS records; this
3591
+ # detection process may take up to 72 hours. Upon successful
3592
+ # detection, Amazon SES will be able to DKIM-sign emails originating
3593
+ # from that domain.
3594
+ #
3595
+ # For more information about creating DNS records using DKIM tokens,
3596
+ # go to the [Amazon SES Developer Guide][1].
3597
+ #
3598
+ #
3599
+ #
3600
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html
3601
+ # @return [Array<String>]
3602
+ class VerifyDomainDkimResponse < Struct.new(
3603
+ :dkim_tokens)
3604
+ include Aws::Structure
3605
+ end
3606
+
3607
+ # Represents a request to begin Amazon SES domain verification and to
3608
+ # generate the TXT records that you must publish to the DNS server of
3609
+ # your domain to complete the verification. For information about domain
3610
+ # verification, see the [Amazon SES Developer Guide][1].
3611
+ #
3612
+ #
3613
+ #
3614
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-domains.html
3615
+ # @note When making an API call, pass VerifyDomainIdentityRequest
3616
+ # data as a hash:
3617
+ #
3618
+ # {
3619
+ # domain: "Domain", # required
3620
+ # }
3621
+ # @!attribute [rw] domain
3622
+ # The domain to be verified.
3623
+ # @return [String]
3624
+ class VerifyDomainIdentityRequest < Struct.new(
3625
+ :domain)
3626
+ include Aws::Structure
3627
+ end
3628
+
3629
+ # Returns a TXT record that you must publish to the DNS server of your
3630
+ # domain to complete domain verification with Amazon SES.
3631
+ # @!attribute [rw] verification_token
3632
+ # A TXT record that must be placed in the DNS settings for the domain,
3633
+ # in order to complete domain verification.
3634
+ # @return [String]
3635
+ class VerifyDomainIdentityResponse < Struct.new(
3636
+ :verification_token)
3637
+ include Aws::Structure
3638
+ end
3639
+
3640
+ # Represents a request to begin email address verification with Amazon
3641
+ # SES. For information about email address verification, see the [Amazon
3642
+ # SES Developer Guide][1].
3643
+ #
3644
+ #
3645
+ #
3646
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html
3647
+ # @note When making an API call, pass VerifyEmailAddressRequest
3648
+ # data as a hash:
3649
+ #
3650
+ # {
3651
+ # email_address: "Address", # required
3652
+ # }
3653
+ # @!attribute [rw] email_address
3654
+ # The email address to be verified.
3655
+ # @return [String]
3656
+ class VerifyEmailAddressRequest < Struct.new(
3657
+ :email_address)
3658
+ include Aws::Structure
3659
+ end
3660
+
3661
+ # Represents a request to begin email address verification with Amazon
3662
+ # SES. For information about email address verification, see the [Amazon
3663
+ # SES Developer Guide][1].
3664
+ #
3665
+ #
3666
+ #
3667
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html
3668
+ # @note When making an API call, pass VerifyEmailIdentityRequest
3669
+ # data as a hash:
3670
+ #
3671
+ # {
3672
+ # email_address: "Address", # required
3673
+ # }
3674
+ # @!attribute [rw] email_address
3675
+ # The email address to be verified.
3676
+ # @return [String]
3677
+ class VerifyEmailIdentityRequest < Struct.new(
3678
+ :email_address)
3679
+ include Aws::Structure
3680
+ end
3681
+
3682
+ # An empty element returned on a successful request.
3683
+ class VerifyEmailIdentityResponse < Aws::EmptyStructure; end
3684
+
3685
+ # When included in a receipt rule, this action calls Amazon WorkMail
3686
+ # and, optionally, publishes a notification to Amazon Simple
3687
+ # Notification Service (Amazon SNS). You will typically not use this
3688
+ # action directly because Amazon WorkMail adds the rule automatically
3689
+ # during its setup procedure.
3690
+ #
3691
+ # For information using a receipt rule to call Amazon WorkMail, see the
3692
+ # [Amazon SES Developer Guide][1].
3693
+ #
3694
+ #
3695
+ #
3696
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-workmail.html
3697
+ # @note When making an API call, pass WorkmailAction
3698
+ # data as a hash:
3699
+ #
3700
+ # {
3701
+ # topic_arn: "AmazonResourceName",
3702
+ # organization_arn: "AmazonResourceName", # required
3703
+ # }
3704
+ # @!attribute [rw] topic_arn
3705
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic to notify
3706
+ # when the WorkMail action is called. An example of an Amazon SNS
3707
+ # topic ARN is `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more
3708
+ # information about Amazon SNS topics, see the [Amazon SNS Developer
3709
+ # Guide][1].
3710
+ #
3711
+ #
3712
+ #
3713
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
3714
+ # @return [String]
3715
+ #
3716
+ # @!attribute [rw] organization_arn
3717
+ # The ARN of the Amazon WorkMail organization. An example of an Amazon
3718
+ # WorkMail organization ARN is
3719
+ # `arn:aws:workmail:us-west-2:123456789012:organization/m-68755160c4cb4e29a2b2f8fb58f359d7`.
3720
+ # For information about Amazon WorkMail organizations, see the [Amazon
3721
+ # WorkMail Administrator Guide][1].
3722
+ #
3723
+ #
3724
+ #
3725
+ # [1]: http://docs.aws.amazon.com/workmail/latest/adminguide/organizations_overview.html
3726
+ # @return [String]
3727
+ class WorkmailAction < Struct.new(
3728
+ :topic_arn,
3729
+ :organization_arn)
3730
+ include Aws::Structure
3731
+ end
3732
+
3733
+ end
3734
+ end
3735
+ end