aws-sdk-personalize 1.60.0 → 1.62.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: d1da6af0db56f8c48cb2a224c8ce92c920417acfc5b29ff600eb82ddb8dbf82a
4
- data.tar.gz: 4d142528e72269c236df306d3f7d6fdc1c263cb8939afb165b667f7f694698a8
3
+ metadata.gz: 004cf321fa88a6590e6b6cf610faad4eda8a41cf56a989a9f2e6725ce654cca0
4
+ data.tar.gz: 98a6c4e1bdd66c61aad7797ac918fa31f9aef82942eb4112fd39f40f3aa65304
5
5
  SHA512:
6
- metadata.gz: eb125d70ef1daf9339e98cc9aede0884549ca854ad934373abf2009086231e84f03f09b49accb43eab2c29538848a0f7f020f73b9fc9e7850cc5fa25853e234a
7
- data.tar.gz: 7f5dbe932c9498748effa1c5069eb23f3b704a7e16a684d9e40baa105d3b3f175ff3ec4c5071e5968accf343b81f7962771e6394da8fec91a5254e677ce3a387
6
+ metadata.gz: 6e5e8d04357ee876cd84f1e6905188663d62888f67c4484c38cbb83c82f729500ee4354e78c83aeabeac18e729ca7ab2acf5c0e78d98fca1eb3d09cc6923d2df
7
+ data.tar.gz: 571c23999aa3b1b9d16dfba75f823ac3c932a8e0a5ec9d23792864e0a3456b5b1c6e7e7b17155ccb28c5087226d57104fe9fc8bd636b59dca40eb9b87eed7432
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.62.0 (2024-05-02)
5
+ ------------------
6
+
7
+ * Feature - This releases ability to delete users and their data, including their metadata and interactions data, from a dataset group.
8
+
9
+ 1.61.0 (2024-04-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.60.0 (2024-04-19)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.60.0
1
+ 1.62.0
@@ -22,6 +22,7 @@ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
22
  require 'aws-sdk-core/plugins/response_paging.rb'
23
23
  require 'aws-sdk-core/plugins/stub_responses.rb'
24
24
  require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/invocation_id.rb'
25
26
  require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
27
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
28
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
@@ -72,6 +73,7 @@ module Aws::Personalize
72
73
  add_plugin(Aws::Plugins::ResponsePaging)
73
74
  add_plugin(Aws::Plugins::StubResponses)
74
75
  add_plugin(Aws::Plugins::IdempotencyToken)
76
+ add_plugin(Aws::Plugins::InvocationId)
75
77
  add_plugin(Aws::Plugins::JsonvalueConverter)
76
78
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
77
79
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
@@ -196,10 +198,17 @@ module Aws::Personalize
196
198
  # When set to 'true' the request body will not be compressed
197
199
  # for supported operations.
198
200
  #
199
- # @option options [String] :endpoint
200
- # The client endpoint is normally constructed from the `:region`
201
- # option. You should only configure an `:endpoint` when connecting
202
- # to test or custom endpoints. This should be a valid HTTP(S) URI.
201
+ # @option options [String, URI::HTTPS, URI::HTTP] :endpoint
202
+ # Normally you should not configure the `:endpoint` option
203
+ # directly. This is normally constructed from the `:region`
204
+ # option. Configuring `:endpoint` is normally reserved for
205
+ # connecting to test or custom endpoints. The endpoint should
206
+ # be a URI formatted like:
207
+ #
208
+ # 'http://example.com'
209
+ # 'https://example.com'
210
+ # 'http://example.com:123'
211
+ #
203
212
  #
204
213
  # @option options [Integer] :endpoint_cache_max_entries (1000)
205
214
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -347,50 +356,65 @@ module Aws::Personalize
347
356
  # @option options [Aws::Personalize::EndpointProvider] :endpoint_provider
348
357
  # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Personalize::EndpointParameters`
349
358
  #
350
- # @option options [URI::HTTP,String] :http_proxy A proxy to send
351
- # requests through. Formatted like 'http://proxy.com:123'.
352
- #
353
- # @option options [Float] :http_open_timeout (15) The number of
354
- # seconds to wait when opening a HTTP session before raising a
355
- # `Timeout::Error`.
356
- #
357
- # @option options [Float] :http_read_timeout (60) The default
358
- # number of seconds to wait for response data. This value can
359
- # safely be set per-request on the session.
360
- #
361
- # @option options [Float] :http_idle_timeout (5) The number of
362
- # seconds a connection is allowed to sit idle before it is
363
- # considered stale. Stale connections are closed and removed
364
- # from the pool before making a request.
365
- #
366
- # @option options [Float] :http_continue_timeout (1) The number of
367
- # seconds to wait for a 100-continue response before sending the
368
- # request body. This option has no effect unless the request has
369
- # "Expect" header set to "100-continue". Defaults to `nil` which
370
- # disables this behaviour. This value can safely be set per
371
- # request on the session.
372
- #
373
- # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
374
- # in seconds.
375
- #
376
- # @option options [Boolean] :http_wire_trace (false) When `true`,
377
- # HTTP debug output will be sent to the `:logger`.
359
+ # @option options [Float] :http_continue_timeout (1)
360
+ # The number of seconds to wait for a 100-continue response before sending the
361
+ # request body. This option has no effect unless the request has "Expect"
362
+ # header set to "100-continue". Defaults to `nil` which disables this
363
+ # behaviour. This value can safely be set per request on the session.
364
+ #
365
+ # @option options [Float] :http_idle_timeout (5)
366
+ # The number of seconds a connection is allowed to sit idle before it
367
+ # is considered stale. Stale connections are closed and removed from the
368
+ # pool before making a request.
369
+ #
370
+ # @option options [Float] :http_open_timeout (15)
371
+ # The default number of seconds to wait for response data.
372
+ # This value can safely be set per-request on the session.
373
+ #
374
+ # @option options [URI::HTTP,String] :http_proxy
375
+ # A proxy to send requests through. Formatted like 'http://proxy.com:123'.
376
+ #
377
+ # @option options [Float] :http_read_timeout (60)
378
+ # The default number of seconds to wait for response data.
379
+ # This value can safely be set per-request on the session.
380
+ #
381
+ # @option options [Boolean] :http_wire_trace (false)
382
+ # When `true`, HTTP debug output will be sent to the `:logger`.
383
+ #
384
+ # @option options [Proc] :on_chunk_received
385
+ # When a Proc object is provided, it will be used as callback when each chunk
386
+ # of the response body is received. It provides three arguments: the chunk,
387
+ # the number of bytes received, and the total number of
388
+ # bytes in the response (or nil if the server did not send a `content-length`).
389
+ #
390
+ # @option options [Proc] :on_chunk_sent
391
+ # When a Proc object is provided, it will be used as callback when each chunk
392
+ # of the request body is sent. It provides three arguments: the chunk,
393
+ # the number of bytes read from the body, and the total number of
394
+ # bytes in the body.
395
+ #
396
+ # @option options [Boolean] :raise_response_errors (true)
397
+ # When `true`, response errors are raised.
398
+ #
399
+ # @option options [String] :ssl_ca_bundle
400
+ # Full path to the SSL certificate authority bundle file that should be used when
401
+ # verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
402
+ # `:ssl_ca_directory` the the system default will be used if available.
403
+ #
404
+ # @option options [String] :ssl_ca_directory
405
+ # Full path of the directory that contains the unbundled SSL certificate
406
+ # authority files for verifying peer certificates. If you do
407
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
408
+ # default will be used if available.
378
409
  #
379
- # @option options [Boolean] :ssl_verify_peer (true) When `true`,
380
- # SSL peer certificates are verified when establishing a
381
- # connection.
410
+ # @option options [String] :ssl_ca_store
411
+ # Sets the X509::Store to verify peer certificate.
382
412
  #
383
- # @option options [String] :ssl_ca_bundle Full path to the SSL
384
- # certificate authority bundle file that should be used when
385
- # verifying peer certificates. If you do not pass
386
- # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
387
- # will be used if available.
413
+ # @option options [Float] :ssl_timeout
414
+ # Sets the SSL timeout in seconds
388
415
  #
389
- # @option options [String] :ssl_ca_directory Full path of the
390
- # directory that contains the unbundled SSL certificate
391
- # authority files for verifying peer certificates. If you do
392
- # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
393
- # system default will be used if available.
416
+ # @option options [Boolean] :ssl_verify_peer (true)
417
+ # When `true`, SSL peer certificates are verified when establishing a connection.
394
418
  #
395
419
  def initialize(*args)
396
420
  super
@@ -791,6 +815,116 @@ module Aws::Personalize
791
815
  req.send_request(options)
792
816
  end
793
817
 
818
+ # Creates a batch job that deletes all references to specific users from
819
+ # an Amazon Personalize dataset group in batches. You specify the users
820
+ # to delete in a CSV file of userIds in an Amazon S3 bucket. After a job
821
+ # completes, Amazon Personalize no longer trains on the users’ data and
822
+ # no longer considers the users when generating user segments. For more
823
+ # information about creating a data deletion job, see [Deleting
824
+ # users][1].
825
+ #
826
+ # * Your input file must be a CSV file with a single USER\_ID column
827
+ # that lists the users IDs. For more information about preparing the
828
+ # CSV file, see [Preparing your data deletion file and uploading it to
829
+ # Amazon S3][2].
830
+ #
831
+ # * To give Amazon Personalize permission to access your input CSV file
832
+ # of userIds, you must specify an IAM service role that has permission
833
+ # to read from the data source. This role needs `GetObject` and
834
+ # `ListBucket` permissions for the bucket and its content. These
835
+ # permissions are the same as importing data. For information on
836
+ # granting access to your Amazon S3 bucket, see [Giving Amazon
837
+ # Personalize Access to Amazon S3 Resources][3].
838
+ #
839
+ # After you create a job, it can take up to a day to delete all
840
+ # references to the users from datasets and models. Until the job
841
+ # completes, Amazon Personalize continues to use the data when training.
842
+ # And if you use a User Segmentation recipe, the users might appear in
843
+ # user segments.
844
+ #
845
+ # **Status**
846
+ #
847
+ # A data deletion job can have one of the following statuses:
848
+ #
849
+ # * PENDING > IN\_PROGRESS > COMPLETED -or- FAILED
850
+ #
851
+ # ^
852
+ #
853
+ # To get the status of the data deletion job, call
854
+ # [DescribeDataDeletionJob][4] API operation and specify the Amazon
855
+ # Resource Name (ARN) of the job. If the status is FAILED, the response
856
+ # includes a `failureReason` key, which describes why the job failed.
857
+ #
858
+ # **Related APIs**
859
+ #
860
+ # * [ListDataDeletionJobs][5]
861
+ #
862
+ # * [DescribeDataDeletionJob][4]
863
+ #
864
+ #
865
+ #
866
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/delete-records.html
867
+ # [2]: https://docs.aws.amazon.com/personalize/latest/dg/prepare-deletion-input-file.html
868
+ # [3]: https://docs.aws.amazon.com/personalize/latest/dg/granting-personalize-s3-access.html
869
+ # [4]: https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeDataDeletionJob.html
870
+ # [5]: https://docs.aws.amazon.com/personalize/latest/dg/API_ListDataDeletionJobs.html
871
+ #
872
+ # @option params [required, String] :job_name
873
+ # The name for the data deletion job.
874
+ #
875
+ # @option params [required, String] :dataset_group_arn
876
+ # The Amazon Resource Name (ARN) of the dataset group that has the
877
+ # datasets you want to delete records from.
878
+ #
879
+ # @option params [required, Types::DataSource] :data_source
880
+ # The Amazon S3 bucket that contains the list of userIds of the users to
881
+ # delete.
882
+ #
883
+ # @option params [required, String] :role_arn
884
+ # The Amazon Resource Name (ARN) of the IAM role that has permissions to
885
+ # read from the Amazon S3 data source.
886
+ #
887
+ # @option params [Array<Types::Tag>] :tags
888
+ # A list of [tags][1] to apply to the data deletion job.
889
+ #
890
+ #
891
+ #
892
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html
893
+ #
894
+ # @return [Types::CreateDataDeletionJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
895
+ #
896
+ # * {Types::CreateDataDeletionJobResponse#data_deletion_job_arn #data_deletion_job_arn} => String
897
+ #
898
+ # @example Request syntax with placeholder values
899
+ #
900
+ # resp = client.create_data_deletion_job({
901
+ # job_name: "Name", # required
902
+ # dataset_group_arn: "Arn", # required
903
+ # data_source: { # required
904
+ # data_location: "S3Location",
905
+ # },
906
+ # role_arn: "RoleArn", # required
907
+ # tags: [
908
+ # {
909
+ # tag_key: "TagKey", # required
910
+ # tag_value: "TagValue", # required
911
+ # },
912
+ # ],
913
+ # })
914
+ #
915
+ # @example Response structure
916
+ #
917
+ # resp.data_deletion_job_arn #=> String
918
+ #
919
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDataDeletionJob AWS API Documentation
920
+ #
921
+ # @overload create_data_deletion_job(params = {})
922
+ # @param [Hash] params ({})
923
+ def create_data_deletion_job(params = {}, options = {})
924
+ req = build_request(:create_data_deletion_job, params)
925
+ req.send_request(options)
926
+ end
927
+
794
928
  # Creates an empty dataset and adds it to the specified dataset group.
795
929
  # Use [CreateDatasetImportJob][1] to import your training data to a
796
930
  # dataset.
@@ -2520,6 +2654,48 @@ module Aws::Personalize
2520
2654
  req.send_request(options)
2521
2655
  end
2522
2656
 
2657
+ # Describes the data deletion job created by [CreateDataDeletionJob][1],
2658
+ # including the job status.
2659
+ #
2660
+ #
2661
+ #
2662
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/API_CreateDataDeletionJob.html
2663
+ #
2664
+ # @option params [required, String] :data_deletion_job_arn
2665
+ # The Amazon Resource Name (ARN) of the data deletion job.
2666
+ #
2667
+ # @return [Types::DescribeDataDeletionJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2668
+ #
2669
+ # * {Types::DescribeDataDeletionJobResponse#data_deletion_job #data_deletion_job} => Types::DataDeletionJob
2670
+ #
2671
+ # @example Request syntax with placeholder values
2672
+ #
2673
+ # resp = client.describe_data_deletion_job({
2674
+ # data_deletion_job_arn: "Arn", # required
2675
+ # })
2676
+ #
2677
+ # @example Response structure
2678
+ #
2679
+ # resp.data_deletion_job.job_name #=> String
2680
+ # resp.data_deletion_job.data_deletion_job_arn #=> String
2681
+ # resp.data_deletion_job.dataset_group_arn #=> String
2682
+ # resp.data_deletion_job.data_source.data_location #=> String
2683
+ # resp.data_deletion_job.role_arn #=> String
2684
+ # resp.data_deletion_job.status #=> String
2685
+ # resp.data_deletion_job.num_deleted #=> Integer
2686
+ # resp.data_deletion_job.creation_date_time #=> Time
2687
+ # resp.data_deletion_job.last_updated_date_time #=> Time
2688
+ # resp.data_deletion_job.failure_reason #=> String
2689
+ #
2690
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDataDeletionJob AWS API Documentation
2691
+ #
2692
+ # @overload describe_data_deletion_job(params = {})
2693
+ # @param [Hash] params ({})
2694
+ def describe_data_deletion_job(params = {}, options = {})
2695
+ req = build_request(:describe_data_deletion_job, params)
2696
+ req.send_request(options)
2697
+ end
2698
+
2523
2699
  # Describes the given dataset. For more information on datasets, see
2524
2700
  # [CreateDataset][1].
2525
2701
  #
@@ -3369,6 +3545,62 @@ module Aws::Personalize
3369
3545
  req.send_request(options)
3370
3546
  end
3371
3547
 
3548
+ # Returns a list of data deletion jobs for a dataset group ordered by
3549
+ # creation time, with the most recent first. When a dataset group is not
3550
+ # specified, all the data deletion jobs associated with the account are
3551
+ # listed. The response provides the properties for each job, including
3552
+ # the Amazon Resource Name (ARN). For more information on data deletion
3553
+ # jobs, see [Deleting users][1].
3554
+ #
3555
+ #
3556
+ #
3557
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/delete-records.html
3558
+ #
3559
+ # @option params [String] :dataset_group_arn
3560
+ # The Amazon Resource Name (ARN) of the dataset group to list data
3561
+ # deletion jobs for.
3562
+ #
3563
+ # @option params [String] :next_token
3564
+ # A token returned from the previous call to `ListDataDeletionJobs` for
3565
+ # getting the next set of jobs (if they exist).
3566
+ #
3567
+ # @option params [Integer] :max_results
3568
+ # The maximum number of data deletion jobs to return.
3569
+ #
3570
+ # @return [Types::ListDataDeletionJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3571
+ #
3572
+ # * {Types::ListDataDeletionJobsResponse#data_deletion_jobs #data_deletion_jobs} => Array&lt;Types::DataDeletionJobSummary&gt;
3573
+ # * {Types::ListDataDeletionJobsResponse#next_token #next_token} => String
3574
+ #
3575
+ # @example Request syntax with placeholder values
3576
+ #
3577
+ # resp = client.list_data_deletion_jobs({
3578
+ # dataset_group_arn: "Arn",
3579
+ # next_token: "NextToken",
3580
+ # max_results: 1,
3581
+ # })
3582
+ #
3583
+ # @example Response structure
3584
+ #
3585
+ # resp.data_deletion_jobs #=> Array
3586
+ # resp.data_deletion_jobs[0].data_deletion_job_arn #=> String
3587
+ # resp.data_deletion_jobs[0].dataset_group_arn #=> String
3588
+ # resp.data_deletion_jobs[0].job_name #=> String
3589
+ # resp.data_deletion_jobs[0].status #=> String
3590
+ # resp.data_deletion_jobs[0].creation_date_time #=> Time
3591
+ # resp.data_deletion_jobs[0].last_updated_date_time #=> Time
3592
+ # resp.data_deletion_jobs[0].failure_reason #=> String
3593
+ # resp.next_token #=> String
3594
+ #
3595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDataDeletionJobs AWS API Documentation
3596
+ #
3597
+ # @overload list_data_deletion_jobs(params = {})
3598
+ # @param [Hash] params ({})
3599
+ def list_data_deletion_jobs(params = {}, options = {})
3600
+ req = build_request(:list_data_deletion_jobs, params)
3601
+ req.send_request(options)
3602
+ end
3603
+
3372
3604
  # Returns a list of dataset export jobs that use the given dataset. When
3373
3605
  # a dataset is not specified, all the dataset export jobs associated
3374
3606
  # with the account are listed. The response provides the properties for
@@ -4514,7 +4746,7 @@ module Aws::Personalize
4514
4746
  params: params,
4515
4747
  config: config)
