aws-sdk-ses 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -26,6 +26,11 @@ module Aws::SES
26
26
  BounceType = Shapes::StringShape.new(name: 'BounceType')
27
27
  BouncedRecipientInfo = Shapes::StructureShape.new(name: 'BouncedRecipientInfo')
28
28
  BouncedRecipientInfoList = Shapes::ListShape.new(name: 'BouncedRecipientInfoList')
29
+ BulkEmailDestination = Shapes::StructureShape.new(name: 'BulkEmailDestination')
30
+ BulkEmailDestinationList = Shapes::ListShape.new(name: 'BulkEmailDestinationList')
31
+ BulkEmailDestinationStatus = Shapes::StructureShape.new(name: 'BulkEmailDestinationStatus')
32
+ BulkEmailDestinationStatusList = Shapes::ListShape.new(name: 'BulkEmailDestinationStatusList')
33
+ BulkEmailStatus = Shapes::StringShape.new(name: 'BulkEmailStatus')
29
34
  CannotDeleteException = Shapes::StructureShape.new(name: 'CannotDeleteException')
30
35
  Charset = Shapes::StringShape.new(name: 'Charset')
31
36
  Cidr = Shapes::StringShape.new(name: 'Cidr')
@@ -55,6 +60,8 @@ module Aws::SES
55
60
  CreateReceiptRuleResponse = Shapes::StructureShape.new(name: 'CreateReceiptRuleResponse')
56
61
  CreateReceiptRuleSetRequest = Shapes::StructureShape.new(name: 'CreateReceiptRuleSetRequest')
57
62
  CreateReceiptRuleSetResponse = Shapes::StructureShape.new(name: 'CreateReceiptRuleSetResponse')
63
+ CreateTemplateRequest = Shapes::StructureShape.new(name: 'CreateTemplateRequest')
64
+ CreateTemplateResponse = Shapes::StructureShape.new(name: 'CreateTemplateResponse')
58
65
  CustomMailFromStatus = Shapes::StringShape.new(name: 'CustomMailFromStatus')
59
66
  CustomRedirectDomain = Shapes::StringShape.new(name: 'CustomRedirectDomain')
60
67
  DefaultDimensionValue = Shapes::StringShape.new(name: 'DefaultDimensionValue')
@@ -74,6 +81,8 @@ module Aws::SES
74
81
  DeleteReceiptRuleResponse = Shapes::StructureShape.new(name: 'DeleteReceiptRuleResponse')
75
82
  DeleteReceiptRuleSetRequest = Shapes::StructureShape.new(name: 'DeleteReceiptRuleSetRequest')
76
83
  DeleteReceiptRuleSetResponse = Shapes::StructureShape.new(name: 'DeleteReceiptRuleSetResponse')
84
+ DeleteTemplateRequest = Shapes::StructureShape.new(name: 'DeleteTemplateRequest')
85
+ DeleteTemplateResponse = Shapes::StructureShape.new(name: 'DeleteTemplateResponse')
77
86
  DeleteVerifiedEmailAddressRequest = Shapes::StructureShape.new(name: 'DeleteVerifiedEmailAddressRequest')
78
87
  DescribeActiveReceiptRuleSetRequest = Shapes::StructureShape.new(name: 'DescribeActiveReceiptRuleSetRequest')
79
88
  DescribeActiveReceiptRuleSetResponse = Shapes::StructureShape.new(name: 'DescribeActiveReceiptRuleSetResponse')
@@ -92,6 +101,7 @@ module Aws::SES
92
101
  DsnAction = Shapes::StringShape.new(name: 'DsnAction')
93
102
  DsnStatus = Shapes::StringShape.new(name: 'DsnStatus')
94
103
  Enabled = Shapes::BooleanShape.new(name: 'Enabled')
104
+ Error = Shapes::StringShape.new(name: 'Error')
95
105
  EventDestination = Shapes::StructureShape.new(name: 'EventDestination')
96
106
  EventDestinationAlreadyExistsException = Shapes::StructureShape.new(name: 'EventDestinationAlreadyExistsException')
97
107
  EventDestinationDoesNotExistException = Shapes::StructureShape.new(name: 'EventDestinationDoesNotExistException')
@@ -116,8 +126,11 @@ module Aws::SES
116
126
  GetIdentityVerificationAttributesResponse = Shapes::StructureShape.new(name: 'GetIdentityVerificationAttributesResponse')
117
127
  GetSendQuotaResponse = Shapes::StructureShape.new(name: 'GetSendQuotaResponse')
118
128
  GetSendStatisticsResponse = Shapes::StructureShape.new(name: 'GetSendStatisticsResponse')
129
+ GetTemplateRequest = Shapes::StructureShape.new(name: 'GetTemplateRequest')
130
+ GetTemplateResponse = Shapes::StructureShape.new(name: 'GetTemplateResponse')
119
131
  HeaderName = Shapes::StringShape.new(name: 'HeaderName')
120
132
  HeaderValue = Shapes::StringShape.new(name: 'HeaderValue')
133
+ HtmlPart = Shapes::StringShape.new(name: 'HtmlPart')
121
134
  Identity = Shapes::StringShape.new(name: 'Identity')
122
135
  IdentityDkimAttributes = Shapes::StructureShape.new(name: 'IdentityDkimAttributes')
123
136
  IdentityList = Shapes::ListShape.new(name: 'IdentityList')
@@ -130,9 +143,11 @@ module Aws::SES
130
143
  InvalidFirehoseDestinationException = Shapes::StructureShape.new(name: 'InvalidFirehoseDestinationException')
131
144
  InvalidLambdaFunctionException = Shapes::StructureShape.new(name: 'InvalidLambdaFunctionException')
132
145
  InvalidPolicyException = Shapes::StructureShape.new(name: 'InvalidPolicyException')
146
+ InvalidRenderingParameterException = Shapes::StructureShape.new(name: 'InvalidRenderingParameterException')
133
147
  InvalidS3ConfigurationException = Shapes::StructureShape.new(name: 'InvalidS3ConfigurationException')
134
148
  InvalidSNSDestinationException = Shapes::StructureShape.new(name: 'InvalidSNSDestinationException')
135
149
  InvalidSnsTopicException = Shapes::StructureShape.new(name: 'InvalidSnsTopicException')
150
+ InvalidTemplateException = Shapes::StructureShape.new(name: 'InvalidTemplateException')
136
151
  InvalidTrackingOptionsException = Shapes::StructureShape.new(name: 'InvalidTrackingOptionsException')
137
152
  InvocationType = Shapes::StringShape.new(name: 'InvocationType')
138
153
  KinesisFirehoseDestination = Shapes::StructureShape.new(name: 'KinesisFirehoseDestination')
@@ -149,6 +164,8 @@ module Aws::SES
149
164
  ListReceiptFiltersResponse = Shapes::StructureShape.new(name: 'ListReceiptFiltersResponse')
150
165
  ListReceiptRuleSetsRequest = Shapes::StructureShape.new(name: 'ListReceiptRuleSetsRequest')
151
166
  ListReceiptRuleSetsResponse = Shapes::StructureShape.new(name: 'ListReceiptRuleSetsResponse')
167
+ ListTemplatesRequest = Shapes::StructureShape.new(name: 'ListTemplatesRequest')
168
+ ListTemplatesResponse = Shapes::StructureShape.new(name: 'ListTemplatesResponse')
152
169
  ListVerifiedEmailAddressesResponse = Shapes::StructureShape.new(name: 'ListVerifiedEmailAddressesResponse')
153
170
  MailFromDomainAttributes = Shapes::MapShape.new(name: 'MailFromDomainAttributes')
154
171
  MailFromDomainName = Shapes::StringShape.new(name: 'MailFromDomainName')
@@ -165,6 +182,7 @@ module Aws::SES
165
182
  MessageTagList = Shapes::ListShape.new(name: 'MessageTagList')
166
183
  MessageTagName = Shapes::StringShape.new(name: 'MessageTagName')
167
184
  MessageTagValue = Shapes::StringShape.new(name: 'MessageTagValue')
185
+ MissingRenderingAttributeException = Shapes::StructureShape.new(name: 'MissingRenderingAttributeException')
168
186
  NextToken = Shapes::StringShape.new(name: 'NextToken')
169
187
  NotificationAttributes = Shapes::MapShape.new(name: 'NotificationAttributes')
170
188
  NotificationTopic = Shapes::StringShape.new(name: 'NotificationTopic')
@@ -195,6 +213,7 @@ module Aws::SES
195
213
  RecipientDsnFields = Shapes::StructureShape.new(name: 'RecipientDsnFields')
196
214
  RecipientsList = Shapes::ListShape.new(name: 'RecipientsList')
197
215
  RemoteMta = Shapes::StringShape.new(name: 'RemoteMta')
216
+ RenderedTemplate = Shapes::StringShape.new(name: 'RenderedTemplate')
198
217
  ReorderReceiptRuleSetRequest = Shapes::StructureShape.new(name: 'ReorderReceiptRuleSetRequest')
199
218
  ReorderReceiptRuleSetResponse = Shapes::StructureShape.new(name: 'ReorderReceiptRuleSetResponse')
200
219
  ReportingMta = Shapes::StringShape.new(name: 'ReportingMta')
@@ -209,12 +228,16 @@ module Aws::SES
209
228
  SNSDestination = Shapes::StructureShape.new(name: 'SNSDestination')
210
229
  SendBounceRequest = Shapes::StructureShape.new(name: 'SendBounceRequest')
211
230
  SendBounceResponse = Shapes::StructureShape.new(name: 'SendBounceResponse')
231
+ SendBulkTemplatedEmailRequest = Shapes::StructureShape.new(name: 'SendBulkTemplatedEmailRequest')
232
+ SendBulkTemplatedEmailResponse = Shapes::StructureShape.new(name: 'SendBulkTemplatedEmailResponse')
212
233
  SendDataPoint = Shapes::StructureShape.new(name: 'SendDataPoint')
213
234
  SendDataPointList = Shapes::ListShape.new(name: 'SendDataPointList')
214
235
  SendEmailRequest = Shapes::StructureShape.new(name: 'SendEmailRequest')
215
236
  SendEmailResponse = Shapes::StructureShape.new(name: 'SendEmailResponse')
216
237
  SendRawEmailRequest = Shapes::StructureShape.new(name: 'SendRawEmailRequest')
217
238
  SendRawEmailResponse = Shapes::StructureShape.new(name: 'SendRawEmailResponse')
239
+ SendTemplatedEmailRequest = Shapes::StructureShape.new(name: 'SendTemplatedEmailRequest')
240
+ SendTemplatedEmailResponse = Shapes::StructureShape.new(name: 'SendTemplatedEmailResponse')
218
241
  SentLast24Hours = Shapes::FloatShape.new(name: 'SentLast24Hours')
