aws-sdk-s3 1.192.0 → 1.193.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2729,8 +2729,8 @@ module Aws::S3
2729
2729
  req.send_request(options)
2730
2730
  end
2731
2731
 
2732
- # Creates a metadata table configuration for a general purpose bucket.
2733
- # For more information, see [Accelerating data discovery with S3
2732
+ # Creates an S3 Metadata V2 metadata configuration for a general purpose
2733
+ # bucket. For more information, see [Accelerating data discovery with S3
2734
2734
  # Metadata][1] in the *Amazon S3 User Guide*.
2735
2735
  #
2736
2736
  # Permissions
@@ -2739,14 +2739,31 @@ module Aws::S3
2739
2739
  # more information, see [Setting up permissions for configuring
2740
2740
  # metadata tables][2] in the *Amazon S3 User Guide*.
2741
2741
  #
2742
+ # If you want to encrypt your metadata tables with server-side
2743
+ # encryption with Key Management Service (KMS) keys (SSE-KMS), you
2744
+ # need additional permissions in your KMS key policy. For more
2745
+ # information, see [ Setting up permissions for configuring metadata
2746
+ # tables][2] in the *Amazon S3 User Guide*.
2747
+ #
2742
2748
  # If you also want to integrate your table bucket with Amazon Web
2743
2749
  # Services analytics services so that you can query your metadata
2744
2750
  # table, you need additional permissions. For more information, see [
2745
2751
  # Integrating Amazon S3 Tables with Amazon Web Services analytics
2746
2752
  # services][3] in the *Amazon S3 User Guide*.
2747
2753
  #
2754
+ # To query your metadata tables, you need additional permissions. For
2755
+ # more information, see [ Permissions for querying metadata tables][4]
2756
+ # in the *Amazon S3 User Guide*.
2757
+ #
2748
2758
  # * `s3:CreateBucketMetadataTableConfiguration`
2749
2759
  #
2760
+ # <note markdown="1"> The IAM policy action name is the same for the V1 and V2 API
2761
+ # operations.
2762
+ #
2763
+ # </note>
2764
+ #
2765
+ # * `s3tables:CreateTableBucket`
2766
+ #
2750
2767
  # * `s3tables:CreateNamespace`
2751
2768
  #
2752
2769
  # * `s3tables:GetTable`
@@ -2755,24 +2772,150 @@ module Aws::S3
2755
2772
  #
2756
2773
  # * `s3tables:PutTablePolicy`
2757
2774
  #
2775
+ # * `s3tables:PutTableEncryption`
2776
+ #
2777
+ # * `kms:DescribeKey`
2778
+ #
2758
2779
  # The following operations are related to
2759
- # `CreateBucketMetadataTableConfiguration`:
2780
+ # `CreateBucketMetadataConfiguration`:
2781
+ #
2782
+ # * [DeleteBucketMetadataConfiguration][5]
2760
2783
  #
2761
- # * [DeleteBucketMetadataTableConfiguration][4]
2784
+ # * [GetBucketMetadataConfiguration][6]
2762
2785
  #
2763
- # * [GetBucketMetadataTableConfiguration][5]
2786
+ # * [UpdateBucketMetadataInventoryTableConfiguration][7]
2787
+ #
2788
+ # * [UpdateBucketMetadataJournalTableConfiguration][8]
2764
2789
  #
2765
2790
  #
2766
2791
  #
