aws-sdk-sesv2 1.9.0 → 1.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 769519b2cd68b9c9f42d3d9c7d89f4ac5446539bf4db8756e7938e950a2140c9
4
- data.tar.gz: a984786077a2f8f9faca256098e1348347e656878d64abc4ab46b5e1445320f6
3
+ metadata.gz: 41ba84c1073f0ac30e1bca3bf6d99b93ba8c04d4cd9fdb3799baf480e940bd0c
4
+ data.tar.gz: ba9d305f6fb12740bb2551f22ae005e800421c5b9d1ad49bcb03328656c60c29
5
5
  SHA512:
6
- metadata.gz: fa3baf68d307164174bed645a86f26c11546f0eeea0c8f703ff809ee67705346d07aab81e2842da2db17a35870ff86487e753aeb68aaddb112b28795d7b29c45
7
- data.tar.gz: bdcf3ce4ceec146ab4ea831c2099c516d76fc3610a4f57f6257a555b7439f2d17cd1d05cc3a2a8e5d58e8152ff05104e98f74202f4e1c47e71f713005ea8ac57
6
+ metadata.gz: 322da1d03ced2f98ea8381fc9c6ca9e8e291370a502ffc9d3c61ca5f7614d47cfdeaed65eea0436f401339459de7509e1a1be4740d951010299929d89cd26894
7
+ data.tar.gz: ed20ce195dcac19f8dad75062a74364c148dc414183ed4969fc9fc1d7685510e0f2a2926f73623ceaccf5b24fceef8275151b003705836dd32c46d16c3ea08f5
@@ -47,6 +47,6 @@ require_relative 'aws-sdk-sesv2/customizations'
47
47
  # @service
48
48
  module Aws::SESV2
49
49
 
50
- GEM_VERSION = '1.9.0'
50
+ GEM_VERSION = '1.10.0'
51
51
 
52
52
  end
@@ -818,6 +818,45 @@ module Aws::SESV2
818
818
  req.send_request(options)
819
819
  end
820
820
 
821
+ # Creates an import job for a data destination.
822
+ #
823
+ # @option params [required, Types::ImportDestination] :import_destination
824
+ # The destination for the import job.
825
+ #
826
+ # @option params [required, Types::ImportDataSource] :import_data_source
827
+ # The data source for the import job.
828
+ #
829
+ # @return [Types::CreateImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
830
+ #
831
+ # * {Types::CreateImportJobResponse#job_id #job_id} => String
832
+ #
833
+ # @example Request syntax with placeholder values
834
+ #
835
+ # resp = client.create_import_job({
836
+ # import_destination: { # required
837
+ # suppression_list_destination: { # required
838
+ # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
839
+ # },
840
+ # },
841
+ # import_data_source: { # required
842
+ # s3_url: "S3Url", # required
843
+ # data_format: "CSV", # required, accepts CSV, JSON
844
+ # },
845
+ # })
846
+ #
847
+ # @example Response structure
848
+ #
849
+ # resp.job_id #=> String
850
+ #
851
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateImportJob AWS API Documentation
852
+ #
853
+ # @overload create_import_job(params = {})
854
+ # @param [Hash] params ({})
855
+ def create_import_job(params = {}, options = {})
856
+ req = build_request(:create_import_job, params)
857
+ req.send_request(options)
858
+ end
859
+
821
860
  # Delete an existing configuration set.
822
861
  #
823
862
  # *Configuration sets* are groups of rules that you can apply to the
@@ -1712,6 +1751,52 @@ module Aws::SESV2
1712
1751
  req.send_request(options)
1713
1752
  end
1714
1753
 
1754
+ # Provides information about an import job.
1755
+ #
1756
+ # @option params [required, String] :job_id
1757
+ # The ID of the import job.
1758
+ #
1759
+ # @return [Types::GetImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1760
+ #
1761
+ # * {Types::GetImportJobResponse#job_id #job_id} => String
1762
+ # * {Types::GetImportJobResponse#import_destination #import_destination} => Types::ImportDestination
1763
+ # * {Types::GetImportJobResponse#import_data_source #import_data_source} => Types::ImportDataSource
1764
+ # * {Types::GetImportJobResponse#failure_info #failure_info} => Types::FailureInfo
1765
+ # * {Types::GetImportJobResponse#job_status #job_status} => String
1766
+ # * {Types::GetImportJobResponse#created_timestamp #created_timestamp} => Time
1767
+ # * {Types::GetImportJobResponse#completed_timestamp #completed_timestamp} => Time
1768
+ # * {Types::GetImportJobResponse#processed_records_count #processed_records_count} => Integer
1769
+ # * {Types::GetImportJobResponse#failed_records_count #failed_records_count} => Integer
1770
+ #
1771
+ # @example Request syntax with placeholder values
1772
+ #
1773
+ # resp = client.get_import_job({
1774
+ # job_id: "JobId", # required
1775
+ # })
1776
+ #
1777
+ # @example Response structure
1778
+ #
1779
+ # resp.job_id #=> String
1780
+ # resp.import_destination.suppression_list_destination.suppression_list_import_action #=> String, one of "DELETE", "PUT"
1781
+ # resp.import_data_source.s3_url #=> String
1782
+ # resp.import_data_source.data_format #=> String, one of "CSV", "JSON"
1783
+ # resp.failure_info.failed_records_s3_url #=> String
1784
+ # resp.failure_info.error_message #=> String
1785
+ # resp.job_status #=> String, one of "CREATED", "PROCESSING", "COMPLETED", "FAILED"
1786
+ # resp.created_timestamp #=> Time
1787
+ # resp.completed_timestamp #=> Time
1788
+ # resp.processed_records_count #=> Integer
1789
+ # resp.failed_records_count #=> Integer
1790
+ #
1791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetImportJob AWS API Documentation
1792
+ #
1793
+ # @overload get_import_job(params = {})
1794
+ # @param [Hash] params ({})
1795
+ def get_import_job(params = {}, options = {})
1796
+ req = build_request(:get_import_job, params)
1797
+ req.send_request(options)
1798
+ end
1799
+
1715
1800
  # Retrieves information about a specific email address that's on the