219
242
  SetActiveReceiptRuleSetRequest = Shapes::StructureShape.new(name: 'SetActiveReceiptRuleSetRequest')
220
243
  SetActiveReceiptRuleSetResponse = Shapes::StructureShape.new(name: 'SetActiveReceiptRuleSetResponse')
@@ -232,6 +255,16 @@ module Aws::SES
232
255
  SetReceiptRulePositionResponse = Shapes::StructureShape.new(name: 'SetReceiptRulePositionResponse')
233
256
  StopAction = Shapes::StructureShape.new(name: 'StopAction')
234
257
  StopScope = Shapes::StringShape.new(name: 'StopScope')
258
+ SubjectPart = Shapes::StringShape.new(name: 'SubjectPart')
259
+ Template = Shapes::StructureShape.new(name: 'Template')
260
+ TemplateData = Shapes::StringShape.new(name: 'TemplateData')
261
+ TemplateDoesNotExistException = Shapes::StructureShape.new(name: 'TemplateDoesNotExistException')
262
+ TemplateMetadata = Shapes::StructureShape.new(name: 'TemplateMetadata')
263
+ TemplateMetadataList = Shapes::ListShape.new(name: 'TemplateMetadataList')
264
+ TemplateName = Shapes::StringShape.new(name: 'TemplateName')
265
+ TestRenderTemplateRequest = Shapes::StructureShape.new(name: 'TestRenderTemplateRequest')
266
+ TestRenderTemplateResponse = Shapes::StructureShape.new(name: 'TestRenderTemplateResponse')
267
+ TextPart = Shapes::StringShape.new(name: 'TextPart')
235
268
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
236
269
  TlsPolicy = Shapes::StringShape.new(name: 'TlsPolicy')
237
270
  TrackingOptions = Shapes::StructureShape.new(name: 'TrackingOptions')
@@ -243,6 +276,8 @@ module Aws::SES
243
276
  UpdateConfigurationSetTrackingOptionsResponse = Shapes::StructureShape.new(name: 'UpdateConfigurationSetTrackingOptionsResponse')
244
277
  UpdateReceiptRuleRequest = Shapes::StructureShape.new(name: 'UpdateReceiptRuleRequest')
245
278
  UpdateReceiptRuleResponse = Shapes::StructureShape.new(name: 'UpdateReceiptRuleResponse')
279
+ UpdateTemplateRequest = Shapes::StructureShape.new(name: 'UpdateTemplateRequest')
280
+ UpdateTemplateResponse = Shapes::StructureShape.new(name: 'UpdateTemplateResponse')
246
281
  VerificationAttributes = Shapes::MapShape.new(name: 'VerificationAttributes')
247
282
  VerificationStatus = Shapes::StringShape.new(name: 'VerificationStatus')
248
283
  VerificationToken = Shapes::StringShape.new(name: 'VerificationToken')
@@ -281,6 +316,20 @@ module Aws::SES
281
316
 
282
317
  BouncedRecipientInfoList.member = Shapes::ShapeRef.new(shape: BouncedRecipientInfo)
283
318
 
319
+ BulkEmailDestination.add_member(:destination, Shapes::ShapeRef.new(shape: Destination, required: true, location_name: "Destination"))
320
+ BulkEmailDestination.add_member(:replacement_tags, Shapes::ShapeRef.new(shape: MessageTagList, location_name: "ReplacementTags"))
321
+ BulkEmailDestination.add_member(:replacement_template_data, Shapes::ShapeRef.new(shape: TemplateData, location_name: "ReplacementTemplateData"))
322
+ BulkEmailDestination.struct_class = Types::BulkEmailDestination
323
+
324
+ BulkEmailDestinationList.member = Shapes::ShapeRef.new(shape: BulkEmailDestination)
325
+
326
+ BulkEmailDestinationStatus.add_member(:status, Shapes::ShapeRef.new(shape: BulkEmailStatus, location_name: "Status"))
327
+ BulkEmailDestinationStatus.add_member(:error, Shapes::ShapeRef.new(shape: Error, location_name: "Error"))
328
+ BulkEmailDestinationStatus.add_member(:message_id, Shapes::ShapeRef.new(shape: MessageId, location_name: "MessageId"))
329
+ BulkEmailDestinationStatus.struct_class = Types::BulkEmailDestinationStatus
330
+
331
+ BulkEmailDestinationStatusList.member = Shapes::ShapeRef.new(shape: BulkEmailDestinationStatus)
332
+
284
333
  CloneReceiptRuleSetRequest.add_member(:rule_set_name, Shapes::ShapeRef.new(shape: ReceiptRuleSetName, required: true, location_name: "RuleSetName"))
285
334
  CloneReceiptRuleSetRequest.add_member(:original_rule_set_name, Shapes::ShapeRef.new(shape: ReceiptRuleSetName, required: true, location_name: "OriginalRuleSetName"))
286
335
  CloneReceiptRuleSetRequest.struct_class = Types::CloneReceiptRuleSetRequest
@@ -342,6 +391,11 @@ module Aws::SES
342
391
 
343
392
  CreateReceiptRuleSetResponse.struct_class = Types::CreateReceiptRuleSetResponse
344
393
 
394
+ CreateTemplateRequest.add_member(:template, Shapes::ShapeRef.new(shape: Template, required: true, location_name: "Template"))
395
+ CreateTemplateRequest.struct_class = Types::CreateTemplateRequest
396
+
397
+ CreateTemplateResponse.struct_class = Types::CreateTemplateResponse
398
+
345
399
  DeleteConfigurationSetEventDestinationRequest.add_member(:configuration_set_name, Shapes::ShapeRef.new(shape: ConfigurationSetName, required: true, location_name: "ConfigurationSetName"))
346
400
  DeleteConfigurationSetEventDestinationRequest.add_member(:event_destination_name, Shapes::ShapeRef.new(shape: EventDestinationName, required: true, location_name: "EventDestinationName"))
347
401
  DeleteConfigurationSetEventDestinationRequest.struct_class = Types::DeleteConfigurationSetEventDestinationRequest
@@ -385,6 +439,11 @@ module Aws::SES
385
439
 
386
440
  DeleteReceiptRuleSetResponse.struct_class = Types::DeleteReceiptRuleSetResponse
387
441
 
442
+ DeleteTemplateRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: TemplateName, required: true, location_name: "TemplateName"))
443
+ DeleteTemplateRequest.struct_class = Types::DeleteTemplateRequest
444
+
445
+ DeleteTemplateResponse.struct_class = Types::DeleteTemplateResponse
446
+
388
447
  DeleteVerifiedEmailAddressRequest.add_member(:email_address, Shapes::ShapeRef.new(shape: Address, required: true, location_name: "EmailAddress"))
389
448
  DeleteVerifiedEmailAddressRequest.struct_class = Types::DeleteVerifiedEmailAddressRequest
390
449
 
@@ -482,6 +541,12 @@ module Aws::SES
482
541
  GetSendStatisticsResponse.add_member(:send_data_points, Shapes::ShapeRef.new(shape: SendDataPointList, location_name: "SendDataPoints"))
483
542
  GetSendStatisticsResponse.struct_class = Types::GetSendStatisticsResponse
484
543
 
544
+ GetTemplateRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: TemplateName, required: true, location_name: "TemplateName"))
545
+ GetTemplateRequest.struct_class = Types::GetTemplateRequest
546
+
547
+ GetTemplateResponse.add_member(:template, Shapes::ShapeRef.new(shape: Template, location_name: "Template"))
548
+ GetTemplateResponse.struct_class = Types::GetTemplateResponse
549
+
485
550
  IdentityDkimAttributes.add_member(:dkim_enabled, Shapes::ShapeRef.new(shape: Enabled, required: true, location_name: "DkimEnabled"))
486
551
  IdentityDkimAttributes.add_member(:dkim_verification_status, Shapes::ShapeRef.new(shape: VerificationStatus, required: true, location_name: "DkimVerificationStatus"))
487
552
  IdentityDkimAttributes.add_member(:dkim_tokens, Shapes::ShapeRef.new(shape: VerificationTokenList, location_name: "DkimTokens"))
@@ -551,6 +616,14 @@ module Aws::SES
551
616
  ListReceiptRuleSetsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
552
617
  ListReceiptRuleSetsResponse.struct_class = Types::ListReceiptRuleSetsResponse
553
618
 
619
+ ListTemplatesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
620
+ ListTemplatesRequest.add_member(:max_items, Shapes::ShapeRef.new(shape: MaxItems, location_name: "MaxItems"))
621
+ ListTemplatesRequest.struct_class = Types::ListTemplatesRequest
622
+
623
+ ListTemplatesResponse.add_member(:templates_metadata, Shapes::ShapeRef.new(shape: TemplateMetadataList, location_name: "TemplatesMetadata"))
624
+ ListTemplatesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
625
+ ListTemplatesResponse.struct_class = Types::ListTemplatesResponse
626
+
554
627
  ListVerifiedEmailAddressesResponse.add_member(:verified_email_addresses, Shapes::ShapeRef.new(shape: AddressList, location_name: "VerifiedEmailAddresses"))
555
628
  ListVerifiedEmailAddressesResponse.struct_class = Types::ListVerifiedEmailAddressesResponse
556
629
 
@@ -670,6 +743,22 @@ module Aws::SES
670
743
  SendBounceResponse.add_member(:message_id, Shapes::ShapeRef.new(shape: MessageId, location_name: "MessageId"))
671
744
  SendBounceResponse.struct_class = Types::SendBounceResponse
672
745
 