4516
4748
  context[:gem_name] = 'aws-sdk-personalize'
4517
- context[:gem_version] = '1.60.0'
4749
+ context[:gem_version] = '1.62.0'
4518
4750
  Seahorse::Client::Request.new(handlers, context)
4519
4751
  end
4520
4752
 
@@ -56,6 +56,8 @@ module Aws::Personalize
56
56
  CreateBatchSegmentJobResponse = Shapes::StructureShape.new(name: 'CreateBatchSegmentJobResponse')
57
57
  CreateCampaignRequest = Shapes::StructureShape.new(name: 'CreateCampaignRequest')
58
58
  CreateCampaignResponse = Shapes::StructureShape.new(name: 'CreateCampaignResponse')
59
+ CreateDataDeletionJobRequest = Shapes::StructureShape.new(name: 'CreateDataDeletionJobRequest')
60
+ CreateDataDeletionJobResponse = Shapes::StructureShape.new(name: 'CreateDataDeletionJobResponse')
59
61
  CreateDatasetExportJobRequest = Shapes::StructureShape.new(name: 'CreateDatasetExportJobRequest')
60
62
  CreateDatasetExportJobResponse = Shapes::StructureShape.new(name: 'CreateDatasetExportJobResponse')
61
63
  CreateDatasetGroupRequest = Shapes::StructureShape.new(name: 'CreateDatasetGroupRequest')
