aws-sdk-ses 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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