2767
2792
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
2768
2793
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
2769
2794
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html
2770
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html
2771
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html
2795
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-bucket-query-permissions.html
2796
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html
2797
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html
2798
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html
2799
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html
2800
+ #
2801
+ # @option params [required, String] :bucket
2802
+ # The general purpose bucket that you want to create the metadata
2803
+ # configuration for.
2804
+ #
2805
+ # @option params [String] :content_md5
2806
+ # The `Content-MD5` header for the metadata configuration.
2807
+ #
2808
+ # @option params [String] :checksum_algorithm
2809
+ # The checksum algorithm to use with your metadata configuration.
2810
+ #
2811
+ # @option params [required, Types::MetadataConfiguration] :metadata_configuration
2812
+ # The contents of your metadata configuration.
2813
+ #
2814
+ # @option params [String] :expected_bucket_owner
2815
+ # The expected owner of the general purpose bucket that corresponds to
2816
+ # your metadata configuration.
2817
+ #
2818
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2819
+ #
2820
+ # @example Request syntax with placeholder values
2821
+ #
2822
+ # resp = client.create_bucket_metadata_configuration({
2823
+ # bucket: "BucketName", # required
2824
+ # content_md5: "ContentMD5",
2825
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
2826
+ # metadata_configuration: { # required
2827
+ # journal_table_configuration: { # required
2828
+ # record_expiration: { # required
2829
+ # expiration: "ENABLED", # required, accepts ENABLED, DISABLED
2830
+ # days: 1,
2831
+ # },
2832
+ # encryption_configuration: {
2833
+ # sse_algorithm: "aws:kms", # required, accepts aws:kms, AES256
2834
+ # kms_key_arn: "KmsKeyArn",
2835
+ # },
2836
+ # },
2837
+ # inventory_table_configuration: {
2838
+ # configuration_state: "ENABLED", # required, accepts ENABLED, DISABLED
2839
+ # encryption_configuration: {
2840
+ # sse_algorithm: "aws:kms", # required, accepts aws:kms, AES256
2841
+ # kms_key_arn: "KmsKeyArn",
2842
+ # },
2843
+ # },
2844
+ # },
2845
+ # expected_bucket_owner: "AccountId",
2846
+ # })
2847
+ #
2848
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucketMetadataConfiguration AWS API Documentation
2849
+ #
2850
+ # @overload create_bucket_metadata_configuration(params = {})
2851
+ # @param [Hash] params ({})
2852
+ def create_bucket_metadata_configuration(params = {}, options = {})
2853
+ req = build_request(:create_bucket_metadata_configuration, params)
2854
+ req.send_request(options)
2855
+ end
2856
+
2857
+ # We recommend that you create your S3 Metadata configurations by using
2858
+ # the V2 [CreateBucketMetadataConfiguration][1] API operation. We no
2859
+ # longer recommend using the V1 `CreateBucketMetadataTableConfiguration`
2860
+ # API operation.
2861
+ #
2862
+ # If you created your S3 Metadata configuration before July 15, 2025,
2863
+ # we
2864
+ # recommend that you delete and re-create your configuration by using
2865
+ # [CreateBucketMetadataConfiguration][1] so that you can expire journal
2866
+ # table records and create a live inventory table.
2867
+ #
2868
+ # Creates a V1 S3 Metadata configuration for a general purpose bucket.
2869
+ # For more information, see [Accelerating data discovery with S3
2870
+ # Metadata][2] in the *Amazon S3 User Guide*.
2871
+ #
2872
+ # Permissions
2873
+ #
2874
+ # : To use this operation, you must have the following permissions. For
2875
+ # more information, see [Setting up permissions for configuring
2876
+ # metadata tables][3] in the *Amazon S3 User Guide*.
2877
+ #
2878
+ # If you want to encrypt your metadata tables with server-side
2879
+ # encryption with Key Management Service (KMS) keys (SSE-KMS), you
2880
+ # need additional permissions. For more information, see [ Setting up
2881
+ # permissions for configuring metadata tables][3] in the *Amazon S3
2882
+ # User Guide*.
2883
+ #
2884
+ # If you also want to integrate your table bucket with Amazon Web
2885
+ # Services analytics services so that you can query your metadata
2886
+ # table, you need additional permissions. For more information, see [
2887
+ # Integrating Amazon S3 Tables with Amazon Web Services analytics
2888
+ # services][4] in the *Amazon S3 User Guide*.
2889
+ #
2890
+ # * `s3:CreateBucketMetadataTableConfiguration`
2891
+ #
2892
+ # * `s3tables:CreateNamespace`
2893
+ #
2894
+ # * `s3tables:GetTable`
2895
+ #
2896
+ # * `s3tables:CreateTable`
2897
+ #
2898
+ # * `s3tables:PutTablePolicy`
2899
+ #
2900
+ # The following operations are related to
2901
+ # `CreateBucketMetadataTableConfiguration`:
2902
+ #
2903
+ # * [DeleteBucketMetadataTableConfiguration][5]
2904
+ #
2905
+ # * [GetBucketMetadataTableConfiguration][6]
2906
+ #
2907
+ #
2908
+ #
2909
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html
2910
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
2911
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
2912
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html
2913
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html
2914
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html
2772
2915
  #