@@ -78,6 +80,9 @@ module Aws::Personalize
78
80
  CreateSolutionResponse = Shapes::StructureShape.new(name: 'CreateSolutionResponse')
79
81
  CreateSolutionVersionRequest = Shapes::StructureShape.new(name: 'CreateSolutionVersionRequest')
80
82
  CreateSolutionVersionResponse = Shapes::StructureShape.new(name: 'CreateSolutionVersionResponse')
83
+ DataDeletionJob = Shapes::StructureShape.new(name: 'DataDeletionJob')
84
+ DataDeletionJobSummary = Shapes::StructureShape.new(name: 'DataDeletionJobSummary')
85
+ DataDeletionJobs = Shapes::ListShape.new(name: 'DataDeletionJobs')
81
86
  DataSource = Shapes::StructureShape.new(name: 'DataSource')
82
87
  Dataset = Shapes::StructureShape.new(name: 'Dataset')
83
88
  DatasetExportJob = Shapes::StructureShape.new(name: 'DatasetExportJob')
@@ -121,6 +126,8 @@ module Aws::Personalize
121
126
  DescribeBatchSegmentJobResponse = Shapes::StructureShape.new(name: 'DescribeBatchSegmentJobResponse')
122
127
  DescribeCampaignRequest = Shapes::StructureShape.new(name: 'DescribeCampaignRequest')