1716
1801
  # suppression list for your account.
1717
1802
  #
@@ -2124,6 +2209,58 @@ module Aws::SESV2
2124
2209
  req.send_request(options)
2125
2210
  end
2126
2211
 
2212
+ # Lists all of the import jobs.
2213
+ #
2214
+ # @option params [String] :import_destination_type
2215
+ # The destination of the import job, which can be used to list import
2216
+ # jobs that have a certain `ImportDestinationType`.
2217
+ #
2218
+ # @option params [String] :next_token
2219
+ # A string token indicating that there might be additional import jobs
2220
+ # available to be listed. Copy this token to a subsequent call to
2221
+ # `ListImportJobs` with the same parameters to retrieve the next page of
2222
+ # import jobs.
2223
+ #
2224
+ # @option params [Integer] :page_size
2225
+ # Maximum number of import jobs to return at once. Use this parameter to
2226
+ # paginate results. If additional import jobs exist beyond the specified
2227
+ # limit, the `NextToken` element is sent in the response. Use the
2228
+ # `NextToken` value in subsequent requests to retrieve additional
2229
+ # addresses.
2230
+ #
2231
+ # @return [Types::ListImportJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2232
+ #
2233
+ # * {Types::ListImportJobsResponse#import_jobs #import_jobs} => Array<Types::ImportJobSummary>
2234
+ # * {Types::ListImportJobsResponse#next_token #next_token} => String
2235
+ #
2236
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2237
+ #
2238
+ # @example Request syntax with placeholder values
2239
+ #
2240
+ # resp = client.list_import_jobs({
2241
+ # import_destination_type: "SUPPRESSION_LIST", # accepts SUPPRESSION_LIST
2242
+ # next_token: "NextToken",
2243
+ # page_size: 1,
2244
+ # })
2245
+ #
2246
+ # @example Response structure
2247
+ #
2248
+ # resp.import_jobs #=> Array
2249
+ # resp.import_jobs[0].job_id #=> String
2250
+ # resp.import_jobs[0].import_destination.suppression_list_destination.suppression_list_import_action #=> String, one of "DELETE", "PUT"
2251
+ # resp.import_jobs[0].job_status #=> String, one of "CREATED", "PROCESSING", "COMPLETED", "FAILED"
2252
+ # resp.import_jobs[0].created_timestamp #=> Time
2253
+ # resp.next_token #=> String
2254
+ #
2255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListImportJobs AWS API Documentation
2256
+ #
2257
+ # @overload list_import_jobs(params = {})
2258
+ # @param [Hash] params ({})
2259
+ def list_import_jobs(params = {}, options = {})
2260
+ req = build_request(:list_import_jobs, params)
2261
+ req.send_request(options)
2262
+ end
2263
+
2127
2264
  # Retrieves a list of email addresses that are on the suppression list
2128
2265
  # for your account.
2129
2266
  #
@@ -3554,7 +3691,7 @@ module Aws::SESV2
3554
3691
  params: params,
3555
3692
  config: config)
3556
3693
  context[:gem_name] = 'aws-sdk-sesv2'
3557
- context[:gem_version] = '1.9.0'
3694
+ context[:gem_version] = '1.10.0'
3558
3695
  Seahorse::Client::Request.new(handlers, context)
3559
3696
  end
3560
3697
 
@@ -62,11 +62,14 @@ module Aws::SESV2
62
62
  CreateEmailIdentityResponse = Shapes::StructureShape.new(name: 'CreateEmailIdentityResponse')
63
63
  CreateEmailTemplateRequest = Shapes::StructureShape.new(name: 'CreateEmailTemplateRequest')
64
64
  CreateEmailTemplateResponse = Shapes::StructureShape.new(name: 'CreateEmailTemplateResponse')
65
+ CreateImportJobRequest = Shapes::StructureShape.new(name: 'CreateImportJobRequest')
66
+ CreateImportJobResponse = Shapes::StructureShape.new(name: 'CreateImportJobResponse')
65
67
  CustomRedirectDomain = Shapes::StringShape.new(name: 'CustomRedirectDomain')
66
68
  CustomVerificationEmailTemplateMetadata = Shapes::StructureShape.new(name: 'CustomVerificationEmailTemplateMetadata')
67
69
  CustomVerificationEmailTemplatesList = Shapes::ListShape.new(name: 'CustomVerificationEmailTemplatesList')
68
70
  DailyVolume = Shapes::StructureShape.new(name: 'DailyVolume')
69
71
  DailyVolumes = Shapes::ListShape.new(name: 'DailyVolumes')
72
+ DataFormat = Shapes::StringShape.new(name: 'DataFormat')
70
73
  DedicatedIp = Shapes::StructureShape.new(name: 'DedicatedIp')