2773
2916
  # @option params [required, String] :bucket
2774
2917
  # The general purpose bucket that you want to create the metadata table
2775
- # configuration in.
2918
+ # configuration for.
2776
2919
  #
2777
2920
  # @option params [String] :content_md5
2778
2921
  # The `Content-MD5` header for the metadata table configuration.
@@ -2784,8 +2927,8 @@ module Aws::S3
2784
2927
  # The contents of your metadata table configuration.
2785
2928
  #
2786
2929
  # @option params [String] :expected_bucket_owner
2787
- # The expected owner of the general purpose bucket that contains your
2788
- # metadata table configuration.
2930
+ # The expected owner of the general purpose bucket that corresponds to
2931
+ # your metadata table configuration.
2789
2932
  #
2790
2933
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2791
2934
  #
@@ -4515,7 +4658,7 @@ module Aws::S3
4515
4658
  #
4516
4659
  # </note>
4517
4660
  #
4518
- # Deletes an inventory configuration (identified by the inventory ID)
4661
+ # Deletes an S3 Inventory configuration (identified by the inventory ID)
4519
4662
  # from the bucket.
4520
4663
  #
4521
4664
  # To use this operation, you must have permissions to perform the
@@ -4686,10 +4829,18 @@ module Aws::S3
4686
4829
  req.send_request(options)
4687
4830
  end
4688
4831
 
4689
- # Deletes a metadata table configuration from a general purpose bucket.
4832
+ # Deletes an S3 Metadata configuration from a general purpose bucket.
4690
4833
  # For more information, see [Accelerating data discovery with S3
4691
4834
  # Metadata][1] in the *Amazon S3 User Guide*.
4692
4835
  #
4836
+ # <note markdown="1"> You can use the V2 `DeleteBucketMetadataConfiguration` API operation
4837
+ # with V1 or V2 metadata configurations. However, if you try to use the
4838
+ # V1 `DeleteBucketMetadataTableConfiguration` API operation with V2
4839
+ # configurations, you will receive an HTTP `405 Method Not Allowed`
4840
+ # error.
4841
+ #
4842
+ # </note>
4843
+ #
4693
4844
  # Permissions
4694
4845
  #
4695
4846
  # : To use this operation, you must have the
@@ -4697,19 +4848,107 @@ module Aws::S3
4697
4848
  # information, see [Setting up permissions for configuring metadata
4698
4849
  # tables][2] in the *Amazon S3 User Guide*.
4699
4850
  #
4851
+ # <note markdown="1"> The IAM policy action name is the same for the V1 and V2 API
4852
+ # operations.
4853
+ #
4854
+ # </note>
4855
+ #
4700
4856
  # The following operations are related to
4701
- # `DeleteBucketMetadataTableConfiguration`:
4857
+ # `DeleteBucketMetadataConfiguration`:
4702
4858
  #
4703
- # * [CreateBucketMetadataTableConfiguration][3]
4859
+ # * [CreateBucketMetadataConfiguration][3]
4704
4860
  #
4705
- # * [GetBucketMetadataTableConfiguration][4]
4861
+ # * [GetBucketMetadataConfiguration][4]
4862
+ #
4863
+ # * [UpdateBucketMetadataInventoryTableConfiguration][5]
4864
+ #
4865
+ # * [UpdateBucketMetadataJournalTableConfiguration][6]
4706
4866
  #
4707
4867
  #
4708
4868
  #