123
128
  DescribeCampaignResponse = Shapes::StructureShape.new(name: 'DescribeCampaignResponse')
129
+ DescribeDataDeletionJobRequest = Shapes::StructureShape.new(name: 'DescribeDataDeletionJobRequest')
130
+ DescribeDataDeletionJobResponse = Shapes::StructureShape.new(name: 'DescribeDataDeletionJobResponse')
124
131
  DescribeDatasetExportJobRequest = Shapes::StructureShape.new(name: 'DescribeDatasetExportJobRequest')
125
132
  DescribeDatasetExportJobResponse = Shapes::StructureShape.new(name: 'DescribeDatasetExportJobResponse')
126
133
  DescribeDatasetGroupRequest = Shapes::StructureShape.new(name: 'DescribeDatasetGroupRequest')
@@ -177,6 +184,7 @@ module Aws::Personalize
177
184
  HyperParameters = Shapes::MapShape.new(name: 'HyperParameters')
178
185
  ImportMode = Shapes::StringShape.new(name: 'ImportMode')
179
186
  IngestionMode = Shapes::StringShape.new(name: 'IngestionMode')
187
+ Integer = Shapes::IntegerShape.new(name: 'Integer')
180
188
  IntegerHyperParameterRange = Shapes::StructureShape.new(name: 'IntegerHyperParameterRange')
181
189
  IntegerHyperParameterRanges = Shapes::ListShape.new(name: 'IntegerHyperParameterRanges')
182
190
  IntegerMaxValue = Shapes::IntegerShape.new(name: 'IntegerMaxValue')
@@ -192,6 +200,8 @@ module Aws::Personalize
192
200
  ListBatchSegmentJobsResponse = Shapes::StructureShape.new(name: 'ListBatchSegmentJobsResponse')
193
201
  ListCampaignsRequest = Shapes::StructureShape.new(name: 'ListCampaignsRequest')
194
202
  ListCampaignsResponse = Shapes::StructureShape.new(name: 'ListCampaignsResponse')
203
+ ListDataDeletionJobsRequest = Shapes::StructureShape.new(name: 'ListDataDeletionJobsRequest')
204
+ ListDataDeletionJobsResponse = Shapes::StructureShape.new(name: 'ListDataDeletionJobsResponse')
195
205
  ListDatasetExportJobsRequest = Shapes::StructureShape.new(name: 'ListDatasetExportJobsRequest')
196
206
  ListDatasetExportJobsResponse = Shapes::StructureShape.new(name: 'ListDatasetExportJobsResponse')
197
207
  ListDatasetGroupsRequest = Shapes::StructureShape.new(name: 'ListDatasetGroupsRequest')
@@ -494,6 +504,16 @@ module Aws::Personalize
494
504
  CreateCampaignResponse.add_member(:campaign_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "campaignArn"))
495
505
  CreateCampaignResponse.struct_class = Types::CreateCampaignResponse
496
506
 
507
+ CreateDataDeletionJobRequest.add_member(:job_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "jobName"))
508
+ CreateDataDeletionJobRequest.add_member(:dataset_group_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "datasetGroupArn"))
509
+ CreateDataDeletionJobRequest.add_member(:data_source, Shapes::ShapeRef.new(shape: DataSource, required: true, location_name: "dataSource"))
510
+ CreateDataDeletionJobRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
511
+ CreateDataDeletionJobRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
512
+ CreateDataDeletionJobRequest.struct_class = Types::CreateDataDeletionJobRequest
513
+
514
+ CreateDataDeletionJobResponse.add_member(:data_deletion_job_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "dataDeletionJobArn"))
515
+ CreateDataDeletionJobResponse.struct_class = Types::CreateDataDeletionJobResponse
516
+
497
517
  CreateDatasetExportJobRequest.add_member(:job_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "jobName"))
498
518
  CreateDatasetExportJobRequest.add_member(:dataset_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "datasetArn"))
499
519
  CreateDatasetExportJobRequest.add_member(:ingestion_mode, Shapes::ShapeRef.new(shape: IngestionMode, location_name: "ingestionMode"))
@@ -606,6 +626,29 @@ module Aws::Personalize
606
626
  CreateSolutionVersionResponse.add_member(:solution_version_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "solutionVersionArn"))
607
627
  CreateSolutionVersionResponse.struct_class = Types::CreateSolutionVersionResponse
608
628
 
629
+ DataDeletionJob.add_member(:job_name, Shapes::ShapeRef.new(shape: Name, location_name: "jobName"))
630
+ DataDeletionJob.add_member(:data_deletion_job_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "dataDeletionJobArn"))
631
+ DataDeletionJob.add_member(:dataset_group_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "datasetGroupArn"))
632
+ DataDeletionJob.add_member(:data_source, Shapes::ShapeRef.new(shape: DataSource, location_name: "dataSource"))
633
+ DataDeletionJob.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "roleArn"))
634
+ DataDeletionJob.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "status"))
635
+ DataDeletionJob.add_member(:num_deleted, Shapes::ShapeRef.new(shape: Integer, location_name: "numDeleted"))
636
+ DataDeletionJob.add_member(:creation_date_time, Shapes::ShapeRef.new(shape: Date, location_name: "creationDateTime"))
637
+ DataDeletionJob.add_member(:last_updated_date_time, Shapes::ShapeRef.new(shape: Date, location_name: "lastUpdatedDateTime"))
638
+ DataDeletionJob.add_member(:failure_reason, Shapes::ShapeRef.new(shape: FailureReason, location_name: "failureReason"))
639
+ DataDeletionJob.struct_class = Types::DataDeletionJob
640
+
641
+ DataDeletionJobSummary.add_member(:data_deletion_job_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "dataDeletionJobArn"))
642
+ DataDeletionJobSummary.add_member(:dataset_group_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "datasetGroupArn"))
643
+ DataDeletionJobSummary.add_member(:job_name, Shapes::ShapeRef.new(shape: Name, location_name: "jobName"))
644
+ DataDeletionJobSummary.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "status"))
645
+ DataDeletionJobSummary.add_member(:creation_date_time, Shapes::ShapeRef.new(shape: Date, location_name: "creationDateTime"))
646
+ DataDeletionJobSummary.add_member(:last_updated_date_time, Shapes::ShapeRef.new(shape: Date, location_name: "lastUpdatedDateTime"))
647
+ DataDeletionJobSummary.add_member(:failure_reason, Shapes::ShapeRef.new(shape: FailureReason, location_name: "failureReason"))
648
+ DataDeletionJobSummary.struct_class = Types::DataDeletionJobSummary
649
+
650
+ DataDeletionJobs.member = Shapes::ShapeRef.new(shape: DataDeletionJobSummary)
651
+
609
652
  DataSource.add_member(:data_location, Shapes::ShapeRef.new(shape: S3Location, location_name: "dataLocation"))
610
653
  DataSource.struct_class = Types::DataSource
611
654
 
@@ -803,6 +846,12 @@ module Aws::Personalize
803
846
  DescribeCampaignResponse.add_member(:campaign, Shapes::ShapeRef.new(shape: Campaign, location_name: "campaign"))