746
+ SendBulkTemplatedEmailRequest.add_member(:source, Shapes::ShapeRef.new(shape: Address, required: true, location_name: "Source"))
747
+ SendBulkTemplatedEmailRequest.add_member(:source_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "SourceArn"))
748
+ SendBulkTemplatedEmailRequest.add_member(:reply_to_addresses, Shapes::ShapeRef.new(shape: AddressList, location_name: "ReplyToAddresses"))
749
+ SendBulkTemplatedEmailRequest.add_member(:return_path, Shapes::ShapeRef.new(shape: Address, location_name: "ReturnPath"))
750
+ SendBulkTemplatedEmailRequest.add_member(:return_path_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "ReturnPathArn"))
751
+ SendBulkTemplatedEmailRequest.add_member(:configuration_set_name, Shapes::ShapeRef.new(shape: ConfigurationSetName, location_name: "ConfigurationSetName"))
752
+ SendBulkTemplatedEmailRequest.add_member(:default_tags, Shapes::ShapeRef.new(shape: MessageTagList, location_name: "DefaultTags"))
753
+ SendBulkTemplatedEmailRequest.add_member(:template, Shapes::ShapeRef.new(shape: TemplateName, required: true, location_name: "Template"))
754
+ SendBulkTemplatedEmailRequest.add_member(:template_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "TemplateArn"))
755
+ SendBulkTemplatedEmailRequest.add_member(:default_template_data, Shapes::ShapeRef.new(shape: TemplateData, location_name: "DefaultTemplateData"))
756
+ SendBulkTemplatedEmailRequest.add_member(:destinations, Shapes::ShapeRef.new(shape: BulkEmailDestinationList, required: true, location_name: "Destinations"))
757
+ SendBulkTemplatedEmailRequest.struct_class = Types::SendBulkTemplatedEmailRequest
758
+
759
+ SendBulkTemplatedEmailResponse.add_member(:status, Shapes::ShapeRef.new(shape: BulkEmailDestinationStatusList, required: true, location_name: "Status"))
760
+ SendBulkTemplatedEmailResponse.struct_class = Types::SendBulkTemplatedEmailResponse
761
+
673
762
  SendDataPoint.add_member(:timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "Timestamp"))
674
763
  SendDataPoint.add_member(:delivery_attempts, Shapes::ShapeRef.new(shape: Counter, location_name: "DeliveryAttempts"))
675
764
  SendDataPoint.add_member(:bounces, Shapes::ShapeRef.new(shape: Counter, location_name: "Bounces"))
@@ -706,6 +795,22 @@ module Aws::SES
706
795
  SendRawEmailResponse.add_member(:message_id, Shapes::ShapeRef.new(shape: MessageId, required: true, location_name: "MessageId"))
707
796
  SendRawEmailResponse.struct_class = Types::SendRawEmailResponse
708
797
 
798
+ SendTemplatedEmailRequest.add_member(:source, Shapes::ShapeRef.new(shape: Address, required: true, location_name: "Source"))
799
+ SendTemplatedEmailRequest.add_member(:destination, Shapes::ShapeRef.new(shape: Destination, required: true, location_name: "Destination"))
800
+ SendTemplatedEmailRequest.add_member(:reply_to_addresses, Shapes::ShapeRef.new(shape: AddressList, location_name: "ReplyToAddresses"))
801
+ SendTemplatedEmailRequest.add_member(:return_path, Shapes::ShapeRef.new(shape: Address, location_name: "ReturnPath"))
802
+ SendTemplatedEmailRequest.add_member(:source_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "SourceArn"))
803
+ SendTemplatedEmailRequest.add_member(:return_path_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "ReturnPathArn"))
804
+ SendTemplatedEmailRequest.add_member(:tags, Shapes::ShapeRef.new(shape: MessageTagList, location_name: "Tags"))
805
+ SendTemplatedEmailRequest.add_member(:configuration_set_name, Shapes::ShapeRef.new(shape: ConfigurationSetName, location_name: "ConfigurationSetName"))
806
+ SendTemplatedEmailRequest.add_member(:template, Shapes::ShapeRef.new(shape: TemplateName, required: true, location_name: "Template"))
807
+ SendTemplatedEmailRequest.add_member(:template_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "TemplateArn"))
808
+ SendTemplatedEmailRequest.add_member(:template_data, Shapes::ShapeRef.new(shape: TemplateData, required: true, location_name: "TemplateData"))
809
+ SendTemplatedEmailRequest.struct_class = Types::SendTemplatedEmailRequest
810
+
811
+ SendTemplatedEmailResponse.add_member(:message_id, Shapes::ShapeRef.new(shape: MessageId, required: true, location_name: "MessageId"))
812
+ SendTemplatedEmailResponse.struct_class = Types::SendTemplatedEmailResponse
813
+
709
814
  SetActiveReceiptRuleSetRequest.add_member(:rule_set_name, Shapes::ShapeRef.new(shape: ReceiptRuleSetName, location_name: "RuleSetName"))
710
815
  SetActiveReceiptRuleSetRequest.struct_class = Types::SetActiveReceiptRuleSetRequest
711
816
 
@@ -755,6 +860,25 @@ module Aws::SES
755
860
  StopAction.add_member(:topic_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "TopicArn"))
756
861
  StopAction.struct_class = Types::StopAction
757
862
 
863
+ Template.add_member(:template_name, Shapes::ShapeRef.new(shape: TemplateName, required: true, location_name: "TemplateName"))
864
+ Template.add_member(:subject_part, Shapes::ShapeRef.new(shape: SubjectPart, location_name: "SubjectPart"))
865
+ Template.add_member(:text_part, Shapes::ShapeRef.new(shape: TextPart, location_name: "TextPart"))
866
+ Template.add_member(:html_part, Shapes::ShapeRef.new(shape: HtmlPart, location_name: "HtmlPart"))
867
+ Template.struct_class = Types::Template
868
+
869
+ TemplateMetadata.add_member(:name, Shapes::ShapeRef.new(shape: TemplateName, location_name: "Name"))
870
+ TemplateMetadata.add_member(:created_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTimestamp"))
871
+ TemplateMetadata.struct_class = Types::TemplateMetadata
872
+
873
+ TemplateMetadataList.member = Shapes::ShapeRef.new(shape: TemplateMetadata)
874
+
875
+ TestRenderTemplateRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: TemplateName, required: true, location_name: "TemplateName"))
876
+ TestRenderTemplateRequest.add_member(:template_data, Shapes::ShapeRef.new(shape: TemplateData, required: true, location_name: "TemplateData"))
877
+ TestRenderTemplateRequest.struct_class = Types::TestRenderTemplateRequest
878
+
879
+ TestRenderTemplateResponse.add_member(:rendered_template, Shapes::ShapeRef.new(shape: RenderedTemplate, location_name: "RenderedTemplate"))
880
+ TestRenderTemplateResponse.struct_class = Types::TestRenderTemplateResponse
881
+
758
882
  TrackingOptions.add_member(:custom_redirect_domain, Shapes::ShapeRef.new(shape: CustomRedirectDomain, location_name: "CustomRedirectDomain"))
759
883
  TrackingOptions.struct_class = Types::TrackingOptions
760
884
 
@@ -776,6 +900,11 @@ module Aws::SES
776
900
 
777
901
  UpdateReceiptRuleResponse.struct_class = Types::UpdateReceiptRuleResponse
778
902
 
903
+ UpdateTemplateRequest.add_member(:template, Shapes::ShapeRef.new(shape: Template, required: true, location_name: "Template"))
904
+ UpdateTemplateRequest.struct_class = Types::UpdateTemplateRequest
905
+
906
+ UpdateTemplateResponse.struct_class = Types::UpdateTemplateResponse
907
+
779
908
  VerificationAttributes.key = Shapes::ShapeRef.new(shape: Identity)
780
909
  VerificationAttributes.value = Shapes::ShapeRef.new(shape: IdentityVerificationAttributes)
781
910
 
@@ -902,6 +1031,17 @@ module Aws::SES
902
1031
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
903
1032
  end)
904
1033
 
1034
+ api.add_operation(:create_template, Seahorse::Model::Operation.new.tap do |o|
1035
+ o.name = "CreateTemplate"
1036
+ o.http_method = "POST"
1037
+ o.http_request_uri = "/"
1038
+ o.input = Shapes::ShapeRef.new(shape: CreateTemplateRequest)
1039
+ o.output = Shapes::ShapeRef.new(shape: CreateTemplateResponse)
1040
+ o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
1041
+ o.errors << Shapes::ShapeRef.new(shape: InvalidTemplateException)
1042
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1043
+ end)
1044
+
905
1045
  api.add_operation(:delete_configuration_set, Seahorse::Model::Operation.new.tap do |o|
906
1046
  o.name = "DeleteConfigurationSet"
907
1047
  o.http_method = "POST"
@@ -973,6 +1113,14 @@ module Aws::SES
973
1113
  o.errors << Shapes::ShapeRef.new(shape: CannotDeleteException)
974
1114
  end)
975
1115
 
1116
+ api.add_operation(:delete_template, Seahorse::Model::Operation.new.tap do |o|
1117
+ o.name = "DeleteTemplate"
1118
+ o.http_method = "POST"
1119
+ o.http_request_uri = "/"
1120
+ o.input = Shapes::ShapeRef.new(shape: DeleteTemplateRequest)
1121
+ o.output = Shapes::ShapeRef.new(shape: DeleteTemplateResponse)
1122
+ end)
1123
+
976
1124
  api.add_operation(:delete_verified_email_address, Seahorse::Model::Operation.new.tap do |o|
977
1125
  o.name = "DeleteVerifiedEmailAddress"
978
1126
  o.http_method = "POST"
@@ -1073,6 +1221,15 @@ module Aws::SES
1073
1221
  o.output = Shapes::ShapeRef.new(shape: GetSendStatisticsResponse)
1074
1222
  end)
1075
1223
 
1224
+ api.add_operation(:get_template, Seahorse::Model::Operation.new.tap do |o|
1225
+ o.name = "GetTemplate"
1226
+ o.http_method = "POST"
1227
+ o.http_request_uri = "/"
1228
+ o.input = Shapes::ShapeRef.new(shape: GetTemplateRequest)
1229
+ o.output = Shapes::ShapeRef.new(shape: GetTemplateResponse)
1230
+ o.errors << Shapes::ShapeRef.new(shape: TemplateDoesNotExistException)
1231
+ end)
1232
+
1076
1233
  api.add_operation(:list_configuration_sets, Seahorse::Model::Operation.new.tap do |o|
1077
1234
  o.name = "ListConfigurationSets"
1078
1235
  o.http_method = "POST"
@@ -1119,6 +1276,14 @@ module Aws::SES
1119
1276
  o.output = Shapes::ShapeRef.new(shape: ListReceiptRuleSetsResponse)
1120
1277
  end)
1121
1278
 
1279
+ api.add_operation(:list_templates, Seahorse::Model::Operation.new.tap do |o|
1280
+ o.name = "ListTemplates"
1281
+ o.http_method = "POST"
1282
+ o.http_request_uri = "/"
1283
+ o.input = Shapes::ShapeRef.new(shape: ListTemplatesRequest)
1284
+ o.output = Shapes::ShapeRef.new(shape: ListTemplatesResponse)
1285
+ end)
1286
+
1122
1287
  api.add_operation(:list_verified_email_addresses, Seahorse::Model::Operation.new.tap do |o|
1123
1288
  o.name = "ListVerifiedEmailAddresses"
1124
1289
  o.http_method = "POST"
@@ -1155,6 +1320,18 @@ module Aws::SES
1155
1320
  o.errors << Shapes::ShapeRef.new(shape: MessageRejected)
1156
1321
  end)