4709
4869
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
4710
4870
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
4711
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataTableConfiguration.html
4712
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html
4871
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html
4872
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html
4873
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html
4874
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html
4875
+ #
4876
+ # @option params [required, String] :bucket
4877
+ # The general purpose bucket that you want to remove the metadata
4878
+ # configuration from.
4879
+ #
4880
+ # @option params [String] :expected_bucket_owner
4881
+ # The expected bucket owner of the general purpose bucket that you want
4882
+ # to remove the metadata table configuration from.
4883
+ #
4884
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4885
+ #
4886
+ # @example Request syntax with placeholder values
4887
+ #
4888
+ # resp = client.delete_bucket_metadata_configuration({
4889
+ # bucket: "BucketName", # required
4890
+ # expected_bucket_owner: "AccountId",
4891
+ # })
4892
+ #
4893
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketMetadataConfiguration AWS API Documentation
4894
+ #
4895
+ # @overload delete_bucket_metadata_configuration(params = {})
4896
+ # @param [Hash] params ({})
4897
+ def delete_bucket_metadata_configuration(params = {}, options = {})
4898
+ req = build_request(:delete_bucket_metadata_configuration, params)
4899
+ req.send_request(options)
4900
+ end
4901
+
4902
+ # We recommend that you delete your S3 Metadata configurations by using
4903
+ # the V2 [DeleteBucketMetadataTableConfiguration][1] API operation. We
4904
+ # no longer recommend using the V1
4905
+ # `DeleteBucketMetadataTableConfiguration` API operation.
4906
+ #
4907
+ # If you created your S3 Metadata configuration before July 15, 2025,
4908
+ # we
4909
+ # recommend that you delete and re-create your configuration by using
4910
+ # [CreateBucketMetadataConfiguration][2] so that you can expire journal
4911
+ # table records and create a live inventory table.
4912
+ #
4913
+ # Deletes a V1 S3 Metadata configuration from a general purpose bucket.
4914
+ # For more information, see [Accelerating data discovery with S3
4915
+ # Metadata][3] in the *Amazon S3 User Guide*.
4916
+ #
4917
+ # <note markdown="1"> You can use the V2 `DeleteBucketMetadataConfiguration` API operation
4918
+ # with V1 or V2 metadata table configurations. However, if you try to
4919
+ # use the V1 `DeleteBucketMetadataTableConfiguration` API operation with
4920
+ # V2 configurations, you will receive an HTTP `405 Method Not Allowed`
4921
+ # error.
4922
+ #
4923
+ # Make sure that you update your processes to use the new V2 API
4924
+ # operations (`CreateBucketMetadataConfiguration`,
4925
+ # `GetBucketMetadataConfiguration`, and
4926
+ # `DeleteBucketMetadataConfiguration`) instead of the V1 API operations.
4927
+ #
4928
+ # </note>
4929
+ #
4930
+ # Permissions
4931
+ #
4932
+ # : To use this operation, you must have the
4933
+ # `s3:DeleteBucketMetadataTableConfiguration` permission. For more
4934
+ # information, see [Setting up permissions for configuring metadata
4935
+ # tables][4] in the *Amazon S3 User Guide*.
4936
+ #
4937
+ # The following operations are related to
4938
+ # `DeleteBucketMetadataTableConfiguration`:
4939
+ #
4940
+ # * [CreateBucketMetadataTableConfiguration][5]
4941
+ #
4942
+ # * [GetBucketMetadataTableConfiguration][6]
4943
+ #
4944
+ #
4945
+ #
4946
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html
4947
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html
4948
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
4949
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
4950
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataTableConfiguration.html
4951
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html
4713
4952
  #
4714
4953
  # @option params [required, String] :bucket
4715
4954
  # The general purpose bucket that you want to remove the metadata table
@@ -6683,7 +6922,7 @@ module Aws::S3
6683
6922
  #
6684
6923
  # </note>
6685
6924
  #
6686
- # Returns an inventory configuration (identified by the inventory
6925
+ # Returns an S3 Inventory configuration (identified by the inventory
6687
6926
  # configuration ID) from the bucket.
6688
6927
  #
6689
6928
  # To use this operation, you must have permissions to perform the
@@ -7235,10 +7474,18 @@ module Aws::S3
7235
7474
  req.send_request(options)
7236
7475
  end
7237
7476
 
7238
- # Retrieves the metadata table configuration for a general purpose
7239
- # bucket. For more information, see [Accelerating data discovery with S3
7477
+ # Retrieves the S3 Metadata configuration for a general purpose bucket.
7478
+ # For more information, see [Accelerating data discovery with S3
7240
7479
  # Metadata][1] in the *Amazon S3 User Guide*.