804
847
  DescribeCampaignResponse.struct_class = Types::DescribeCampaignResponse
805
848
 
849
+ DescribeDataDeletionJobRequest.add_member(:data_deletion_job_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "dataDeletionJobArn"))
850
+ DescribeDataDeletionJobRequest.struct_class = Types::DescribeDataDeletionJobRequest
851
+
852
+ DescribeDataDeletionJobResponse.add_member(:data_deletion_job, Shapes::ShapeRef.new(shape: DataDeletionJob, location_name: "dataDeletionJob"))
853
+ DescribeDataDeletionJobResponse.struct_class = Types::DescribeDataDeletionJobResponse
854
+
806
855
  DescribeDatasetExportJobRequest.add_member(:dataset_export_job_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "datasetExportJobArn"))
807
856
  DescribeDatasetExportJobRequest.struct_class = Types::DescribeDatasetExportJobRequest
808
857
 
@@ -1013,6 +1062,15 @@ module Aws::Personalize
1013
1062
  ListCampaignsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1014
1063
  ListCampaignsResponse.struct_class = Types::ListCampaignsResponse
1015
1064
 
1065
+ ListDataDeletionJobsRequest.add_member(:dataset_group_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "datasetGroupArn"))
1066
+ ListDataDeletionJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1067
+ ListDataDeletionJobsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
1068
+ ListDataDeletionJobsRequest.struct_class = Types::ListDataDeletionJobsRequest
1069
+
1070
+ ListDataDeletionJobsResponse.add_member(:data_deletion_jobs, Shapes::ShapeRef.new(shape: DataDeletionJobs, location_name: "dataDeletionJobs"))
1071
+ ListDataDeletionJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1072
+ ListDataDeletionJobsResponse.struct_class = Types::ListDataDeletionJobsResponse
1073
+
1016
1074
  ListDatasetExportJobsRequest.add_member(:dataset_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "datasetArn"))
1017
1075
  ListDatasetExportJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1018
1076
  ListDatasetExportJobsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
@@ -1411,6 +1469,7 @@ module Aws::Personalize
1411
1469
  "endpointPrefix" => "personalize",
1412
1470
  "jsonVersion" => "1.1",
1413
1471
  "protocol" => "json",
1472
+ "protocols" => ["json"],
1414
1473
  "serviceFullName" => "Amazon Personalize",
1415
1474
  "serviceId" => "Personalize",
1416
1475
  "signatureVersion" => "v4",
@@ -1461,6 +1520,20 @@ module Aws::Personalize
1461
1520
  o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
1462
1521
  end)
1463
1522
 
1523
+ api.add_operation(:create_data_deletion_job, Seahorse::Model::Operation.new.tap do |o|
1524
+ o.name = "CreateDataDeletionJob"
1525
+ o.http_method = "POST"
1526
+ o.http_request_uri = "/"
1527
+ o.input = Shapes::ShapeRef.new(shape: CreateDataDeletionJobRequest)
1528
+ o.output = Shapes::ShapeRef.new(shape: CreateDataDeletionJobResponse)
1529
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1530
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1531
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAlreadyExistsException)
1532
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1533
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
1534
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
1535
+ end)
1536
+
1464
1537
  api.add_operation(:create_dataset, Seahorse::Model::Operation.new.tap do |o|
1465
1538
  o.name = "CreateDataset"
1466
1539
  o.http_method = "POST"
@@ -1747,6 +1820,16 @@ module Aws::Personalize
1747
1820
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1748
1821
  end)
1749
1822
 
1823
+ api.add_operation(:describe_data_deletion_job, Seahorse::Model::Operation.new.tap do |o|
1824
+ o.name = "DescribeDataDeletionJob"
1825
+ o.http_method = "POST"
1826
+ o.http_request_uri = "/"
1827
+ o.input = Shapes::ShapeRef.new(shape: DescribeDataDeletionJobRequest)
1828
+ o.output = Shapes::ShapeRef.new(shape: DescribeDataDeletionJobResponse)
1829
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1830
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1831
+ end)
1832
+
1750
1833
  api.add_operation(:describe_dataset, Seahorse::Model::Operation.new.tap do |o|
1751
1834
  o.name = "DescribeDataset"
1752
1835
  o.http_method = "POST"
@@ -1936,6 +2019,16 @@ module Aws::Personalize
1936
2019
  )
1937
2020
  end)
1938
2021
 