71
74
  DedicatedIpList = Shapes::ListShape.new(name: 'DedicatedIpList')
72
75
  DefaultDimensionValue = Shapes::StringShape.new(name: 'DefaultDimensionValue')
@@ -130,6 +133,9 @@ module Aws::SESV2
130
133
  EventDestinations = Shapes::ListShape.new(name: 'EventDestinations')
131
134
  EventType = Shapes::StringShape.new(name: 'EventType')
132
135
  EventTypes = Shapes::ListShape.new(name: 'EventTypes')
136
+ FailedRecordsCount = Shapes::IntegerShape.new(name: 'FailedRecordsCount')
137
+ FailedRecordsS3Url = Shapes::StringShape.new(name: 'FailedRecordsS3Url')
138
+ FailureInfo = Shapes::StructureShape.new(name: 'FailureInfo')
133
139
  FailureRedirectionURL = Shapes::StringShape.new(name: 'FailureRedirectionURL')
134
140
  FeedbackId = Shapes::StringShape.new(name: 'FeedbackId')
135
141
  GeneralEnforcementStatus = Shapes::StringShape.new(name: 'GeneralEnforcementStatus')
@@ -161,6 +167,8 @@ module Aws::SESV2
161
167
  GetEmailIdentityResponse = Shapes::StructureShape.new(name: 'GetEmailIdentityResponse')
162
168
  GetEmailTemplateRequest = Shapes::StructureShape.new(name: 'GetEmailTemplateRequest')
163
169
  GetEmailTemplateResponse = Shapes::StructureShape.new(name: 'GetEmailTemplateResponse')
170
+ GetImportJobRequest = Shapes::StructureShape.new(name: 'GetImportJobRequest')
171
+ GetImportJobResponse = Shapes::StructureShape.new(name: 'GetImportJobResponse')
164
172
  GetSuppressedDestinationRequest = Shapes::StructureShape.new(name: 'GetSuppressedDestinationRequest')
165
173
  GetSuppressedDestinationResponse = Shapes::StructureShape.new(name: 'GetSuppressedDestinationResponse')
166
174
  Identity = Shapes::StringShape.new(name: 'Identity')
@@ -168,6 +176,11 @@ module Aws::SESV2
168
176
  IdentityInfoList = Shapes::ListShape.new(name: 'IdentityInfoList')
169
177
  IdentityType = Shapes::StringShape.new(name: 'IdentityType')
170
178
  ImageUrl = Shapes::StringShape.new(name: 'ImageUrl')
179
+ ImportDataSource = Shapes::StructureShape.new(name: 'ImportDataSource')
180
+ ImportDestination = Shapes::StructureShape.new(name: 'ImportDestination')
181
+ ImportDestinationType = Shapes::StringShape.new(name: 'ImportDestinationType')
182
+ ImportJobSummary = Shapes::StructureShape.new(name: 'ImportJobSummary')
183
+ ImportJobSummaryList = Shapes::ListShape.new(name: 'ImportJobSummaryList')
171
184
  InboxPlacementTrackingOption = Shapes::StructureShape.new(name: 'InboxPlacementTrackingOption')
172
185
  InvalidNextTokenException = Shapes::StructureShape.new(name: 'InvalidNextTokenException')
173
186
  Ip = Shapes::StringShape.new(name: 'Ip')
@@ -176,6 +189,8 @@ module Aws::SESV2
176
189
  IspNameList = Shapes::ListShape.new(name: 'IspNameList')
177
190
  IspPlacement = Shapes::StructureShape.new(name: 'IspPlacement')
178
191
  IspPlacements = Shapes::ListShape.new(name: 'IspPlacements')
192
+ JobId = Shapes::StringShape.new(name: 'JobId')
193
+ JobStatus = Shapes::StringShape.new(name: 'JobStatus')
179
194
  KinesisFirehoseDestination = Shapes::StructureShape.new(name: 'KinesisFirehoseDestination')
180
195
  LastFreshStart = Shapes::TimestampShape.new(name: 'LastFreshStart')
181
196
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
@@ -193,6 +208,8 @@ module Aws::SESV2
193
208
  ListEmailIdentitiesResponse = Shapes::StructureShape.new(name: 'ListEmailIdentitiesResponse')
194
209
  ListEmailTemplatesRequest = Shapes::StructureShape.new(name: 'ListEmailTemplatesRequest')
195
210
  ListEmailTemplatesResponse = Shapes::StructureShape.new(name: 'ListEmailTemplatesResponse')
211
+ ListImportJobsRequest = Shapes::StructureShape.new(name: 'ListImportJobsRequest')
212
+ ListImportJobsResponse = Shapes::StructureShape.new(name: 'ListImportJobsResponse')
196
213
  ListOfDedicatedIpPools = Shapes::ListShape.new(name: 'ListOfDedicatedIpPools')
197
214
  ListSuppressedDestinationsRequest = Shapes::StructureShape.new(name: 'ListSuppressedDestinationsRequest')
198
215
  ListSuppressedDestinationsResponse = Shapes::StructureShape.new(name: 'ListSuppressedDestinationsResponse')
@@ -227,6 +244,7 @@ module Aws::SESV2
227
244
  PolicyName = Shapes::StringShape.new(name: 'PolicyName')
228
245
  PoolName = Shapes::StringShape.new(name: 'PoolName')
229
246
  PrivateKey = Shapes::StringShape.new(name: 'PrivateKey')