7241
7480
  #
7481
+ # <note markdown="1"> You can use the V2 `GetBucketMetadataConfiguration` API operation with
7482
+ # V1 or V2 metadata configurations. However, if you try to use the V1
7483
+ # `GetBucketMetadataTableConfiguration` API operation with V2
7484
+ # configurations, you will receive an HTTP `405 Method Not Allowed`
7485
+ # error.
7486
+ #
7487
+ # </note>
7488
+ #
7242
7489
  # Permissions
7243
7490
  #
7244
7491
  # : To use this operation, you must have the
@@ -7246,27 +7493,136 @@ module Aws::S3
7246
7493
  # information, see [Setting up permissions for configuring metadata
7247
7494
  # tables][2] in the *Amazon S3 User Guide*.
7248
7495
  #
7496
+ # <note markdown="1"> The IAM policy action name is the same for the V1 and V2 API
7497
+ # operations.
7498
+ #
7499
+ # </note>
7500
+ #
7249
7501
  # The following operations are related to
7250
- # `GetBucketMetadataTableConfiguration`:
7502
+ # `GetBucketMetadataConfiguration`:
7503
+ #
7504
+ # * [CreateBucketMetadataConfiguration][3]
7251
7505
  #
7252
- # * [CreateBucketMetadataTableConfiguration][3]
7506
+ # * [DeleteBucketMetadataConfiguration][4]
7253
7507
  #
7254
- # * [DeleteBucketMetadataTableConfiguration][4]
7508
+ # * [UpdateBucketMetadataInventoryTableConfiguration][5]
7509
+ #
7510
+ # * [UpdateBucketMetadataJournalTableConfiguration][6]
7255
7511
  #
7256
7512
  #
7257
7513
  #