2022
+ api.add_operation(:list_data_deletion_jobs, Seahorse::Model::Operation.new.tap do |o|
2023
+ o.name = "ListDataDeletionJobs"
2024
+ o.http_method = "POST"
2025
+ o.http_request_uri = "/"
2026
+ o.input = Shapes::ShapeRef.new(shape: ListDataDeletionJobsRequest)
2027
+ o.output = Shapes::ShapeRef.new(shape: ListDataDeletionJobsResponse)
2028
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
2029
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextTokenException)
2030
+ end)
2031
+
1939
2032
  api.add_operation(:list_dataset_export_jobs, Seahorse::Model::Operation.new.tap do |o|
1940
2033
  o.name = "ListDatasetExportJobs"
1941
2034
  o.http_method = "POST"
@@ -54,6 +54,20 @@ module Aws::Personalize
54
54
  end
55
55
  end
56
56
 
57
+ class CreateDataDeletionJob
58
+ def self.build(context)
59
+ unless context.config.regional_endpoint
60
+ endpoint = context.config.endpoint.to_s
61
+ end
62
+ Aws::Personalize::EndpointParameters.new(
63
+ region: context.config.region,
64
+ use_dual_stack: context.config.use_dualstack_endpoint,
65
+ use_fips: context.config.use_fips_endpoint,
66
+ endpoint: endpoint,
67
+ )
68
+ end
69
+ end
70
+
57
71
  class CreateDataset
58
72
  def self.build(context)
59
73
  unless context.config.regional_endpoint
@@ -390,6 +404,20 @@ module Aws::Personalize
390
404
  end
391
405
  end
392
406
 
407
+ class DescribeDataDeletionJob
408
+ def self.build(context)
409
+ unless context.config.regional_endpoint
410
+ endpoint = context.config.endpoint.to_s
411
+ end
412
+ Aws::Personalize::EndpointParameters.new(
413
+ region: context.config.region,
414
+ use_dual_stack: context.config.use_dualstack_endpoint,
415
+ use_fips: context.config.use_fips_endpoint,
416
+ endpoint: endpoint,
417
+ )
418
+ end
419
+ end
420
+
393
421
  class DescribeDataset
394
422
  def self.build(context)
395
423
  unless context.config.regional_endpoint
@@ -628,6 +656,20 @@ module Aws::Personalize
628
656
  end
629
657
  end
630
658
 
659
+ class ListDataDeletionJobs
660
+ def self.build(context)
661
+ unless context.config.regional_endpoint
662
+ endpoint = context.config.endpoint.to_s
663
+ end
664
+ Aws::Personalize::EndpointParameters.new(
665
+ region: context.config.region,
666
+ use_dual_stack: context.config.use_dualstack_endpoint,
667
+ use_fips: context.config.use_fips_endpoint,
668
+ endpoint: endpoint,
669
+ )
670
+ end
671
+ end
672
+
631
673
  class ListDatasetExportJobs
632
674
  def self.build(context)
633
675
  unless context.config.regional_endpoint
@@ -64,6 +64,8 @@ module Aws::Personalize
64
64
  Aws::Personalize::Endpoints::CreateBatchSegmentJob.build(context)
65
65
  when :create_campaign
66
66
  Aws::Personalize::Endpoints::CreateCampaign.build(context)
67
+ when :create_data_deletion_job
68
+ Aws::Personalize::Endpoints::CreateDataDeletionJob.build(context)
67
69
  when :create_dataset
68
70
  Aws::Personalize::Endpoints::CreateDataset.build(context)
69
71
  when :create_dataset_export_job
@@ -112,6 +114,8 @@ module Aws::Personalize
112
114
  Aws::Personalize::Endpoints::DescribeBatchSegmentJob.build(context)
113
115
  when :describe_campaign
114
116
  Aws::Personalize::Endpoints::DescribeCampaign.build(context)
117
+ when :describe_data_deletion_job
118
+ Aws::Personalize::Endpoints::DescribeDataDeletionJob.build(context)
115
119
  when :describe_dataset
116
120
  Aws::Personalize::Endpoints::DescribeDataset.build(context)
117
121
  when :describe_dataset_export_job
@@ -146,6 +150,8 @@ module Aws::Personalize
146
150
  Aws::Personalize::Endpoints::ListBatchSegmentJobs.build(context)
147
151
  when :list_campaigns
148
152
  Aws::Personalize::Endpoints::ListCampaigns.build(context)
153
+ when :list_data_deletion_jobs
154
+ Aws::Personalize::Endpoints::ListDataDeletionJobs.build(context)
149
155
  when :list_dataset_export_jobs
150
156
  Aws::Personalize::Endpoints::ListDatasetExportJobs.build(context)
151
157
  when :list_dataset_groups
@@ -1095,6 +1095,57 @@ module Aws::Personalize
1095
1095
  include Aws::Structure
1096
1096
  end
1097
1097
 
1098
+ # @!attribute [rw] job_name
1099
+ # The name for the data deletion job.
1100
+ # @return [String]
1101
+ #
1102
+ # @!attribute [rw] dataset_group_arn
1103
+ # The Amazon Resource Name (ARN) of the dataset group that has the
1104
+ # datasets you want to delete records from.
1105
+ # @return [String]
1106
+ #
1107
+ # @!attribute [rw] data_source
1108
+ # The Amazon S3 bucket that contains the list of userIds of the users
1109
+ # to delete.
1110
+ # @return [Types::DataSource]
1111
+ #
1112
+ # @!attribute [rw] role_arn
1113
+ # The Amazon Resource Name (ARN) of the IAM role that has permissions
1114
+ # to read from the Amazon S3 data source.
1115
+ # @return [String]
1116
+ #
1117
+ # @!attribute [rw] tags
1118
+ # A list of [tags][1] to apply to the data deletion job.
1119
+ #
1120
+ #
1121
+ #
1122
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html
1123
+ # @return [Array<Types::Tag>]
1124
+ #
1125
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDataDeletionJobRequest AWS API Documentation
1126
+ #
1127
+ class CreateDataDeletionJobRequest < Struct.new(
1128
+ :job_name,
1129
+ :dataset_group_arn,
1130
+ :data_source,
1131
+ :role_arn,
1132
+ :tags)
1133
+ SENSITIVE = []
1134
+ include Aws::Structure
1135
+ end
1136
+
1137
+ # @!attribute [rw] data_deletion_job_arn
1138
+ # The Amazon Resource Name (ARN) of the data deletion job.
1139
+ # @return [String]
1140
+ #
1141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDataDeletionJobResponse AWS API Documentation
1142
+ #
1143
+ class CreateDataDeletionJobResponse < Struct.new(
1144
+ :data_deletion_job_arn)
1145
+ SENSITIVE = []
1146
+ include Aws::Structure
1147
+ end
1148
+
1098
1149
  # @!attribute [rw] job_name
1099
1150
  # The name for the dataset export job.
1100
1151
  # @return [String]
@@ -1777,12 +1828,156 @@ module Aws::Personalize
1777
1828
  include Aws::Structure
1778
1829
  end
1779
1830
 
1831
+ # Describes a job that deletes all references to specific users from an
1832
+ # Amazon Personalize dataset group in batches. For information about
1833
+ # creating a data deletion job, see [Deleting users][1].
1834
+ #
1835
+ #
1836
+ #
1837
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/delete-records.html
1838
+ #
1839
+ # @!attribute [rw] job_name
1840
+ # The name of the data deletion job.
1841
+ # @return [String]
1842
+ #
1843
+ # @!attribute [rw] data_deletion_job_arn
1844
+ # The Amazon Resource Name (ARN) of the data deletion job.
1845
+ # @return [String]
1846
+ #
1847
+ # @!attribute [rw] dataset_group_arn
1848
+ # The Amazon Resource Name (ARN) of the dataset group the job deletes
1849
+ # records from.
1850
+ # @return [String]
1851
+ #
1852
+ # @!attribute [rw] data_source
1853
+ # Describes the data source that contains the data to upload to a
1854
+ # dataset, or the list of records to delete from Amazon Personalize.
1855
+ # @return [Types::DataSource]
1856
+ #
1857
+ # @!attribute [rw] role_arn
1858
+ # The Amazon Resource Name (ARN) of the IAM role that has permissions
1859
+ # to read from the Amazon S3 data source.
1860
+ # @return [String]
1861
+ #
1862
+ # @!attribute [rw] status
1863
+ # The status of the data deletion job.
1864
+ #
1865
+ # A data deletion job can have one of the following statuses:
1866
+ #
1867
+ # * PENDING &gt; IN\_PROGRESS &gt; COMPLETED -or- FAILED
1868
+ #
1869
+ # ^
1870
+ # @return [String]
1871
+ #
1872
+ # @!attribute [rw] num_deleted
1873
+ # The number of records deleted by a COMPLETED job.
1874
+ # @return [Integer]
1875
+ #
1876
+ # @!attribute [rw] creation_date_time
1877
+ # The creation date and time (in Unix time) of the data deletion job.
1878
+ # @return [Time]
1879
+ #
1880
+ # @!attribute [rw] last_updated_date_time
1881
+ # The date and time (in Unix time) the data deletion job was last
1882
+ # updated.
1883
+ # @return [Time]
1884
+ #
1885
+ # @!attribute [rw] failure_reason
1886
+ # If a data deletion job fails, provides the reason why.
1887
+ # @return [String]
1888
+ #
1889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DataDeletionJob AWS API Documentation
1890
+ #
1891
+ class DataDeletionJob < Struct.new(
1892
+ :job_name,
1893
+ :data_deletion_job_arn,
1894
+ :dataset_group_arn,
1895
+ :data_source,
1896
+ :role_arn,
1897
+ :status,
1898
+ :num_deleted,
1899
+ :creation_date_time,
1900
+ :last_updated_date_time,
1901
+ :failure_reason)
1902
+ SENSITIVE = []
1903
+ include Aws::Structure
1904
+ end
1905
+
1906
+ # Provides a summary of the properties of a data deletion job. For a
1907
+ # complete listing, call the [DescribeDataDeletionJob][1] API operation.
1908
+ #
1909
+ #
1910
+ #
1911
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeDataDeletionJob.html
1912
+ #
1913
+ # @!attribute [rw] data_deletion_job_arn
1914
+ # The Amazon Resource Name (ARN) of the data deletion job.
1915
+ # @return [String]
1916
+ #
1917
+ # @!attribute [rw] dataset_group_arn
1918
+ # The Amazon Resource Name (ARN) of the dataset group the job deleted
1919
+ # records from.
1920
+ # @return [String]
1921
+ #
1922
+ # @!attribute [rw] job_name
1923
+ # The name of the data deletion job.
1924
+ # @return [String]
1925
+ #
1926
+ # @!attribute [rw] status
1927
+ # The status of the data deletion job.
1928
+ #
1929
+ # A data deletion job can have one of the following statuses:
1930
+ #
1931
+ # * PENDING &gt; IN\_PROGRESS &gt; COMPLETED -or- FAILED
1932
+ #
1933
+ # ^
1934
+ # @return [String]
1935
+ #
1936
+ # @!attribute [rw] creation_date_time
1937
+ # The creation date and time (in Unix time) of the data deletion job.
1938
+ # @return [Time]
1939
+ #
1940
+ # @!attribute [rw] last_updated_date_time
1941
+ # The date and time (in Unix time) the data deletion job was last
1942
+ # updated.
1943
+ # @return [Time]
1944
+ #
1945
+ # @!attribute [rw] failure_reason
1946
+ # If a data deletion job fails, provides the reason why.
1947
+ # @return [String]
1948
+ #
1949
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DataDeletionJobSummary AWS API Documentation
1950
+ #
1951
+ class DataDeletionJobSummary < Struct.new(
1952
+ :data_deletion_job_arn,
1953
+ :dataset_group_arn,
1954
+ :job_name,
1955
+ :status,
1956
+ :creation_date_time,
1957
+ :last_updated_date_time,
1958
+ :failure_reason)
1959
+ SENSITIVE = []
1960
+ include Aws::Structure
1961
+ end
1962
+
1780
1963
  # Describes the data source that contains the data to upload to a
1781
- # dataset.
1964
+ # dataset, or the list of records to delete from Amazon Personalize.
1782
1965
  #
1783
1966
  # @!attribute [rw] data_location
1784
- # The path to the Amazon S3 bucket where the data that you want to
1785
- # upload to your dataset is stored. For example:
1967
+ # For dataset import jobs, the path to the Amazon S3 bucket where the
1968
+ # data that you want to upload to your dataset is stored. For data
1969
+ # deletion jobs, the path to the Amazon S3 bucket that stores the list
1970
+ # of records to delete.
1971
+ #
1972
+ # For example:
1973
+ #
1974
+ # `s3://bucket-name/folder-name/fileName.csv`
1975
+ #
1976
+ # If your CSV files are in a folder in your Amazon S3 bucket and you
1977
+ # want your import job or data deletion job to consider multiple
1978
+ # files, you can specify the path to the folder. With a data deletion
1979
+ # job, Amazon Personalize uses all files in the folder and any sub
1980
+ # folder. Use the following syntax with a `/` after the folder name:
1786
1981
  #
1787
1982
  # `s3://bucket-name/folder-name/`
1788
1983
  # @return [String]
@@ -2815,6 +3010,40 @@ module Aws::Personalize
2815
3010
  include Aws::Structure
2816
3011
  end
2817
3012
 
3013
+ # @!attribute [rw] data_deletion_job_arn
3014
+ # The Amazon Resource Name (ARN) of the data deletion job.
3015
+ # @return [String]
3016
+ #
3017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDataDeletionJobRequest AWS API Documentation
3018
+ #
3019
+ class DescribeDataDeletionJobRequest < Struct.new(
3020
+ :data_deletion_job_arn)
3021
+ SENSITIVE = []
3022
+ include Aws::Structure
3023
+ end
3024
+
3025
+ # @!attribute [rw] data_deletion_job
3026
+ # Information about the data deletion job, including the status.
3027
+ #
3028
+ # The status is one of the following values:
3029
+ #
3030
+ # * PENDING
3031
+ #
3032
+ # * IN\_PROGRESS
3033
+ #
3034
+ # * COMPLETED
3035
+ #
3036
+ # * FAILED
3037
+ # @return [Types::DataDeletionJob]
3038
+ #
3039
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDataDeletionJobResponse AWS API Documentation
3040
+ #
3041
+ class DescribeDataDeletionJobResponse < Struct.new(
3042
+ :data_deletion_job)
3043
+ SENSITIVE = []
3044
+ include Aws::Structure
3045
+ end
3046
+
2818
3047
  # @!attribute [rw] dataset_export_job_arn
2819
3048
  # The Amazon Resource Name (ARN) of the dataset export job to
2820
3049
  # describe.
@@ -3763,6 +3992,48 @@ module Aws::Personalize
3763
3992
  include Aws::Structure
3764
3993
  end
3765
3994
 
3995
+ # @!attribute [rw] dataset_group_arn
3996
+ # The Amazon Resource Name (ARN) of the dataset group to list data
3997
+ # deletion jobs for.
3998
+ # @return [String]
3999
+ #
4000
+ # @!attribute [rw] next_token
4001
+ # A token returned from the previous call to `ListDataDeletionJobs`
4002
+ # for getting the next set of jobs (if they exist).
4003
+ # @return [String]
4004
+ #
4005
+ # @!attribute [rw] max_results
4006
+ # The maximum number of data deletion jobs to return.
4007
+ # @return [Integer]
4008
+ #
4009
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDataDeletionJobsRequest AWS API Documentation
4010
+ #
4011
+ class ListDataDeletionJobsRequest < Struct.new(
4012
+ :dataset_group_arn,
4013
+ :next_token,
4014
+ :max_results)
4015
+ SENSITIVE = []
4016
+ include Aws::Structure
4017
+ end
4018
+
4019
+ # @!attribute [rw] data_deletion_jobs
4020
+ # The list of data deletion jobs.
4021
+ # @return [Array<Types::DataDeletionJobSummary>]
4022
+ #
4023
+ # @!attribute [rw] next_token
4024
+ # A token for getting the next set of data deletion jobs (if they
4025
+ # exist).
4026
+ # @return [String]
4027
+ #
4028
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDataDeletionJobsResponse AWS API Documentation
4029
+ #
4030
+ class ListDataDeletionJobsResponse < Struct.new(
4031
+ :data_deletion_jobs,
4032
+ :next_token)
4033
+ SENSITIVE = []
4034
+ include Aws::Structure
4035
+ end
4036
+
3766
4037
  # @!attribute [rw] dataset_arn
3767
4038
  # The Amazon Resource Name (ARN) of the dataset to list the dataset
3768
4039
  # export jobs for.
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-personalize/customizations'
52
52
  # @!group service
53
53
  module Aws::Personalize
54
54
 
55
- GEM_VERSION = '1.60.0'
55
+ GEM_VERSION = '1.62.0'
56
56
 
57
57
  end
data/sig/client.rbs CHANGED
@@ -169,6 +169,27 @@ module Aws
169
169
  ) -> _CreateCampaignResponseSuccess