247
+ ProcessedRecordsCount = Shapes::IntegerShape.new(name: 'ProcessedRecordsCount')
230
248
  PutAccountDedicatedIpWarmupAttributesRequest = Shapes::StructureShape.new(name: 'PutAccountDedicatedIpWarmupAttributesRequest')
231
249
  PutAccountDedicatedIpWarmupAttributesResponse = Shapes::StructureShape.new(name: 'PutAccountDedicatedIpWarmupAttributesResponse')
232
250
  PutAccountDetailsRequest = Shapes::StructureShape.new(name: 'PutAccountDetailsRequest')
@@ -272,6 +290,7 @@ module Aws::SESV2
272
290
  ReputationOptions = Shapes::StructureShape.new(name: 'ReputationOptions')
273
291
  ReviewDetails = Shapes::StructureShape.new(name: 'ReviewDetails')
274
292
  ReviewStatus = Shapes::StringShape.new(name: 'ReviewStatus')
293
+ S3Url = Shapes::StringShape.new(name: 'S3Url')
275
294
  Selector = Shapes::StringShape.new(name: 'Selector')
276
295
  SendBulkEmailRequest = Shapes::StructureShape.new(name: 'SendBulkEmailRequest')
277
296
  SendBulkEmailResponse = Shapes::StructureShape.new(name: 'SendBulkEmailResponse')
@@ -292,6 +311,8 @@ module Aws::SESV2
292
311
  SuppressedDestinationSummaries = Shapes::ListShape.new(name: 'SuppressedDestinationSummaries')
293
312
  SuppressedDestinationSummary = Shapes::StructureShape.new(name: 'SuppressedDestinationSummary')
294
313
  SuppressionAttributes = Shapes::StructureShape.new(name: 'SuppressionAttributes')
314
+ SuppressionListDestination = Shapes::StructureShape.new(name: 'SuppressionListDestination')
315
+ SuppressionListImportAction = Shapes::StringShape.new(name: 'SuppressionListImportAction')
295
316
  SuppressionListReason = Shapes::StringShape.new(name: 'SuppressionListReason')
296
317
  SuppressionListReasons = Shapes::ListShape.new(name: 'SuppressionListReasons')
297
318
  SuppressionOptions = Shapes::StructureShape.new(name: 'SuppressionOptions')
@@ -462,6 +483,13 @@ module Aws::SESV2
462
483
 
463
484
  CreateEmailTemplateResponse.struct_class = Types::CreateEmailTemplateResponse
464
485
 
486
+ CreateImportJobRequest.add_member(:import_destination, Shapes::ShapeRef.new(shape: ImportDestination, required: true, location_name: "ImportDestination"))
487
+ CreateImportJobRequest.add_member(:import_data_source, Shapes::ShapeRef.new(shape: ImportDataSource, required: true, location_name: "ImportDataSource"))
488
+ CreateImportJobRequest.struct_class = Types::CreateImportJobRequest
489
+
490
+ CreateImportJobResponse.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "JobId"))
491
+ CreateImportJobResponse.struct_class = Types::CreateImportJobResponse
492
+
465
493
  CustomVerificationEmailTemplateMetadata.add_member(:template_name, Shapes::ShapeRef.new(shape: EmailTemplateName, location_name: "TemplateName"))
466
494
  CustomVerificationEmailTemplateMetadata.add_member(:from_email_address, Shapes::ShapeRef.new(shape: EmailAddress, location_name: "FromEmailAddress"))
467
495
  CustomVerificationEmailTemplateMetadata.add_member(:template_subject, Shapes::ShapeRef.new(shape: EmailTemplateSubject, location_name: "TemplateSubject"))
@@ -634,6 +662,10 @@ module Aws::SESV2
634
662
 
635
663
  EventTypes.member = Shapes::ShapeRef.new(shape: EventType)
636
664
 
665
+ FailureInfo.add_member(:failed_records_s3_url, Shapes::ShapeRef.new(shape: FailedRecordsS3Url, location_name: "FailedRecordsS3Url"))
666
+ FailureInfo.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "ErrorMessage"))
667
+ FailureInfo.struct_class = Types::FailureInfo
668
+
637
669
  GetAccountRequest.struct_class = Types::GetAccountRequest
638
670
 
639
671
  GetAccountResponse.add_member(:dedicated_ip_auto_warmup_enabled, Shapes::ShapeRef.new(shape: Enabled, location_name: "DedicatedIpAutoWarmupEnabled"))
@@ -754,6 +786,20 @@ module Aws::SESV2
754
786
  GetEmailTemplateResponse.add_member(:template_content, Shapes::ShapeRef.new(shape: EmailTemplateContent, required: true, location_name: "TemplateContent"))
755
787
  GetEmailTemplateResponse.struct_class = Types::GetEmailTemplateResponse
756
788
 
789
+ GetImportJobRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location: "uri", location_name: "JobId"))
790
+ GetImportJobRequest.struct_class = Types::GetImportJobRequest
791
+
792
+ GetImportJobResponse.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "JobId"))
793
+ GetImportJobResponse.add_member(:import_destination, Shapes::ShapeRef.new(shape: ImportDestination, location_name: "ImportDestination"))
794
+ GetImportJobResponse.add_member(:import_data_source, Shapes::ShapeRef.new(shape: ImportDataSource, location_name: "ImportDataSource"))
795
+ GetImportJobResponse.add_member(:failure_info, Shapes::ShapeRef.new(shape: FailureInfo, location_name: "FailureInfo"))
796
+ GetImportJobResponse.add_member(:job_status, Shapes::ShapeRef.new(shape: JobStatus, location_name: "JobStatus"))
797
+ GetImportJobResponse.add_member(:created_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTimestamp"))
798
+ GetImportJobResponse.add_member(:completed_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CompletedTimestamp"))
799
+ GetImportJobResponse.add_member(:processed_records_count, Shapes::ShapeRef.new(shape: ProcessedRecordsCount, location_name: "ProcessedRecordsCount"))
800
+ GetImportJobResponse.add_member(:failed_records_count, Shapes::ShapeRef.new(shape: FailedRecordsCount, location_name: "FailedRecordsCount"))
801
+ GetImportJobResponse.struct_class = Types::GetImportJobResponse
802
+
757
803
  GetSuppressedDestinationRequest.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location: "uri", location_name: "EmailAddress"))
758
804
  GetSuppressedDestinationRequest.struct_class = Types::GetSuppressedDestinationRequest
759
805
 
@@ -767,6 +813,21 @@ module Aws::SESV2
767
813
 
768
814
  IdentityInfoList.member = Shapes::ShapeRef.new(shape: IdentityInfo)
769
815
 
816
+ ImportDataSource.add_member(:s3_url, Shapes::ShapeRef.new(shape: S3Url, required: true, location_name: "S3Url"))
817
+ ImportDataSource.add_member(:data_format, Shapes::ShapeRef.new(shape: DataFormat, required: true, location_name: "DataFormat"))
818
+ ImportDataSource.struct_class = Types::ImportDataSource
819
+
820
+ ImportDestination.add_member(:suppression_list_destination, Shapes::ShapeRef.new(shape: SuppressionListDestination, required: true, location_name: "SuppressionListDestination"))
821
+ ImportDestination.struct_class = Types::ImportDestination
822
+
823
+ ImportJobSummary.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "JobId"))
824
+ ImportJobSummary.add_member(:import_destination, Shapes::ShapeRef.new(shape: ImportDestination, location_name: "ImportDestination"))
825
+ ImportJobSummary.add_member(:job_status, Shapes::ShapeRef.new(shape: JobStatus, location_name: "JobStatus"))
826
+ ImportJobSummary.add_member(:created_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTimestamp"))
827
+ ImportJobSummary.struct_class = Types::ImportJobSummary
828
+
829
+ ImportJobSummaryList.member = Shapes::ShapeRef.new(shape: ImportJobSummary)
830
+
770
831
  InboxPlacementTrackingOption.add_member(:global, Shapes::ShapeRef.new(shape: Enabled, location_name: "Global"))
771
832
  InboxPlacementTrackingOption.add_member(:tracked_isps, Shapes::ShapeRef.new(shape: IspNameList, location_name: "TrackedIsps"))
772
833
  InboxPlacementTrackingOption.struct_class = Types::InboxPlacementTrackingOption
@@ -848,6 +909,15 @@ module Aws::SESV2
848
909
  ListEmailTemplatesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
849
910
  ListEmailTemplatesResponse.struct_class = Types::ListEmailTemplatesResponse
850
911
 
912
+ ListImportJobsRequest.add_member(:import_destination_type, Shapes::ShapeRef.new(shape: ImportDestinationType, location_name: "ImportDestinationType"))
913
+ ListImportJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "NextToken"))
914
+ ListImportJobsRequest.add_member(:page_size, Shapes::ShapeRef.new(shape: MaxItems, location: "querystring", location_name: "PageSize"))
915
+ ListImportJobsRequest.struct_class = Types::ListImportJobsRequest
916
+
917
+ ListImportJobsResponse.add_member(:import_jobs, Shapes::ShapeRef.new(shape: ImportJobSummaryList, location_name: "ImportJobs"))
918
+ ListImportJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
919
+ ListImportJobsResponse.struct_class = Types::ListImportJobsResponse
920
+
851
921
  ListOfDedicatedIpPools.member = Shapes::ShapeRef.new(shape: PoolName)
852
922
 
853
923
  ListSuppressedDestinationsRequest.add_member(:reasons, Shapes::ShapeRef.new(shape: SuppressionListReasons, location: "querystring", location_name: "Reason"))
@@ -1100,6 +1170,9 @@ module Aws::SESV2
1100
1170
  SuppressionAttributes.add_member(:suppressed_reasons, Shapes::ShapeRef.new(shape: SuppressionListReasons, location_name: "SuppressedReasons"))
1101
1171
  SuppressionAttributes.struct_class = Types::SuppressionAttributes
1102
1172
 
1173
+ SuppressionListDestination.add_member(:suppression_list_import_action, Shapes::ShapeRef.new(shape: SuppressionListImportAction, required: true, location_name: "SuppressionListImportAction"))
1174
+ SuppressionListDestination.struct_class = Types::SuppressionListDestination
1175
+
1103
1176
  SuppressionListReasons.member = Shapes::ShapeRef.new(shape: SuppressionListReason)
1104
1177
 
1105
1178
  SuppressionOptions.add_member(:suppressed_reasons, Shapes::ShapeRef.new(shape: SuppressionListReasons, location_name: "SuppressedReasons"))
@@ -1305,6 +1378,17 @@ module Aws::SESV2
1305
1378
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1306
1379
  end)
1307
1380
 
1381
+ api.add_operation(:create_import_job, Seahorse::Model::Operation.new.tap do |o|
1382
+ o.name = "CreateImportJob"
1383
+ o.http_method = "POST"
1384
+ o.http_request_uri = "/v2/email/import-jobs"
1385
+ o.input = Shapes::ShapeRef.new(shape: CreateImportJobRequest)
1386
+ o.output = Shapes::ShapeRef.new(shape: CreateImportJobResponse)
1387
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1388
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1389
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1390
+ end)
1391
+
1308
1392
  api.add_operation(:delete_configuration_set, Seahorse::Model::Operation.new.tap do |o|
1309
1393
  o.name = "DeleteConfigurationSet"
1310
1394
  o.http_method = "DELETE"
@@ -1555,6 +1639,17 @@ module Aws::SESV2
1555
1639
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1556
1640
  end)
1557
1641
 
1642
+ api.add_operation(:get_import_job, Seahorse::Model::Operation.new.tap do |o|
1643
+ o.name = "GetImportJob"
1644
+ o.http_method = "GET"
1645
+ o.http_request_uri = "/v2/email/import-jobs/{JobId}"
1646
+ o.input = Shapes::ShapeRef.new(shape: GetImportJobRequest)
1647
+ o.output = Shapes::ShapeRef.new(shape: GetImportJobResponse)
1648
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1649
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1650
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1651
+ end)
1652
+
1558
1653
  api.add_operation(:get_suppressed_destination, Seahorse::Model::Operation.new.tap do |o|
1559
1654
  o.name = "GetSuppressedDestination"
1560
1655
  o.http_method = "GET"
@@ -1680,6 +1775,22 @@ module Aws::SESV2
1680
1775
  )
1681
1776
  end)
1682
1777
 
1778
+ api.add_operation(:list_import_jobs, Seahorse::Model::Operation.new.tap do |o|
1779
+ o.name = "ListImportJobs"
1780
+ o.http_method = "GET"
1781
+ o.http_request_uri = "/v2/email/import-jobs"
1782
+ o.input = Shapes::ShapeRef.new(shape: ListImportJobsRequest)
1783
+ o.output = Shapes::ShapeRef.new(shape: ListImportJobsResponse)
1784
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1785
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1786
+ o[:pager] = Aws::Pager.new(
1787
+ limit_key: "page_size",
1788
+ tokens: {
1789
+ "next_token" => "next_token"
1790
+ }
1791
+ )
1792
+ end)
1793
+
1683
1794
  api.add_operation(:list_suppressed_destinations, Seahorse::Model::Operation.new.tap do |o|
1684
1795
  o.name = "ListSuppressedDestinations"
1685
1796
  o.http_method = "GET"
@@ -994,6 +994,56 @@ module Aws::SESV2
994
994
  #
995
995
  class CreateEmailTemplateResponse < Aws::EmptyStructure; end
996
996
 
997
+ # Represents a request to create an import job from a data source for a
998
+ # data destination.
999
+ #
1000
+ # @note When making an API call, you may pass CreateImportJobRequest
1001
+ # data as a hash:
1002
+ #
1003
+ # {
1004
+ # import_destination: { # required
1005
+ # suppression_list_destination: { # required
1006
+ # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
1007
+ # },
1008
+ # },
1009
+ # import_data_source: { # required
1010
+ # s3_url: "S3Url", # required
1011
+ # data_format: "CSV", # required, accepts CSV, JSON
1012
+ # },
1013
+ # }
1014
+ #
1015
+ # @!attribute [rw] import_destination
1016
+ # The destination for the import job.
1017
+ # @return [Types::ImportDestination]
1018
+ #
1019
+ # @!attribute [rw] import_data_source
1020
+ # The data source for the import job.
1021
+ # @return [Types::ImportDataSource]
1022
+ #
1023
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateImportJobRequest AWS API Documentation
1024
+ #
1025
+ class CreateImportJobRequest < Struct.new(
1026
+ :import_destination,
1027
+ :import_data_source)
1028
+ SENSITIVE = []
1029
+ include Aws::Structure
1030
+ end
1031
+
1032
+ # An HTTP 200 response if the request succeeds, or an error message if
1033
+ # the request fails.
1034
+ #
1035
+ # @!attribute [rw] job_id
1036
+ # A string that represents the import job ID.
1037
+ # @return [String]
1038
+ #
1039
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateImportJobResponse AWS API Documentation
1040
+ #
1041
+ class CreateImportJobResponse < Struct.new(
1042
+ :job_id)
1043
+ SENSITIVE = []
1044
+ include Aws::Structure
1045
+ end
1046
+
997
1047
  # Contains information about a custom verification email template.
998
1048
  #
999
1049
  # @!attribute [rw] template_name
@@ -2098,6 +2148,26 @@ module Aws::SESV2
2098
2148
  include Aws::Structure
2099
2149
  end
2100
2150
 
2151
+ # An object that contains the failure details about an import job.
2152
+ #
2153
+ # @!attribute [rw] failed_records_s3_url
2154
+ # An Amazon S3 presigned URL that contains all the failed records and
2155
+ # related information.
2156
+ # @return [String]
2157
+ #
2158
+ # @!attribute [rw] error_message
2159
+ # A message about why the import job failed.
2160
+ # @return [String]
2161
+ #
2162
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/FailureInfo AWS API Documentation
2163
+ #
2164
+ class FailureInfo < Struct.new(
2165
+ :failed_records_s3_url,
2166
+ :error_message)
2167
+ SENSITIVE = []
2168
+ include Aws::Structure
2169
+ end
2170
+
2101
2171
  # A request to obtain information about the email-sending capabilities
2102
2172
  # of your Amazon SES account.
2103
2173
  #
@@ -2894,6 +2964,84 @@ module Aws::SESV2
2894
2964
  include Aws::Structure
2895
2965
  end
2896
2966
 
2967
+ # Represents a request for information about an import job using the
2968
+ # import job ID.
2969
+ #
2970
+ # @note When making an API call, you may pass GetImportJobRequest
2971
+ # data as a hash:
2972
+ #
2973
+ # {
2974
+ # job_id: "JobId", # required
2975
+ # }
2976
+ #
2977
+ # @!attribute [rw] job_id
2978
+ # The ID of the import job.
2979
+ # @return [String]
2980
+ #
2981
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetImportJobRequest AWS API Documentation
2982
+ #
2983
+ class GetImportJobRequest < Struct.new(
2984
+ :job_id)
2985
+ SENSITIVE = []
2986
+ include Aws::Structure
2987
+ end
2988
+
2989
+ # An HTTP 200 response if the request succeeds, or an error message if
2990
+ # the request fails.
2991
+ #
2992
+ # @!attribute [rw] job_id
2993
+ # A string that represents the import job ID.
2994
+ # @return [String]
2995
+ #
2996
+ # @!attribute [rw] import_destination
2997
+ # The destination of the import job.
2998
+ # @return [Types::ImportDestination]
2999
+ #
3000
+ # @!attribute [rw] import_data_source
3001
+ # The data source of the import job.
3002
+ # @return [Types::ImportDataSource]
3003
+ #
3004
+ # @!attribute [rw] failure_info
3005
+ # The failure details about an import job.
3006
+ # @return [Types::FailureInfo]
3007
+ #
3008
+ # @!attribute [rw] job_status
3009
+ # The status of the import job.
3010
+ # @return [String]
3011
+ #
3012
+ # @!attribute [rw] created_timestamp
3013
+ # The time stamp of when the import job was created.
3014
+ # @return [Time]
3015
+ #
3016
+ # @!attribute [rw] completed_timestamp
3017
+ # The time stamp of when the import job was completed.
3018
+ # @return [Time]
3019
+ #
3020
+ # @!attribute [rw] processed_records_count
3021
+ # The current number of records processed.
3022
+ # @return [Integer]
3023
+ #
3024
+ # @!attribute [rw] failed_records_count
3025
+ # The number of records that failed processing because of invalid
3026
+ # input or other reasons.
3027
+ # @return [Integer]
3028
+ #
3029
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetImportJobResponse AWS API Documentation
3030
+ #
3031
+ class GetImportJobResponse < Struct.new(
3032
+ :job_id,
3033
+ :import_destination,
3034
+ :import_data_source,
3035
+ :failure_info,
3036
+ :job_status,
3037
+ :created_timestamp,
3038
+ :completed_timestamp,
3039
+ :processed_records_count,
3040
+ :failed_records_count)
3041
+ SENSITIVE = []
3042
+ include Aws::Structure
3043
+ end
3044
+
2897
3045
  # A request to retrieve information about an email address that's on
2898
3046
  # the suppression list for your account.
2899
3047
  #
@@ -2967,6 +3115,89 @@ module Aws::SESV2
2967
3115
  include Aws::Structure
2968
3116
  end
2969
3117
 
3118
+ # An object that contains details about the data source of the import
3119
+ # job.
3120
+ #
3121
+ # @note When making an API call, you may pass ImportDataSource
3122
+ # data as a hash:
3123
+ #
3124
+ # {
3125
+ # s3_url: "S3Url", # required
3126
+ # data_format: "CSV", # required, accepts CSV, JSON
3127
+ # }
3128
+ #
3129
+ # @!attribute [rw] s3_url
3130
+ # An Amazon S3 URL in the format
3131
+ # s3://*&lt;bucket\_name&gt;*/*&lt;object&gt;*.
3132
+ # @return [String]
3133
+ #
3134
+ # @!attribute [rw] data_format
3135
+ # The data format of the import job's data source.
3136
+ # @return [String]
3137
+ #
3138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportDataSource AWS API Documentation
3139
+ #
3140
+ class ImportDataSource < Struct.new(
3141
+ :s3_url,
3142
+ :data_format)
3143
+ SENSITIVE = []
3144
+ include Aws::Structure
3145
+ end
3146
+
3147
+ # An object that contains details about the resource destination the
3148
+ # import job is going to target.
3149
+ #
3150
+ # @note When making an API call, you may pass ImportDestination
3151
+ # data as a hash:
3152
+ #
3153
+ # {
3154
+ # suppression_list_destination: { # required
3155
+ # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
3156
+ # },
3157
+ # }
3158
+ #
3159
+ # @!attribute [rw] suppression_list_destination
3160
+ # An object that contains the action of the import job towards
3161
+ # suppression list.
3162
+ # @return [Types::SuppressionListDestination]
3163
+ #
3164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportDestination AWS API Documentation
3165
+ #
3166
+ class ImportDestination < Struct.new(
3167
+ :suppression_list_destination)
3168
+ SENSITIVE = []
3169
+ include Aws::Structure
3170
+ end
3171
+
3172
+ # A summary of the import job.
3173
+ #
3174
+ # @!attribute [rw] job_id
3175
+ # A string that represents the import job ID.
3176
+ # @return [String]
3177
+ #
3178
+ # @!attribute [rw] import_destination
3179
+ # An object that contains details about the resource destination the
3180
+ # import job is going to target.
3181
+ # @return [Types::ImportDestination]
3182
+ #
3183
+ # @!attribute [rw] job_status
3184
+ # The status of the import job.
3185
+ # @return [String]
3186
+ #
3187
+ # @!attribute [rw] created_timestamp
3188
+ # @return [Time]
3189
+ #
3190
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportJobSummary AWS API Documentation
3191
+ #
3192
+ class ImportJobSummary < Struct.new(
3193
+ :job_id,
3194
+ :import_destination,
3195
+ :job_status,
3196
+ :created_timestamp)
3197
+ SENSITIVE = []
3198
+ include Aws::Structure
3199
+ end
3200
+
2970
3201
  # An object that contains information about the inbox placement data
2971
3202
  # settings for a verified domain that’s associated with your AWS
2972
3203
  # account. This data is available only if you enabled the Deliverability
@@ -3504,6 +3735,71 @@ module Aws::SESV2
3504
3735
  include Aws::Structure
3505
3736
  end
3506
3737
 
3738
+ # Represents a request to list all of the import jobs for a data
3739
+ # destination within the specified maximum number of import jobs.
3740
+ #
3741
+ # @note When making an API call, you may pass ListImportJobsRequest
3742
+ # data as a hash:
3743
+ #
3744
+ # {
3745
+ # import_destination_type: "SUPPRESSION_LIST", # accepts SUPPRESSION_LIST
3746
+ # next_token: "NextToken",
3747
+ # page_size: 1,
3748
+ # }
3749
+ #
3750
+ # @!attribute [rw] import_destination_type
3751
+ # The destination of the import job, which can be used to list import
3752
+ # jobs that have a certain `ImportDestinationType`.
3753
+ # @return [String]
3754
+ #
3755
+ # @!attribute [rw] next_token
3756
+ # A string token indicating that there might be additional import jobs
3757
+ # available to be listed. Copy this token to a subsequent call to
3758
+ # `ListImportJobs` with the same parameters to retrieve the next page
3759
+ # of import jobs.
3760
+ # @return [String]
3761
+ #
3762
+ # @!attribute [rw] page_size
3763
+ # Maximum number of import jobs to return at once. Use this parameter
3764
+ # to paginate results. If additional import jobs exist beyond the
3765
+ # specified limit, the `NextToken` element is sent in the response.
3766
+ # Use the `NextToken` value in subsequent requests to retrieve
3767
+ # additional addresses.
3768
+ # @return [Integer]
3769
+ #
3770
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListImportJobsRequest AWS API Documentation
3771
+ #
3772
+ class ListImportJobsRequest < Struct.new(
3773
+ :import_destination_type,
3774
+ :next_token,
3775
+ :page_size)
3776
+ SENSITIVE = []
3777
+ include Aws::Structure
3778
+ end
3779
+
3780
+ # An HTTP 200 response if the request succeeds, or an error message if
3781
+ # the request fails.
3782
+ #
3783
+ # @!attribute [rw] import_jobs
3784
+ # A list of the import job summaries.
3785
+ # @return [Array<Types::ImportJobSummary>]
3786
+ #
3787
+ # @!attribute [rw] next_token
3788
+ # A string token indicating that there might be additional import jobs
3789
+ # available to be listed. Copy this token to a subsequent call to
3790
+ # `ListImportJobs` with the same parameters to retrieve the next page
3791
+ # of import jobs.
3792
+ # @return [String]
3793
+ #
3794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListImportJobsResponse AWS API Documentation
3795
+ #
3796
+ class ListImportJobsResponse < Struct.new(
3797
+ :import_jobs,
3798
+ :next_token)
3799
+ SENSITIVE = []
3800
+ include Aws::Structure
3801
+ end
3802
+
3507
3803
  # A request to obtain a list of email destinations that are on the
3508
3804
  # suppression list for your account.
3509
3805
  #
@@ -5432,6 +5728,33 @@ module Aws::SESV2
5432
5728
  include Aws::Structure
5433
5729
  end
5434
5730
 
5731
+ # An object that contains details about the action of suppression list.
5732
+ #
5733
+ # @note When making an API call, you may pass SuppressionListDestination
5734
+ # data as a hash:
5735
+ #
5736
+ # {
5737
+ # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
5738
+ # }
5739
+ #
5740
+ # @!attribute [rw] suppression_list_import_action
5741
+ # The type of action that you want to perform on the address.
5742
+ # Acceptable values:
5743
+ #
5744
+ # * PUT: add the addresses to the suppression list. If the record
5745
+ # already exists, it will override it with the new value.
5746
+ #
5747
+ # * DELETE: remove the addresses from the suppression list.
5748
+ # @return [String]
5749
+ #
5750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/SuppressionListDestination AWS API Documentation
5751
+ #
5752
+ class SuppressionListDestination < Struct.new(
5753
+ :suppression_list_import_action)
5754
+ SENSITIVE = []
5755
+ include Aws::Structure
5756
+ end
5757
+
5435
5758
  # An object that contains information about the suppression list
5436
5759
  # preferences for your account.
5437
5760
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-sesv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.0
4
+ version: 1.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-30 00:00:00.000000000 Z
11
+ date: 2020-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core