7258
7514
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
7259
7515
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
7260
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataTableConfiguration.html
7261
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html
7516
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html
7517
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html
7518
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html
7519
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html
7520
+ #
7521
+ # @option params [required, String] :bucket
7522
+ # The general purpose bucket that corresponds to the metadata
7523
+ # configuration that you want to retrieve.
7524
+ #
7525
+ # @option params [String] :expected_bucket_owner
7526
+ # The expected owner of the general purpose bucket that you want to
7527
+ # retrieve the metadata table configuration for.
7528
+ #
7529
+ # @return [Types::GetBucketMetadataConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7530
+ #
7531
+ # * {Types::GetBucketMetadataConfigurationOutput#get_bucket_metadata_configuration_result #get_bucket_metadata_configuration_result} => Types::GetBucketMetadataConfigurationResult
7532
+ #
7533
+ # @example Request syntax with placeholder values
7534
+ #
7535
+ # resp = client.get_bucket_metadata_configuration({
7536
+ # bucket: "BucketName", # required
7537
+ # expected_bucket_owner: "AccountId",
7538
+ # })
7539
+ #
7540
+ # @example Response structure
7541
+ #
7542
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.destination_result.table_bucket_type #=> String, one of "aws", "customer"
7543
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.destination_result.table_bucket_arn #=> String
7544
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.destination_result.table_namespace #=> String
7545
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.journal_table_configuration_result.table_status #=> String
7546
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.journal_table_configuration_result.error.error_code #=> String
7547
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.journal_table_configuration_result.error.error_message #=> String
7548
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.journal_table_configuration_result.table_name #=> String
7549
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.journal_table_configuration_result.table_arn #=> String
7550
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.journal_table_configuration_result.record_expiration.expiration #=> String, one of "ENABLED", "DISABLED"
7551
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.journal_table_configuration_result.record_expiration.days #=> Integer
7552
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.inventory_table_configuration_result.configuration_state #=> String, one of "ENABLED", "DISABLED"
7553
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.inventory_table_configuration_result.table_status #=> String
7554
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.inventory_table_configuration_result.error.error_code #=> String
7555
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.inventory_table_configuration_result.error.error_message #=> String
7556
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.inventory_table_configuration_result.table_name #=> String
7557
+ # resp.get_bucket_metadata_configuration_result.metadata_configuration_result.inventory_table_configuration_result.table_arn #=> String
7558
+ #
7559
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketMetadataConfiguration AWS API Documentation
7560
+ #
7561
+ # @overload get_bucket_metadata_configuration(params = {})
7562
+ # @param [Hash] params ({})
7563
+ def get_bucket_metadata_configuration(params = {}, options = {})
7564
+ req = build_request(:get_bucket_metadata_configuration, params)
7565
+ req.send_request(options)
7566
+ end
7567
+
7568
+ # We recommend that you retrieve your S3 Metadata configurations by
7569
+ # using the V2 [GetBucketMetadataTableConfiguration][1] API operation.
7570
+ # We no longer recommend using the V1
7571
+ # `GetBucketMetadataTableConfiguration` API operation.
7572
+ #
7573
+ # If you created your S3 Metadata configuration before July 15, 2025,
7574
+ # we
7575
+ # recommend that you delete and re-create your configuration by using
7576
+ # [CreateBucketMetadataConfiguration][2] so that you can expire journal
7577
+ # table records and create a live inventory table.
7578
+ #
7579
+ # Retrieves the V1 S3 Metadata configuration for a general purpose
7580
+ # bucket. For more information, see [Accelerating data discovery with S3
7581
+ # Metadata][3] in the *Amazon S3 User Guide*.
7582
+ #
7583
+ # <note markdown="1"> You can use the V2 `GetBucketMetadataConfiguration` API operation with
7584
+ # V1 or V2 metadata table configurations. However, if you try to use the
7585
+ # V1 `GetBucketMetadataTableConfiguration` API operation with V2
7586
+ # configurations, you will receive an HTTP `405 Method Not Allowed`
7587
+ # error.
7588
+ #
7589
+ # Make sure that you update your processes to use the new V2 API
7590
+ # operations (`CreateBucketMetadataConfiguration`,
7591
+ # `GetBucketMetadataConfiguration`, and
7592
+ # `DeleteBucketMetadataConfiguration`) instead of the V1 API operations.
7593
+ #
7594
+ # </note>
7595
+ #
7596
+ # Permissions
7597
+ #
7598
+ # : To use this operation, you must have the
7599
+ # `s3:GetBucketMetadataTableConfiguration` permission. For more
7600
+ # information, see [Setting up permissions for configuring metadata
7601
+ # tables][4] in the *Amazon S3 User Guide*.
7602
+ #
7603
+ # The following operations are related to
7604
+ # `GetBucketMetadataTableConfiguration`:
7605
+ #
7606
+ # * [CreateBucketMetadataTableConfiguration][5]
7607
+ #
7608
+ # * [DeleteBucketMetadataTableConfiguration][6]
7609
+ #
7610
+ #
7611
+ #
7612
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html
7613
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html
7614
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
7615
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
7616
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataTableConfiguration.html
7617
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html
7262
7618
  #
7263
7619
  # @option params [required, String] :bucket
7264
- # The general purpose bucket that contains the metadata table
7620
+ # The general purpose bucket that corresponds to the metadata table
7265
7621
  # configuration that you want to retrieve.
7266
7622
  #
7267
7623
  # @option params [String] :expected_bucket_owner
7268
7624
  # The expected owner of the general purpose bucket that you want to
7269
- # retrieve the metadata table configuration from.
7625
+ # retrieve the metadata table configuration for.
7270
7626
  #
7271
7627
  # @return [Types::GetBucketMetadataTableConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7272
7628
  #
@@ -11156,7 +11512,7 @@ module Aws::S3
11156
11512
  #
11157
11513
  # </note>
11158
11514
  #
11159
- # Returns a list of inventory configurations for the bucket. You can
11515
+ # Returns a list of S3 Inventory configurations for the bucket. You can
11160
11516
  # have up to 1,000 analytics configurations per bucket.
11161
11517
  #
11162
11518
  # This action supports list pagination and does not return more than 100
@@ -14355,7 +14711,7 @@ module Aws::S3
14355
14711
  #
14356
14712
  # </note>
14357
14713
  #
14358
- # This implementation of the `PUT` action adds an inventory
14714
+ # This implementation of the `PUT` action adds an S3 Inventory
14359
14715
  # configuration (identified by the inventory ID) to the bucket. You can