170
170
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateCampaignResponseSuccess
171
171
 
172
+ interface _CreateDataDeletionJobResponseSuccess
173
+ include ::Seahorse::Client::_ResponseSuccess[Types::CreateDataDeletionJobResponse]
174
+ def data_deletion_job_arn: () -> ::String
175
+ end
176
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Personalize/Client.html#create_data_deletion_job-instance_method
177
+ def create_data_deletion_job: (
178
+ job_name: ::String,
179
+ dataset_group_arn: ::String,
180
+ data_source: {
181
+ data_location: ::String?
182
+ },
183
+ role_arn: ::String,
184
+ ?tags: Array[
185
+ {
186
+ tag_key: ::String,
187
+ tag_value: ::String
188
+ },
189
+ ]
190
+ ) -> _CreateDataDeletionJobResponseSuccess
191
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateDataDeletionJobResponseSuccess
192
+
172
193
  interface _CreateDatasetResponseSuccess
173
194
  include ::Seahorse::Client::_ResponseSuccess[Types::CreateDatasetResponse]
174
195
  def dataset_arn: () -> ::String
@@ -541,6 +562,16 @@ module Aws
541
562
  ) -> _DescribeCampaignResponseSuccess
542
563
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeCampaignResponseSuccess
543
564
 