1157
1322
 
1323
+ api.add_operation(:send_bulk_templated_email, Seahorse::Model::Operation.new.tap do |o|
1324
+ o.name = "SendBulkTemplatedEmail"
1325
+ o.http_method = "POST"
1326
+ o.http_request_uri = "/"
1327
+ o.input = Shapes::ShapeRef.new(shape: SendBulkTemplatedEmailRequest)
1328
+ o.output = Shapes::ShapeRef.new(shape: SendBulkTemplatedEmailResponse)
1329
+ o.errors << Shapes::ShapeRef.new(shape: MessageRejected)
1330
+ o.errors << Shapes::ShapeRef.new(shape: MailFromDomainNotVerifiedException)
1331
+ o.errors << Shapes::ShapeRef.new(shape: ConfigurationSetDoesNotExistException)
1332
+ o.errors << Shapes::ShapeRef.new(shape: TemplateDoesNotExistException)
1333
+ end)
1334
+
1158
1335
  api.add_operation(:send_email, Seahorse::Model::Operation.new.tap do |o|
1159
1336
  o.name = "SendEmail"
1160
1337
  o.http_method = "POST"
@@ -1177,6 +1354,18 @@ module Aws::SES
1177
1354
  o.errors << Shapes::ShapeRef.new(shape: ConfigurationSetDoesNotExistException)
1178
1355
  end)
1179
1356
 
1357
+ api.add_operation(:send_templated_email, Seahorse::Model::Operation.new.tap do |o|
1358
+ o.name = "SendTemplatedEmail"
1359
+ o.http_method = "POST"
1360
+ o.http_request_uri = "/"
1361
+ o.input = Shapes::ShapeRef.new(shape: SendTemplatedEmailRequest)
1362
+ o.output = Shapes::ShapeRef.new(shape: SendTemplatedEmailResponse)
1363
+ o.errors << Shapes::ShapeRef.new(shape: MessageRejected)
1364
+ o.errors << Shapes::ShapeRef.new(shape: MailFromDomainNotVerifiedException)
1365
+ o.errors << Shapes::ShapeRef.new(shape: ConfigurationSetDoesNotExistException)
1366
+ o.errors << Shapes::ShapeRef.new(shape: TemplateDoesNotExistException)
1367
+ end)
1368
+
1180
1369
  api.add_operation(:set_active_receipt_rule_set, Seahorse::Model::Operation.new.tap do |o|
1181
1370
  o.name = "SetActiveReceiptRuleSet"
1182
1371
  o.http_method = "POST"
@@ -1236,6 +1425,17 @@ module Aws::SES
1236
1425
  o.errors << Shapes::ShapeRef.new(shape: RuleDoesNotExistException)
1237
1426
  end)
1238
1427
 
1428
+ api.add_operation(:test_render_template, Seahorse::Model::Operation.new.tap do |o|
1429
+ o.name = "TestRenderTemplate"
1430
+ o.http_method = "POST"
1431
+ o.http_request_uri = "/"
1432
+ o.input = Shapes::ShapeRef.new(shape: TestRenderTemplateRequest)
1433
+ o.output = Shapes::ShapeRef.new(shape: TestRenderTemplateResponse)
1434
+ o.errors << Shapes::ShapeRef.new(shape: TemplateDoesNotExistException)
1435
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRenderingParameterException)
1436
+ o.errors << Shapes::ShapeRef.new(shape: MissingRenderingAttributeException)
1437
+ end)
1438
+
1239
1439
  api.add_operation(:update_configuration_set_event_destination, Seahorse::Model::Operation.new.tap do |o|
1240
1440
  o.name = "UpdateConfigurationSetEventDestination"
1241
1441
  o.http_method = "POST"
@@ -1274,6 +1474,16 @@ module Aws::SES
1274
1474
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1275
1475
  end)
1276
1476
 
1477
+ api.add_operation(:update_template, Seahorse::Model::Operation.new.tap do |o|
1478
+ o.name = "UpdateTemplate"
1479
+ o.http_method = "POST"
1480
+ o.http_request_uri = "/"
1481
+ o.input = Shapes::ShapeRef.new(shape: UpdateTemplateRequest)
1482
+ o.output = Shapes::ShapeRef.new(shape: UpdateTemplateResponse)
1483
+ o.errors << Shapes::ShapeRef.new(shape: TemplateDoesNotExistException)
1484
+ o.errors << Shapes::ShapeRef.new(shape: InvalidTemplateException)
1485
+ end)
1486
+
1277
1487
  api.add_operation(:verify_domain_dkim, Seahorse::Model::Operation.new.tap do |o|
1278
1488
  o.name = "VerifyDomainDkim"
1279
1489
  o.http_method = "POST"
@@ -225,6 +225,133 @@ module Aws::SES
225
225
  include Aws::Structure
226
226
  end
227
227
 
228
+ # An array that contains one or more Destinations, as well as the tags
229
+ # and replacement data associated with each of those Destinations.
230
+ #
231
+ # @note When making an API call, you may pass BulkEmailDestination
232
+ # data as a hash:
233
+ #
234
+ # {
235
+ # destination: { # required
236
+ # to_addresses: ["Address"],
237
+ # cc_addresses: ["Address"],
238
+ # bcc_addresses: ["Address"],
239
+ # },
240
+ # replacement_tags: [
241
+ # {
242
+ # name: "MessageTagName", # required
243
+ # value: "MessageTagValue", # required
244
+ # },
245
+ # ],
246
+ # replacement_template_data: "TemplateData",
247
+ # }
248
+ #
249
+ # @!attribute [rw] destination
250
+ # Represents the destination of the message, consisting of To:, CC:,
251
+ # and BCC: fields.
252
+ #
253
+ # By default, the string must be 7-bit ASCII. If the text must contain
254
+ # any other characters, then you must use MIME encoded-word syntax
255
+ # (RFC 2047) instead of a literal string. MIME encoded-word syntax
256
+ # uses the following form: `=?charset?encoding?encoded-text?=`. For
257
+ # more information, see [RFC 2047][1].
258
+ #
259
+ #
260
+ #
261
+ # [1]: https://tools.ietf.org/html/rfc2047
262
+ # @return [Types::Destination]
263
+ #
264
+ # @!attribute [rw] replacement_tags
265
+ # A list of tags, in the form of name/value pairs, to apply to an
266
+ # email that you send using `SendBulkTemplatedEmail`. Tags correspond
267
+ # to characteristics of the email that you define, so that you can
268
+ # publish email sending events.
269
+ # @return [Array<Types::MessageTag>]
270
+ #
271
+ # @!attribute [rw] replacement_template_data
272
+ # A list of replacement values to apply to the template. This
273
+ # parameter is a JSON object, typically consisting of key-value pairs
274
+ # in which the keys correspond to replacement tags in the email
275
+ # template.
276
+ # @return [String]
277
+ #
278
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/BulkEmailDestination AWS API Documentation
279
+ #
280
+ class BulkEmailDestination < Struct.new(
281
+ :destination,
282
+ :replacement_tags,
283
+ :replacement_template_data)
284
+ include Aws::Structure
285
+ end
286
+
287
+ # An object that contains the response from the `SendBulkTemplatedEmail`
288
+ # operation.
289
+ #
290
+ # @!attribute [rw] status
291
+ # The status of a message sent using the `SendBulkTemplatedEmail`
292
+ # operation.
293
+ #
294
+ # Possible values for this parameter include:
295
+ #
296
+ # * `Success`\: Amazon SES accepted the message, and will attempt to
297
+ # deliver it to the recipients.
298
+ #
299
+ # * `MessageRejected`\: The message was rejected because it contained
300
+ # a virus.
301
+ #
302
+ # * `MailFromDomainNotVerified`\: The sender's email address or
303
+ # domain was not verified.
304
+ #
305
+ # * `ConfigurationSetDoesNotExist`\: The configuration set you
306
+ # specified does not exist.
307
+ #
308
+ # * `TemplateDoesNotExist`\: The template you specified does not
309
+ # exist.
310
+ #
311
+ # * `AccountSuspended`\: Your account has been shut down because of
312
+ # issues related to your email sending practices.
313
+ #
314
+ # * `AccountThrottled`\: The number of emails you can send has been
315
+ # reduced because your account has exceeded its allocated sending
316
+ # limit.
317
+ #
318
+ # * `AccountDailyQuotaExceeded`\: You have reached or exceeded the
319
+ # maximum number of emails you can send from your account in a
320
+ # 24-hour period.
321
+ #
322
+ # * `InvalidSendingPoolName`\: The configuration set you specified
323
+ # refers to an IP pool that does not exist.
324
+ #
325
+ # * `InvalidParameterValue`\: One or more of the parameters you
326
+ # specified when calling this operation was invalid. See the error
327
+ # message for additional information.
328
+ #
329
+ # * `TransientFailure`\: Amazon SES was unable to process your request
330
+ # because of a temporary issue.
331
+ #
332
+ # * `Failed`\: Amazon SES was unable to process your request. See the
333
+ # error message for additional information.
334
+ # @return [String]
335
+ #
336
+ # @!attribute [rw] error
337
+ # A description of an error that prevented a message being sent using
338
+ # the `SendBulkTemplatedEmail` operation.
339
+ # @return [String]
340
+ #
341
+ # @!attribute [rw] message_id
342
+ # The unique message identifier returned from the
343
+ # `SendBulkTemplatedEmail` operation.
344
+ # @return [String]
345
+ #
346
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/BulkEmailDestinationStatus AWS API Documentation
347
+ #
348
+ class BulkEmailDestinationStatus < Struct.new(
349
+ :status,
350
+ :error,
351
+ :message_id)
352
+ include Aws::Structure
353
+ end
354
+
228
355
  # Represents a request to create a receipt rule set by cloning an
229
356
  # existing one. You use receipt rule sets to receive email with Amazon
230
357
  # SES. For more information, see the [Amazon SES Developer Guide][1].
@@ -369,13 +496,12 @@ module Aws::SES
369
496
  # Configuration sets let you create groups of rules that you can apply
370
497
  # to the emails you send using Amazon SES. For more information about
371
498
  # using configuration sets, see [Using Amazon SES Configuration Sets][1]
372
- # in the <i> <a
373
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/">Amazon
374
- # SES Developer Guide</a>.</i>
499
+ # in the [Amazon SES Developer Guide][2].
375
500
  #
376
501
  #
377
502
  #
378
503
  # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/using-configuration-sets.html
504
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/
379
505
  #
380
506
  # @note When making an API call, you may pass ConfigurationSet
381
507
  # data as a hash:
@@ -451,7 +577,7 @@ module Aws::SES
451
577
  # event_destination: { # required
452
578
  # name: "EventDestinationName", # required
453
579
  # enabled: false,
454
- # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery, open, click
580
+ # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery, open, click, renderingFailure
455
581
  # kinesis_firehose_destination: {
456
582
  # iam_role_arn: "AmazonResourceName", # required
457
583
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -553,13 +679,12 @@ module Aws::SES
553
679
  # generated by Amazon SES emails.
554
680
  #
555
681
  # For more information, see [Configuring Custom Domains to Handle Open
556
- # and Click Tracking][1] in the <i> <a
557
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html">Amazon
558
- # SES Developer Guide</a>.</i>
682
+ # and Click Tracking][1] in the [Amazon SES Developer Guide][2].
559
683
  #
560
684
  #
561
685
  #
562
686
  # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/configure-custom-open-click-domains.html
687
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html
563
688
  # @return [Types::TrackingOptions]
564
689
  #
565
690
  # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/CreateConfigurationSetTrackingOptionsRequest AWS API Documentation
@@ -746,6 +871,41 @@ module Aws::SES
746
871
  #
747
872
  class CreateReceiptRuleSetResponse < Aws::EmptyStructure; end
748
873
 
874
+ # Represents a request to create an email template. For more
875
+ # information, see the [Amazon SES Developer Guide][1].
876
+ #
877
+ #
878
+ #
879
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-personalized-email-api.html
880
+ #
881
+ # @note When making an API call, you may pass CreateTemplateRequest
882
+ # data as a hash:
883
+ #
884
+ # {
885
+ # template: { # required
886
+ # template_name: "TemplateName", # required
887
+ # subject_part: "SubjectPart",
888
+ # text_part: "TextPart",
889
+ # html_part: "HtmlPart",
890
+ # },
891
+ # }
892
+ #
893
+ # @!attribute [rw] template
894
+ # The content of the email, composed of a subject line, an HTML part,
895
+ # and a text-only part.
896
+ # @return [Types::Template]
897
+ #
898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/CreateTemplateRequest AWS API Documentation
899
+ #
900
+ class CreateTemplateRequest < Struct.new(
901
+ :template)
902
+ include Aws::Structure
903
+ end
904
+
905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/CreateTemplateResponse AWS API Documentation
906
+ #
907
+ class CreateTemplateResponse < Aws::EmptyStructure; end
908
+
749
909
  # Represents a request to delete a configuration set event destination.
750
910
  # Configuration set event destinations are associated with configuration
751
911
  # sets, which enable you to publish email sending events. For
@@ -1024,6 +1184,35 @@ module Aws::SES
1024
1184
  #
1025
1185
  class DeleteReceiptRuleSetResponse < Aws::EmptyStructure; end
1026
1186
 
1187
+ # Represents a request to delete an email template. For more
1188
+ # information, see the [Amazon SES Developer Guide][1].
1189
+ #
1190
+ #
1191
+ #
1192
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-personalized-email-api.html
1193
+ #
1194
+ # @note When making an API call, you may pass DeleteTemplateRequest
1195
+ # data as a hash:
1196
+ #
1197
+ # {
1198
+ # template_name: "TemplateName", # required
1199
+ # }
1200
+ #
1201
+ # @!attribute [rw] template_name
1202
+ # The name of the template to be deleted.
1203
+ # @return [String]
1204
+ #
1205
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/DeleteTemplateRequest AWS API Documentation
1206
+ #
1207
+ class DeleteTemplateRequest < Struct.new(
1208
+ :template_name)
1209
+ include Aws::Structure
1210
+ end
1211
+
1212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/DeleteTemplateResponse AWS API Documentation
1213
+ #
1214
+ class DeleteTemplateResponse < Aws::EmptyStructure; end
1215
+
1027
1216
  # Represents a request to delete an email address from the list of email
1028
1217
  # addresses you have attempted to verify under your AWS account.
1029
1218
  #
@@ -1307,7 +1496,7 @@ module Aws::SES
1307
1496
  # {
1308
1497
  # name: "EventDestinationName", # required
1309
1498
  # enabled: false,
1310
- # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery, open, click
1499
+ # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery, open, click, renderingFailure
1311
1500
  # kinesis_firehose_destination: {
1312
1501
  # iam_role_arn: "AmazonResourceName", # required
1313
1502
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -1681,6 +1870,36 @@ module Aws::SES
1681
1870
  include Aws::Structure
1682
1871
  end
1683
1872
 
1873
+ # @note When making an API call, you may pass GetTemplateRequest
1874
+ # data as a hash:
1875
+ #
1876
+ # {
1877
+ # template_name: "TemplateName", # required
1878
+ # }
1879
+ #
1880
+ # @!attribute [rw] template_name
1881
+ # The name of the template you want to retrieve.
1882
+ # @return [String]
1883
+ #
1884
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/GetTemplateRequest AWS API Documentation
1885
+ #
1886
+ class GetTemplateRequest < Struct.new(
1887
+ :template_name)
1888
+ include Aws::Structure
1889
+ end
1890
+
1891
+ # @!attribute [rw] template
1892
+ # The content of the email, composed of a subject line, an HTML part,
1893
+ # and a text-only part.
1894
+ # @return [Types::Template]
1895
+ #
1896
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/GetTemplateResponse AWS API Documentation
1897
+ #
1898
+ class GetTemplateResponse < Struct.new(
1899
+ :template)
1900
+ include Aws::Structure
1901
+ end
1902
+
1684
1903
  # Represents the DKIM attributes of a verified email address or a
1685
1904
  # domain.
1686
1905
  #
@@ -1851,9 +2070,12 @@ module Aws::SES
1851
2070
  #
1852
2071
  # Event destinations, such as Amazon Kinesis Firehose, are associated
1853
2072
  # with configuration sets, which enable you to publish email sending
1854
- # events. For information about using configuration sets, see the <i> <a
1855
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html">Amazon
1856
- # SES Developer Guide</a>.</i>
2073
+ # events. For information about using configuration sets, see the
2074
+ # [Amazon SES Developer Guide][1].
2075
+ #
2076
+ #
2077
+ #
2078
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
1857
2079
  #
1858
2080
  # @note When making an API call, you may pass KinesisFirehoseDestination
1859
2081
  # data as a hash:
@@ -1888,14 +2110,15 @@ module Aws::SES
1888
2110
  # To enable Amazon SES to call your AWS Lambda function or to publish to
1889
2111
  # an Amazon SNS topic of another account, Amazon SES must have
1890
2112
  # permission to access those resources. For information about giving
1891
- # permissions, see the <i> <a
1892
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html">Amazon
1893
- # SES Developer Guide</a>.</i>
2113
+ # permissions, see the [Amazon SES Developer Guide][1].
1894
2114
  #
1895
2115
  # For information about using AWS Lambda actions in receipt rules, see
1896
- # the <i> <a
1897
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda.html">Amazon
1898
- # SES Developer Guide</a>.</i>
2116
+ # the [Amazon SES Developer Guide][2].
2117
+ #
2118
+ #
2119
+ #
2120
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html
2121
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda.html
1899
2122
  #
1900
2123
  # @note When making an API call, you may pass LambdaAction
1901
2124
  # data as a hash:
@@ -1910,18 +2133,24 @@ module Aws::SES
1910
2133
  # The Amazon Resource Name (ARN) of the Amazon SNS topic to notify
1911
2134
  # when the Lambda action is taken. An example of an Amazon SNS topic
1912
2135
  # ARN is `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more
1913
- # information about Amazon SNS topics, see the <i> <a
1914
- # href="http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html">Amazon
1915
- # SNS Developer Guide</a>.</i>
2136
+ # information about Amazon SNS topics, see the [Amazon SNS Developer
2137
+ # Guide][1].
2138
+ #
2139
+ #
2140
+ #
2141
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
1916
2142
  # @return [String]
1917
2143
  #
1918
2144
  # @!attribute [rw] function_arn
1919
2145
  # The Amazon Resource Name (ARN) of the AWS Lambda function. An
1920
2146
  # example of an AWS Lambda function ARN is
1921
2147
  # `arn:aws:lambda:us-west-2:account-id:function:MyFunction`. For more
1922
- # information about AWS Lambda, see the <i> <a
1923
- # href="http://docs.aws.amazon.com/lambda/latest/dg/welcome.html">AWS
1924
- # Lambda Developer Guide</a>.</i>
2148
+ # information about AWS Lambda, see the [AWS Lambda Developer
2149
+ # Guide][1].
2150
+ #
2151
+ #
2152
+ #
2153
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/welcome.html
1925
2154
  # @return [String]
1926
2155
  #
1927
2156
  # @!attribute [rw] invocation_type
@@ -1930,14 +2159,16 @@ module Aws::SES
1930
2159
  # immediately result in a response, and a value of `Event` means that
1931
2160
  # the function will be invoked asynchronously. The default value is
1932
2161
  # `Event`. For information about AWS Lambda invocation types, see the
1933
- # <i> <a
1934
- # href="http://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html">AWS
1935
- # Lambda Developer Guide</a>.</i>
2162
+ # [AWS Lambda Developer Guide][1].
1936
2163
  #
1937
2164
  # There is a 30-second timeout on `RequestResponse` invocations. You
1938
2165
  # should use `Event` invocation in most cases. Use `RequestResponse`
1939
2166
  # only when you want to make a mail flow decision, such as whether to
1940
2167
  # stop the receipt rule or the receipt rule set.
2168
+ #
2169
+ #
2170
+ #
2171
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html
1941
2172
  # @return [String]
1942
2173
  #
1943
2174
  # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/LambdaAction AWS API Documentation
@@ -2196,6 +2427,50 @@ module Aws::SES
2196
2427
  include Aws::Structure
2197
2428
  end
2198
2429
 
2430
+ # @note When making an API call, you may pass ListTemplatesRequest
2431
+ # data as a hash:
2432
+ #
2433
+ # {
2434
+ # next_token: "NextToken",
2435
+ # max_items: 1,
2436
+ # }
2437
+ #
2438
+ # @!attribute [rw] next_token
2439
+ # The token to use for pagination.
2440
+ # @return [String]
2441
+ #
2442
+ # @!attribute [rw] max_items
2443
+ # The maximum number of templates to return. This value must be at
2444
+ # least 1 and less than or equal to 10. If you do not specify a value,
2445
+ # or if you specify a value less than 1 or greater than 10, the
2446
+ # operation will return up to 10 results.
2447
+ # @return [Integer]
2448
+ #
2449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/ListTemplatesRequest AWS API Documentation
2450
+ #
2451
+ class ListTemplatesRequest < Struct.new(
2452
+ :next_token,
2453
+ :max_items)
2454
+ include Aws::Structure
2455
+ end
2456
+
2457
+ # @!attribute [rw] templates_metadata
2458
+ # An array the contains the name of creation time stamp for each
2459
+ # template in your Amazon SES account.
2460
+ # @return [Array<Types::TemplateMetadata>]
2461
+ #
2462
+ # @!attribute [rw] next_token
2463
+ # The token to use for pagination.
2464
+ # @return [String]
2465
+ #
2466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/ListTemplatesResponse AWS API Documentation
2467
+ #
2468
+ class ListTemplatesResponse < Struct.new(
2469
+ :templates_metadata,
2470
+ :next_token)
2471
+ include Aws::Structure
2472
+ end
2473
+
2199
2474
  # A list of email addresses that you have verified with Amazon SES under
2200
2475
  # your AWS account.
2201
2476
  #
@@ -2253,10 +2528,12 @@ module Aws::SES
2253
2528
  # Notification (DSN) when an email that Amazon SES receives on your
2254
2529
  # behalf bounces.
2255
2530
  #
2256
- # For information about receiving email through Amazon SES, see the <i>
2257
- # <a
2258
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html">Amazon
2259
- # SES Developer Guide</a>.</i>
2531
+ # For information about receiving email through Amazon SES, see the
2532
+ # [Amazon SES Developer Guide][1].
2533
+ #
2534
+ #
2535
+ #
2536
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html
2260
2537
  #
2261
2538
  # @note When making an API call, you may pass MessageDsn
2262
2539
  # data as a hash:
@@ -3122,9 +3399,12 @@ module Aws::SES
3122
3399
  #
3123
3400
  # Event destinations, such as Amazon SNS, are associated with
3124
3401
  # configuration sets, which enable you to publish email sending events.
3125
- # For information about using configuration sets, see the <i> <a
3126
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html">Amazon
3127
- # SES Developer Guide</a>.</i>
3402
+ # For information about using configuration sets, see the [Amazon SES
3403
+ # Developer Guide][1].
3404
+ #
3405
+ #
3406
+ #
3407
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity.html
3128
3408
  #
3129
3409
  # @note When making an API call, you may pass SNSDestination
3130
3410
  # data as a hash:
@@ -3137,9 +3417,11 @@ module Aws::SES
3137
3417
  # The ARN of the Amazon SNS topic that email sending events will be
3138
3418
  # published to. An example of an Amazon SNS topic ARN is
3139
3419
  # `arn:aws:sns:us-west-2:123456789012:MyTopic`. For more information
3140
- # about Amazon SNS topics, see the <i> <a
3141
- # href="http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html">Amazon
3142
- # SNS Developer Guide</a>.</i>
3420
+ # about Amazon SNS topics, see the [Amazon SNS Developer Guide][1].
3421
+ #
3422
+ #
3423
+ #
3424
+ # [1]: http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html
3143
3425
  # @return [String]
3144
3426
  #
3145
3427
  # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/SNSDestination AWS API Documentation
@@ -3257,86 +3539,280 @@ module Aws::SES
3257
3539
  include Aws::Structure
3258
3540
  end
3259
3541
 
3260
- # Represents sending statistics data. Each `SendDataPoint` contains
3261
- # statistics for a 15-minute period of sending activity.
3262
- #
3263
- # @!attribute [rw] timestamp
3264
- # Time of the data point.
3265
- # @return [Time]
3266
- #
3267
- # @!attribute [rw] delivery_attempts
3268
- # Number of emails that have been sent.
3269
- # @return [Integer]
3270
- #
3271
- # @!attribute [rw] bounces
3272
- # Number of emails that have bounced.
3273
- # @return [Integer]
3274
- #
3275
- # @!attribute [rw] complaints
3276
- # Number of unwanted emails that were rejected by recipients.
3277
- # @return [Integer]
3278
- #
3279
- # @!attribute [rw] rejects
3280
- # Number of emails rejected by Amazon SES.
3281
- # @return [Integer]
3282
- #
3283
- # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/SendDataPoint AWS API Documentation
3284
- #
3285
- class SendDataPoint < Struct.new(
3286
- :timestamp,
3287
- :delivery_attempts,
3288
- :bounces,
3289
- :complaints,
3290
- :rejects)
3291
- include Aws::Structure
3292
- end
3293
-
3294
- # Represents a request to send a single formatted email using Amazon
3295
- # SES. For more information, see the [Amazon SES Developer Guide][1].
3542
+ # Represents a request to send a templated email to multiple
3543
+ # destinations using Amazon SES. For more information, see the [Amazon
3544
+ # SES Developer Guide][1].
3296
3545
  #
3297
3546
  #
3298
3547
  #
3299
- # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-formatted.html
3548
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-personalized-email-api.html
3300
3549
  #
3301
- # @note When making an API call, you may pass SendEmailRequest
3550
+ # @note When making an API call, you may pass SendBulkTemplatedEmailRequest
3302
3551
  # data as a hash:
3303
3552
  #
3304
3553
  # {
3305
3554
  # source: "Address", # required
3306
- # destination: { # required
3307
- # to_addresses: ["Address"],
3308
- # cc_addresses: ["Address"],
3309
- # bcc_addresses: ["Address"],
3310
- # },
3311
- # message: { # required
3312
- # subject: { # required
3313
- # data: "MessageData", # required
3314
- # charset: "Charset",
3315
- # },
3316
- # body: { # required
3317
- # text: {
3318
- # data: "MessageData", # required
3319
- # charset: "Charset",
3320
- # },
3321
- # html: {
3322
- # data: "MessageData", # required
3323
- # charset: "Charset",
3324
- # },
3325
- # },
3326
- # },
3555
+ # source_arn: "AmazonResourceName",
3327
3556
  # reply_to_addresses: ["Address"],
3328
3557
  # return_path: "Address",
3329
- # source_arn: "AmazonResourceName",
3330
3558
  # return_path_arn: "AmazonResourceName",
3331
- # tags: [
3559
+ # configuration_set_name: "ConfigurationSetName",
3560
+ # default_tags: [
3332
3561
  # {
3333
3562
  # name: "MessageTagName", # required
3334
3563
  # value: "MessageTagValue", # required
3335
3564
  # },
3336
3565
  # ],
3337
- # configuration_set_name: "ConfigurationSetName",
3338
- # }
3339
- #
3566
+ # template: "TemplateName", # required
3567
+ # template_arn: "AmazonResourceName",
3568
+ # default_template_data: "TemplateData",
3569
+ # destinations: [ # required
3570
+ # {
3571
+ # destination: { # required
3572
+ # to_addresses: ["Address"],
3573
+ # cc_addresses: ["Address"],
3574
+ # bcc_addresses: ["Address"],
3575
+ # },
3576
+ # replacement_tags: [
3577
+ # {
3578
+ # name: "MessageTagName", # required
3579
+ # value: "MessageTagValue", # required
3580
+ # },
3581
+ # ],
3582
+ # replacement_template_data: "TemplateData",
3583
+ # },
3584
+ # ],
3585
+ # }
3586
+ #
3587
+ # @!attribute [rw] source
3588
+ # The email address that is sending the email. This email address must
3589
+ # be either individually verified with Amazon SES, or from a domain
3590
+ # that has been verified with Amazon SES. For information about
3591
+ # verifying identities, see the [Amazon SES Developer Guide][1].
3592
+ #
3593
+ # If you are sending on behalf of another user and have been permitted
3594
+ # to do so by a sending authorization policy, then you must also
3595
+ # specify the `SourceArn` parameter. For more information about
3596
+ # sending authorization, see the [Amazon SES Developer Guide][2].
3597
+ #
3598
+ # In all cases, the email address must be 7-bit ASCII. If the text
3599
+ # must contain any other characters, then you must use MIME
3600
+ # encoded-word syntax (RFC 2047) instead of a literal string. MIME
3601
+ # encoded-word syntax uses the following form:
3602
+ # `=?charset?encoding?encoded-text?=`. For more information, see [RFC
3603
+ # 2047][3].
3604
+ #
3605
+ #
3606
+ #
3607
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html
3608
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
3609
+ # [3]: https://tools.ietf.org/html/rfc2047
3610
+ # @return [String]
3611
+ #
3612
+ # @!attribute [rw] source_arn
3613
+ # This parameter is used only for sending authorization. It is the ARN
3614
+ # of the identity that is associated with the sending authorization
3615
+ # policy that permits you to send for the email address specified in
3616
+ # the `Source` parameter.
3617
+ #
3618
+ # For example, if the owner of `example.com` (which has ARN
3619
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
3620
+ # a policy to it that authorizes you to send from `user@example.com`,
3621
+ # then you would specify the `SourceArn` to be
3622
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
3623
+ # `Source` to be `user@example.com`.
3624
+ #
3625
+ # For more information about sending authorization, see the [Amazon
3626
+ # SES Developer Guide][1].
3627
+ #
3628
+ #
3629
+ #
3630
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
3631
+ # @return [String]
3632
+ #
3633
+ # @!attribute [rw] reply_to_addresses
3634
+ # The reply-to email address(es) for the message. If the recipient
3635
+ # replies to the message, each reply-to address will receive the
3636
+ # reply.
3637
+ # @return [Array<String>]
3638
+ #
3639
+ # @!attribute [rw] return_path
3640
+ # The email address that bounces and complaints will be forwarded to
3641
+ # when feedback forwarding is enabled. If the message cannot be
3642
+ # delivered to the recipient, then an error message will be returned
3643
+ # from the recipient's ISP; this message will then be forwarded to
3644
+ # the email address specified by the `ReturnPath` parameter. The
3645
+ # `ReturnPath` parameter is never overwritten. This email address must
3646
+ # be either individually verified with Amazon SES, or from a domain
3647
+ # that has been verified with Amazon SES.
3648
+ # @return [String]
3649
+ #
3650
+ # @!attribute [rw] return_path_arn
3651
+ # This parameter is used only for sending authorization. It is the ARN
3652
+ # of the identity that is associated with the sending authorization
3653
+ # policy that permits you to use the email address specified in the
3654
+ # `ReturnPath` parameter.
3655
+ #
3656
+ # For example, if the owner of `example.com` (which has ARN
3657
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
3658
+ # a policy to it that authorizes you to use `feedback@example.com`,
3659
+ # then you would specify the `ReturnPathArn` to be
3660
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
3661
+ # `ReturnPath` to be `feedback@example.com`.
3662
+ #
3663
+ # For more information about sending authorization, see the [Amazon
3664
+ # SES Developer Guide][1].
3665
+ #
3666
+ #
3667
+ #
3668
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
3669
+ # @return [String]
3670
+ #
3671
+ # @!attribute [rw] configuration_set_name
3672
+ # The name of the configuration set to use when you send an email
3673
+ # using `SendBulkTemplatedEmail`.
3674
+ # @return [String]
3675
+ #
3676
+ # @!attribute [rw] default_tags
3677
+ # A list of tags, in the form of name/value pairs, to apply to an
3678
+ # email that you send to a destination using `SendBulkTemplatedEmail`.
3679
+ # @return [Array<Types::MessageTag>]
3680
+ #
3681
+ # @!attribute [rw] template
3682
+ # The template to use when sending this email.
3683
+ # @return [String]
3684
+ #
3685
+ # @!attribute [rw] template_arn
3686
+ # The ARN of the template to use when sending this email.
3687
+ # @return [String]
3688
+ #
3689
+ # @!attribute [rw] default_template_data
3690
+ # A list of replacement values to apply to the template when
3691
+ # replacement data is not specified in a Destination object. These
3692
+ # values act as a default or fallback option when no other data is
3693
+ # available.
3694
+ #
3695
+ # The template data is a JSON object, typically consisting of
3696
+ # key-value pairs in which the keys correspond to replacement tags in
3697
+ # the email template.
3698
+ # @return [String]
3699
+ #
3700
+ # @!attribute [rw] destinations
3701
+ # One or more `Destination` objects. All of the recipients in a
3702
+ # `Destination` will receive the same version of the email. You can
3703
+ # specify up to 50 `Destination` objects within a `Destinations`
3704
+ # array.
3705
+ # @return [Array<Types::BulkEmailDestination>]
3706
+ #
3707
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/SendBulkTemplatedEmailRequest AWS API Documentation
3708
+ #
3709
+ class SendBulkTemplatedEmailRequest < Struct.new(
3710
+ :source,
3711
+ :source_arn,
3712
+ :reply_to_addresses,
3713
+ :return_path,
3714
+ :return_path_arn,
3715
+ :configuration_set_name,
3716
+ :default_tags,
3717
+ :template,
3718
+ :template_arn,
3719
+ :default_template_data,
3720
+ :destinations)
3721
+ include Aws::Structure
3722
+ end
3723
+
3724
+ # @!attribute [rw] status
3725
+ # The unique message identifier returned from the
3726
+ # `SendBulkTemplatedEmail` action.
3727
+ # @return [Array<Types::BulkEmailDestinationStatus>]
3728
+ #
3729
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/SendBulkTemplatedEmailResponse AWS API Documentation
3730
+ #
3731
+ class SendBulkTemplatedEmailResponse < Struct.new(
3732
+ :status)
3733
+ include Aws::Structure
3734
+ end
3735
+
3736
+ # Represents sending statistics data. Each `SendDataPoint` contains
3737
+ # statistics for a 15-minute period of sending activity.
3738
+ #
3739
+ # @!attribute [rw] timestamp
3740
+ # Time of the data point.
3741
+ # @return [Time]
3742
+ #
3743
+ # @!attribute [rw] delivery_attempts
3744
+ # Number of emails that have been sent.
3745
+ # @return [Integer]
3746
+ #
3747
+ # @!attribute [rw] bounces
3748
+ # Number of emails that have bounced.
3749
+ # @return [Integer]
3750
+ #
3751
+ # @!attribute [rw] complaints
3752
+ # Number of unwanted emails that were rejected by recipients.
3753
+ # @return [Integer]
3754
+ #
3755
+ # @!attribute [rw] rejects
3756
+ # Number of emails rejected by Amazon SES.
3757
+ # @return [Integer]
3758
+ #
3759
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/SendDataPoint AWS API Documentation
3760
+ #
3761
+ class SendDataPoint < Struct.new(
3762
+ :timestamp,
3763
+ :delivery_attempts,
3764
+ :bounces,
3765
+ :complaints,
3766
+ :rejects)
3767
+ include Aws::Structure
3768
+ end
3769
+
3770
+ # Represents a request to send a single formatted email using Amazon
3771
+ # SES. For more information, see the [Amazon SES Developer Guide][1].
3772
+ #
3773
+ #
3774
+ #
3775
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-formatted.html
3776
+ #
3777
+ # @note When making an API call, you may pass SendEmailRequest
3778
+ # data as a hash:
3779
+ #
3780
+ # {
3781
+ # source: "Address", # required
3782
+ # destination: { # required
3783
+ # to_addresses: ["Address"],
3784
+ # cc_addresses: ["Address"],
3785
+ # bcc_addresses: ["Address"],
3786
+ # },
3787
+ # message: { # required
3788
+ # subject: { # required
3789
+ # data: "MessageData", # required
3790
+ # charset: "Charset",
3791
+ # },
3792
+ # body: { # required
3793
+ # text: {
3794
+ # data: "MessageData", # required
3795
+ # charset: "Charset",
3796
+ # },
3797
+ # html: {
3798
+ # data: "MessageData", # required
3799
+ # charset: "Charset",
3800
+ # },
3801
+ # },
3802
+ # },
3803
+ # reply_to_addresses: ["Address"],
3804
+ # return_path: "Address",
3805
+ # source_arn: "AmazonResourceName",
3806
+ # return_path_arn: "AmazonResourceName",
3807
+ # tags: [
3808
+ # {
3809
+ # name: "MessageTagName", # required
3810
+ # value: "MessageTagValue", # required
3811
+ # },
3812
+ # ],
3813
+ # configuration_set_name: "ConfigurationSetName",
3814
+ # }
3815
+ #
3340
3816
  # @!attribute [rw] source
3341
3817
  # The email address that is sending the email. This email address must
3342
3818
  # be either individually verified with Amazon SES, or from a domain
@@ -3671,6 +4147,185 @@ module Aws::SES
3671
4147
  include Aws::Structure
3672
4148
  end
3673
4149
 
4150
+ # Represents a request to send a templated email using Amazon SES. For
4151
+ # more information, see the [Amazon SES Developer Guide][1].
4152
+ #
4153
+ #
4154
+ #
4155
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-personalized-email-api.html
4156
+ #
4157
+ # @note When making an API call, you may pass SendTemplatedEmailRequest
4158
+ # data as a hash:
4159
+ #
4160
+ # {
4161
+ # source: "Address", # required
4162
+ # destination: { # required
4163
+ # to_addresses: ["Address"],
4164
+ # cc_addresses: ["Address"],
4165
+ # bcc_addresses: ["Address"],
4166
+ # },
4167
+ # reply_to_addresses: ["Address"],
4168
+ # return_path: "Address",
4169
+ # source_arn: "AmazonResourceName",
4170
+ # return_path_arn: "AmazonResourceName",
4171
+ # tags: [
4172
+ # {
4173
+ # name: "MessageTagName", # required
4174
+ # value: "MessageTagValue", # required
4175
+ # },
4176
+ # ],
4177
+ # configuration_set_name: "ConfigurationSetName",
4178
+ # template: "TemplateName", # required
4179
+ # template_arn: "AmazonResourceName",
4180
+ # template_data: "TemplateData", # required
4181
+ # }
4182
+ #
4183
+ # @!attribute [rw] source
4184
+ # The email address that is sending the email. This email address must
4185
+ # be either individually verified with Amazon SES, or from a domain
4186
+ # that has been verified with Amazon SES. For information about
4187
+ # verifying identities, see the [Amazon SES Developer Guide][1].
4188
+ #
4189
+ # If you are sending on behalf of another user and have been permitted
4190
+ # to do so by a sending authorization policy, then you must also
4191
+ # specify the `SourceArn` parameter. For more information about
4192
+ # sending authorization, see the [Amazon SES Developer Guide][2].
4193
+ #
4194
+ # In all cases, the email address must be 7-bit ASCII. If the text
4195
+ # must contain any other characters, then you must use MIME
4196
+ # encoded-word syntax (RFC 2047) instead of a literal string. MIME
4197
+ # encoded-word syntax uses the following form:
4198
+ # `=?charset?encoding?encoded-text?=`. For more information, see [RFC
4199
+ # 2047][3].
4200
+ #
4201
+ #
4202
+ #
4203
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html
4204
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
4205
+ # [3]: https://tools.ietf.org/html/rfc2047
4206
+ # @return [String]
4207
+ #
4208
+ # @!attribute [rw] destination
4209
+ # The destination for this email, composed of To:, CC:, and BCC:
4210
+ # fields. A Destination can include up to 50 recipients across these
4211
+ # three fields.
4212
+ # @return [Types::Destination]
4213
+ #
4214
+ # @!attribute [rw] reply_to_addresses
4215
+ # The reply-to email address(es) for the message. If the recipient
4216
+ # replies to the message, each reply-to address will receive the
4217
+ # reply.
4218
+ # @return [Array<String>]
4219
+ #
4220
+ # @!attribute [rw] return_path
4221
+ # The email address that bounces and complaints will be forwarded to
4222
+ # when feedback forwarding is enabled. If the message cannot be
4223
+ # delivered to the recipient, then an error message will be returned
4224
+ # from the recipient's ISP; this message will then be forwarded to
4225
+ # the email address specified by the `ReturnPath` parameter. The
4226
+ # `ReturnPath` parameter is never overwritten. This email address must
4227
+ # be either individually verified with Amazon SES, or from a domain
4228
+ # that has been verified with Amazon SES.
4229
+ # @return [String]
4230
+ #
4231
+ # @!attribute [rw] source_arn
4232
+ # This parameter is used only for sending authorization. It is the ARN
4233
+ # of the identity that is associated with the sending authorization
4234
+ # policy that permits you to send for the email address specified in
4235
+ # the `Source` parameter.
4236
+ #
4237
+ # For example, if the owner of `example.com` (which has ARN
4238
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
4239
+ # a policy to it that authorizes you to send from `user@example.com`,
4240
+ # then you would specify the `SourceArn` to be
4241
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
4242
+ # `Source` to be `user@example.com`.
4243
+ #
4244
+ # For more information about sending authorization, see the [Amazon
4245
+ # SES Developer Guide][1].
4246
+ #
4247
+ #
4248
+ #
4249
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
4250
+ # @return [String]
4251
+ #
4252
+ # @!attribute [rw] return_path_arn
4253
+ # This parameter is used only for sending authorization. It is the ARN
4254
+ # of the identity that is associated with the sending authorization
4255
+ # policy that permits you to use the email address specified in the
4256
+ # `ReturnPath` parameter.
4257
+ #
4258
+ # For example, if the owner of `example.com` (which has ARN
4259
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`) attaches
4260
+ # a policy to it that authorizes you to use `feedback@example.com`,
4261
+ # then you would specify the `ReturnPathArn` to be
4262
+ # `arn:aws:ses:us-east-1:123456789012:identity/example.com`, and the
4263
+ # `ReturnPath` to be `feedback@example.com`.
4264
+ #
4265
+ # For more information about sending authorization, see the [Amazon
4266
+ # SES Developer Guide][1].
4267
+ #
4268
+ #
4269
+ #
4270
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html
4271
+ # @return [String]
4272
+ #
4273
+ # @!attribute [rw] tags
4274
+ # A list of tags, in the form of name/value pairs, to apply to an
4275
+ # email that you send using `SendTemplatedEmail`. Tags correspond to
4276
+ # characteristics of the email that you define, so that you can
4277
+ # publish email sending events.
4278
+ # @return [Array<Types::MessageTag>]
4279
+ #
4280
+ # @!attribute [rw] configuration_set_name
4281
+ # The name of the configuration set to use when you send an email
4282
+ # using `SendTemplatedEmail`.
4283
+ # @return [String]
4284
+ #
4285
+ # @!attribute [rw] template
4286
+ # The template to use when sending this email.
4287
+ # @return [String]
4288
+ #
4289
+ # @!attribute [rw] template_arn
4290
+ # The ARN of the template to use when sending this email.
4291
+ # @return [String]
4292
+ #
4293
+ # @!attribute [rw] template_data
4294
+ # A list of replacement values to apply to the template. This
4295
+ # parameter is a JSON object, typically consisting of key-value pairs
4296
+ # in which the keys correspond to replacement tags in the email
4297
+ # template.
4298
+ # @return [String]
4299
+ #
4300
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/SendTemplatedEmailRequest AWS API Documentation
4301
+ #
4302
+ class SendTemplatedEmailRequest < Struct.new(
4303
+ :source,
4304
+ :destination,
4305
+ :reply_to_addresses,
4306
+ :return_path,
4307
+ :source_arn,
4308
+ :return_path_arn,
4309
+ :tags,
4310
+ :configuration_set_name,
4311
+ :template,
4312
+ :template_arn,
4313
+ :template_data)
4314
+ include Aws::Structure
4315
+ end
4316
+
4317
+ # @!attribute [rw] message_id
4318
+ # The unique message identifier returned from the `SendTemplatedEmail`
4319
+ # action.
4320
+ # @return [String]
4321
+ #
4322
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/SendTemplatedEmailResponse AWS API Documentation
4323
+ #
4324
+ class SendTemplatedEmailResponse < Struct.new(
4325
+ :message_id)
4326
+ include Aws::Structure
4327
+ end
4328
+
3674
4329
  # Represents a request to set a receipt rule set as the active receipt
3675
4330
  # rule set. You use receipt rule sets to receive email with Amazon SES.
3676
4331
  # For more information, see the [Amazon SES Developer Guide][1].
@@ -4011,9 +4666,11 @@ module Aws::SES
4011
4666
  # Amazon Simple Notification Service (Amazon SNS).
4012
4667
  #
4013
4668
  # For information about setting a stop action in a receipt rule, see the
4014
- # <i> <a
4015
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-stop.html">Amazon
4016
- # SES Developer Guide</a>.</i>
4669
+ # [Amazon SES Developer Guide][1].
4670
+ #
4671
+ #
4672
+ #
4673
+ # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-stop.html
4017
4674
  #
4018
4675
  # @note When making an API call, you may pass StopAction
4019
4676
  # data as a hash:
@@ -4047,18 +4704,117 @@ module Aws::SES
4047
4704
  include Aws::Structure
4048
4705
  end
4049
4706
 
4707
+ # The content of the email, composed of a subject line, an HTML part,
4708
+ # and a text-only part.
4709
+ #
4710
+ # @note When making an API call, you may pass Template
4711
+ # data as a hash:
4712
+ #
4713
+ # {
4714
+ # template_name: "TemplateName", # required
4715
+ # subject_part: "SubjectPart",
4716
+ # text_part: "TextPart",
4717
+ # html_part: "HtmlPart",
4718
+ # }
4719
+ #
4720
+ # @!attribute [rw] template_name
4721
+ # The name of the template. You will refer to this name when you send
4722
+ # email using the `SendTemplatedEmail` or `SendBulkTemplatedEmail`
4723
+ # operations.
4724
+ # @return [String]
4725
+ #
4726
+ # @!attribute [rw] subject_part
4727
+ # The subject line of the email.
4728
+ # @return [String]
4729
+ #
4730
+ # @!attribute [rw] text_part
4731
+ # The email body that will be visible to recipients whose email
4732
+ # clients do not display HTML.
4733
+ # @return [String]
4734
+ #
4735
+ # @!attribute [rw] html_part
4736
+ # The HTML body of the email.
4737
+ # @return [String]
4738
+ #
4739
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/Template AWS API Documentation
4740
+ #
4741
+ class Template < Struct.new(
4742
+ :template_name,
4743
+ :subject_part,
4744
+ :text_part,
4745
+ :html_part)
4746
+ include Aws::Structure
4747
+ end
4748
+
4749
+ # Information about an email template.
4750
+ #
4751
+ # @!attribute [rw] name
4752
+ # The name of the template.
4753
+ # @return [String]
4754
+ #
4755
+ # @!attribute [rw] created_timestamp
4756
+ # The time and date the template was created.
4757
+ # @return [Time]
4758
+ #
4759
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/TemplateMetadata AWS API Documentation
4760
+ #
4761
+ class TemplateMetadata < Struct.new(
4762
+ :name,
4763
+ :created_timestamp)
4764
+ include Aws::Structure
4765
+ end
4766
+
4767
+ # @note When making an API call, you may pass TestRenderTemplateRequest
4768
+ # data as a hash:
4769
+ #
4770
+ # {
4771
+ # template_name: "TemplateName", # required
4772
+ # template_data: "TemplateData", # required
4773
+ # }
4774
+ #
4775
+ # @!attribute [rw] template_name
4776
+ # The name of the template that you want to render.
4777
+ # @return [String]
4778
+ #
4779
+ # @!attribute [rw] template_data
4780
+ # A list of replacement values to apply to the template. This
4781
+ # parameter is a JSON object, typically consisting of key-value pairs
4782
+ # in which the keys correspond to replacement tags in the email
4783
+ # template.
4784
+ # @return [String]
4785
+ #
4786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/TestRenderTemplateRequest AWS API Documentation
4787
+ #
4788
+ class TestRenderTemplateRequest < Struct.new(
4789
+ :template_name,
4790
+ :template_data)
4791
+ include Aws::Structure
4792
+ end
4793
+
4794
+ # @!attribute [rw] rendered_template
4795
+ # The complete MIME message rendered by applying the data in the
4796
+ # TemplateData parameter to the template specified in the TemplateName
4797
+ # parameter.
4798
+ # @return [String]
4799
+ #
4800
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/TestRenderTemplateResponse AWS API Documentation
4801
+ #
4802
+ class TestRenderTemplateResponse < Struct.new(
4803
+ :rendered_template)
4804
+ include Aws::Structure
4805
+ end
4806
+
4050
4807
  # A domain that is used to redirect email recipients to an Amazon
4051
4808
  # SES-operated domain. This domain captures open and click events
4052
4809
  # generated by Amazon SES emails.
4053
4810
  #
4054
4811
  # For more information, see [Configuring Custom Domains to Handle Open
4055
- # and Click Tracking][1] in the <i> <a
4056
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html">Amazon
4057
- # SES Developer Guide</a>.</i>
4812
+ # and Click Tracking][1] in the [Amazon SES Developer Guide][2].
4058
4813
  #
4059
4814
  #
4060
4815
  #
4061
4816
  # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/configure-custom-open-click-domains.html
4817
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html
4062
4818
  #
4063
4819
  # @note When making an API call, you may pass TrackingOptions
4064
4820
  # data as a hash:
@@ -4096,7 +4852,7 @@ module Aws::SES
4096
4852
  # event_destination: { # required
4097
4853
  # name: "EventDestinationName", # required
4098
4854
  # enabled: false,
4099
- # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery, open, click
4855
+ # matching_event_types: ["send"], # required, accepts send, reject, bounce, complaint, delivery, open, click, renderingFailure
4100
4856
  # kinesis_firehose_destination: {
4101
4857
  # iam_role_arn: "AmazonResourceName", # required
4102
4858
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -4164,13 +4920,12 @@ module Aws::SES
4164
4920
  # generated by Amazon SES emails.
4165
4921
  #
4166
4922
  # For more information, see [Configuring Custom Domains to Handle Open
4167
- # and Click Tracking][1] in the <i> <a
4168
- # href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html">Amazon
4169
- # SES Developer Guide</a>.</i>
4923
+ # and Click Tracking][1] in the [Amazon SES Developer Guide][2].
4170
4924
  #
4171
4925
  #
4172
4926
  #
4173
4927
  # [1]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/configure-custom-open-click-domains.html
4928
+ # [2]: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html
4174
4929
  # @return [Types::TrackingOptions]
4175
4930
  #
4176
4931
  # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/UpdateConfigurationSetTrackingOptionsRequest AWS API Documentation
@@ -4269,6 +5024,34 @@ module Aws::SES
4269
5024
  #
4270
5025
  class UpdateReceiptRuleResponse < Aws::EmptyStructure; end
4271
5026
 
5027
+ # @note When making an API call, you may pass UpdateTemplateRequest
5028
+ # data as a hash:
5029
+ #
5030
+ # {
5031
+ # template: { # required
5032
+ # template_name: "TemplateName", # required
5033
+ # subject_part: "SubjectPart",
5034
+ # text_part: "TextPart",
5035
+ # html_part: "HtmlPart",
5036
+ # },
5037
+ # }
5038
+ #
5039
+ # @!attribute [rw] template
5040
+ # The content of the email, composed of a subject line, an HTML part,
5041
+ # and a text-only part.
5042
+ # @return [Types::Template]
5043
+ #
5044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/UpdateTemplateRequest AWS API Documentation
5045
+ #
5046
+ class UpdateTemplateRequest < Struct.new(
5047
+ :template)
5048
+ include Aws::Structure
5049
+ end
5050
+
5051
+ # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/UpdateTemplateResponse AWS API Documentation
5052
+ #
5053
+ class UpdateTemplateResponse < Aws::EmptyStructure; end
5054
+
4272
5055
  # Represents a request to generate the CNAME records needed to set up
4273
5056
  # Easy DKIM with Amazon SES. For more information about setting up Easy
4274
5057
  # DKIM, see the [Amazon SES Developer Guide][1].