14360
14716
  # have up to 1,000 inventory configurations per bucket.
14361
14717
  #
@@ -19707,6 +20063,182 @@ module Aws::S3
19707
20063
  req.send_request(options, &block)
19708
20064
  end
19709
20065
 
20066
+ # Enables or disables a live inventory table for an S3 Metadata
20067
+ # configuration on a general purpose bucket. For more information, see
20068
+ # [Accelerating data discovery with S3 Metadata][1] in the *Amazon S3
20069
+ # User Guide*.
20070
+ #
20071
+ # Permissions
20072
+ #
20073
+ # : To use this operation, you must have the following permissions. For
20074
+ # more information, see [Setting up permissions for configuring
20075
+ # metadata tables][2] in the *Amazon S3 User Guide*.
20076
+ #
20077
+ # If you want to encrypt your inventory table with server-side
20078
+ # encryption with Key Management Service (KMS) keys (SSE-KMS), you
20079
+ # need additional permissions in your KMS key policy. For more
20080
+ # information, see [ Setting up permissions for configuring metadata
20081
+ # tables][2] in the *Amazon S3 User Guide*.
20082
+ #
20083
+ # * `s3:UpdateBucketMetadataInventoryTableConfiguration`
20084
+ #
20085
+ # * `s3tables:CreateTableBucket`
20086
+ #
20087
+ # * `s3tables:CreateNamespace`
20088
+ #
20089
+ # * `s3tables:GetTable`
20090
+ #
20091
+ # * `s3tables:CreateTable`
20092
+ #
20093
+ # * `s3tables:PutTablePolicy`
20094
+ #
20095
+ # * `s3tables:PutTableEncryption`
20096
+ #
20097
+ # * `kms:DescribeKey`
20098
+ #
20099
+ # The following operations are related to
20100
+ # `UpdateBucketMetadataInventoryTableConfiguration`:
20101
+ #
20102
+ # * [CreateBucketMetadataConfiguration][3]
20103
+ #
20104
+ # * [DeleteBucketMetadataConfiguration][4]
20105
+ #
20106
+ # * [GetBucketMetadataConfiguration][5]
20107
+ #
20108
+ # * [UpdateBucketMetadataJournalTableConfiguration][6]
20109
+ #
20110
+ #
20111
+ #
20112
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
20113
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
20114
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html
20115
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html
20116
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html
20117
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html
20118
+ #
20119
+ # @option params [required, String] :bucket
20120
+ # The general purpose bucket that corresponds to the metadata
20121
+ # configuration that you want to enable or disable an inventory table
20122
+ # for.
20123
+ #
20124
+ # @option params [String] :content_md5
20125
+ # The `Content-MD5` header for the inventory table configuration.
20126
+ #
20127
+ # @option params [String] :checksum_algorithm
20128
+ # The checksum algorithm to use with your inventory table configuration.
20129
+ #
20130
+ # @option params [required, Types::InventoryTableConfigurationUpdates] :inventory_table_configuration
20131
+ # The contents of your inventory table configuration.
20132
+ #
20133
+ # @option params [String] :expected_bucket_owner
20134
+ # The expected owner of the general purpose bucket that corresponds to
20135
+ # the metadata table configuration that you want to enable or disable an
20136
+ # inventory table for.
20137
+ #
20138
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
20139
+ #
20140
+ # @example Request syntax with placeholder values
20141
+ #
20142
+ # resp = client.update_bucket_metadata_inventory_table_configuration({
20143
+ # bucket: "BucketName", # required
20144
+ # content_md5: "ContentMD5",
20145
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
20146
+ # inventory_table_configuration: { # required
20147
+ # configuration_state: "ENABLED", # required, accepts ENABLED, DISABLED
20148
+ # encryption_configuration: {
20149
+ # sse_algorithm: "aws:kms", # required, accepts aws:kms, AES256
20150
+ # kms_key_arn: "KmsKeyArn",
20151
+ # },
20152
+ # },
20153
+ # expected_bucket_owner: "AccountId",
20154
+ # })
20155
+ #
20156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UpdateBucketMetadataInventoryTableConfiguration AWS API Documentation
20157
+ #
20158
+ # @overload update_bucket_metadata_inventory_table_configuration(params = {})
20159
+ # @param [Hash] params ({})
20160
+ def update_bucket_metadata_inventory_table_configuration(params = {}, options = {})
20161
+ req = build_request(:update_bucket_metadata_inventory_table_configuration, params)
20162
+ req.send_request(options)
20163
+ end
20164
+
20165
+ # Enables or disables journal table record expiration for an S3 Metadata
20166
+ # configuration on a general purpose bucket. For more information, see
20167
+ # [Accelerating data discovery with S3 Metadata][1] in the *Amazon S3
20168
+ # User Guide*.
20169
+ #
20170
+ # Permissions
20171
+ #
20172
+ # : To use this operation, you must have the
20173
+ # `s3:UpdateBucketMetadataJournalTableConfiguration` permission. For
20174
+ # more information, see [Setting up permissions for configuring
20175
+ # metadata tables][2] in the *Amazon S3 User Guide*.
20176
+ #
20177
+ # The following operations are related to
20178
+ # `UpdateBucketMetadataJournalTableConfiguration`:
20179
+ #
20180
+ # * [CreateBucketMetadataConfiguration][3]
20181
+ #
20182
+ # * [DeleteBucketMetadataConfiguration][4]
20183
+ #
20184
+ # * [GetBucketMetadataConfiguration][5]
20185
+ #
20186
+ # * [UpdateBucketMetadataInventoryTableConfiguration][6]
20187
+ #
20188
+ #
20189
+ #
20190
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html
20191
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html
20192
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html
20193
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html
20194
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html
20195
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html
20196
+ #
20197
+ # @option params [required, String] :bucket
20198
+ # The general purpose bucket that corresponds to the metadata
20199
+ # configuration that you want to enable or disable journal table record
20200
+ # expiration for.
20201
+ #
20202
+ # @option params [String] :content_md5
20203
+ # The `Content-MD5` header for the journal table configuration.
20204
+ #
20205
+ # @option params [String] :checksum_algorithm
20206
+ # The checksum algorithm to use with your journal table configuration.
20207
+ #
20208
+ # @option params [required, Types::JournalTableConfigurationUpdates] :journal_table_configuration
20209
+ # The contents of your journal table configuration.
20210
+ #
20211
+ # @option params [String] :expected_bucket_owner
20212
+ # The expected owner of the general purpose bucket that corresponds to
20213
+ # the metadata table configuration that you want to enable or disable
20214
+ # journal table record expiration for.
20215
+ #
20216
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
20217
+ #
20218
+ # @example Request syntax with placeholder values
20219
+ #
20220
+ # resp = client.update_bucket_metadata_journal_table_configuration({
20221
+ # bucket: "BucketName", # required
20222
+ # content_md5: "ContentMD5",
20223
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
20224
+ # journal_table_configuration: { # required
20225
+ # record_expiration: { # required
20226
+ # expiration: "ENABLED", # required, accepts ENABLED, DISABLED
20227
+ # days: 1,
20228
+ # },
20229
+ # },
20230
+ # expected_bucket_owner: "AccountId",
20231
+ # })
20232
+ #
20233
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UpdateBucketMetadataJournalTableConfiguration AWS API Documentation
20234
+ #
20235
+ # @overload update_bucket_metadata_journal_table_configuration(params = {})
20236
+ # @param [Hash] params ({})
20237
+ def update_bucket_metadata_journal_table_configuration(params = {}, options = {})
20238
+ req = build_request(:update_bucket_metadata_journal_table_configuration, params)
20239
+ req.send_request(options)
20240
+ end
20241
+
19710
20242
  # Uploads a part in a multipart upload.
19711
20243
  #
19712
20244
  # <note markdown="1"> In this operation, you provide new data as a part of an object in your
@@ -21196,7 +21728,7 @@ module Aws::S3
21196
21728
  tracer: tracer
21197
21729
  )
21198
21730
  context[:gem_name] = 'aws-sdk-s3'
21199
- context[:gem_version] = '1.192.0'
21731
+ context[:gem_version] = '1.193.0'
21200
21732
  Seahorse::Client::Request.new(handlers, context)
21201
21733
  end
21202
21734