565
+ interface _DescribeDataDeletionJobResponseSuccess
566
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeDataDeletionJobResponse]
567
+ def data_deletion_job: () -> Types::DataDeletionJob
568
+ end
569
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Personalize/Client.html#describe_data_deletion_job-instance_method
570
+ def describe_data_deletion_job: (
571
+ data_deletion_job_arn: ::String
572
+ ) -> _DescribeDataDeletionJobResponseSuccess
573
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeDataDeletionJobResponseSuccess
574
+
544
575
  interface _DescribeDatasetResponseSuccess
545
576
  include ::Seahorse::Client::_ResponseSuccess[Types::DescribeDatasetResponse]
546
577
  def dataset: () -> Types::Dataset
@@ -721,6 +752,19 @@ module Aws
721
752
  ) -> _ListCampaignsResponseSuccess
722
753
  | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListCampaignsResponseSuccess
723
754
 
755
+ interface _ListDataDeletionJobsResponseSuccess
756
+ include ::Seahorse::Client::_ResponseSuccess[Types::ListDataDeletionJobsResponse]
757
+ def data_deletion_jobs: () -> ::Array[Types::DataDeletionJobSummary]
758
+ def next_token: () -> ::String
759
+ end
760
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Personalize/Client.html#list_data_deletion_jobs-instance_method
761
+ def list_data_deletion_jobs: (
762
+ ?dataset_group_arn: ::String,
763
+ ?next_token: ::String,
764
+ ?max_results: ::Integer
765
+ ) -> _ListDataDeletionJobsResponseSuccess
766
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListDataDeletionJobsResponseSuccess
767
+
724
768
  interface _ListDatasetExportJobsResponseSuccess
725
769
  include ::Seahorse::Client::_ResponseSuccess[Types::ListDatasetExportJobsResponse]
726
770
  def dataset_export_jobs: () -> ::Array[Types::DatasetExportJobSummary]
data/sig/types.rbs CHANGED
@@ -233,6 +233,20 @@ module Aws::Personalize
233
233
  SENSITIVE: []
234
234
  end
235
235
 
236
+ class CreateDataDeletionJobRequest
237
+ attr_accessor job_name: ::String
238
+ attr_accessor dataset_group_arn: ::String
239
+ attr_accessor data_source: Types::DataSource
240
+ attr_accessor role_arn: ::String
241
+ attr_accessor tags: ::Array[Types::Tag]
242
+ SENSITIVE: []
243
+ end
244
+
245
+ class CreateDataDeletionJobResponse
246
+ attr_accessor data_deletion_job_arn: ::String
247
+ SENSITIVE: []
248
+ end
249
+
236
250
  class CreateDatasetExportJobRequest
237
251
  attr_accessor job_name: ::String
238
252
  attr_accessor dataset_arn: ::String
@@ -389,6 +403,31 @@ module Aws::Personalize
389
403
  SENSITIVE: []
390
404
  end
391
405
 
406
+ class DataDeletionJob
407
+ attr_accessor job_name: ::String
408
+ attr_accessor data_deletion_job_arn: ::String
409
+ attr_accessor dataset_group_arn: ::String
410
+ attr_accessor data_source: Types::DataSource
411
+ attr_accessor role_arn: ::String
412
+ attr_accessor status: ::String
413
+ attr_accessor num_deleted: ::Integer
414
+ attr_accessor creation_date_time: ::Time
415
+ attr_accessor last_updated_date_time: ::Time
416
+ attr_accessor failure_reason: ::String
417
+ SENSITIVE: []
418
+ end
419
+
420
+ class DataDeletionJobSummary
421
+ attr_accessor data_deletion_job_arn: ::String
422
+ attr_accessor dataset_group_arn: ::String
423
+ attr_accessor job_name: ::String
424
+ attr_accessor status: ::String
425
+ attr_accessor creation_date_time: ::Time
426
+ attr_accessor last_updated_date_time: ::Time
427
+ attr_accessor failure_reason: ::String
428
+ SENSITIVE: []
429
+ end
430
+
392
431
  class DataSource
393
432
  attr_accessor data_location: ::String
394
433
  SENSITIVE: []
@@ -640,6 +679,16 @@ module Aws::Personalize
640
679
  SENSITIVE: []
641
680
  end
642
681
 
682
+ class DescribeDataDeletionJobRequest
683
+ attr_accessor data_deletion_job_arn: ::String
684
+ SENSITIVE: []
685
+ end
686
+
687
+ class DescribeDataDeletionJobResponse
688
+ attr_accessor data_deletion_job: Types::DataDeletionJob
689
+ SENSITIVE: []
690
+ end
691
+
643
692
  class DescribeDatasetExportJobRequest
644
693
  attr_accessor dataset_export_job_arn: ::String
645
694
  SENSITIVE: []
@@ -928,6 +977,19 @@ module Aws::Personalize
928
977
  SENSITIVE: []
929
978
  end
930
979
 
980
+ class ListDataDeletionJobsRequest
981
+ attr_accessor dataset_group_arn: ::String
982
+ attr_accessor next_token: ::String
983
+ attr_accessor max_results: ::Integer
984
+ SENSITIVE: []
985
+ end
986
+
987
+ class ListDataDeletionJobsResponse
988
+ attr_accessor data_deletion_jobs: ::Array[Types::DataDeletionJobSummary]
989
+ attr_accessor next_token: ::String
990
+ SENSITIVE: []
991
+ end
992
+
931
993
  class ListDatasetExportJobsRequest
932
994
  attr_accessor dataset_arn: ::String
933
995
  attr_accessor next_token: ::String
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-personalize
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.60.0
4
+ version: 1.62.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: 2024-04-19 00:00:00.000000000 Z
11
+ date: 2024-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.191.0
22
+ version: 3.193.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.191.0
32
+ version: 3.193.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement