# SPDX-License-Identifier: CC-BY-NC-SA-4.0 profile: s3-2006-03-01 title: The S3 Interface originator: Amazon Web Services generated: '2026-09-13' generated_by: scripts/build-profile.py upstream: repository: https://github.com/boto/botocore path: botocore/data/s3/2006-03-01/service-2.json commit: aeb03fc4ae530e0b3f47d588b6021581db870c8c license: Apache-2.0 protocol: rest-xml api_version: '2006-03-01' operations: 116 shapes: 722 method: summary: Graded by what adopters declare in a spec anyone can read. Live probing was tested and does not work here, and the vendor compatibility matrices this ecosystem is known for are rendered in JavaScript rather than served as text. cohort: 12 claimants: 58 cohort_definition: 58 providers in the API Evangelist catalog claim S3 compatibility. 12 of them declare an S3 operation in a published OpenAPI. That is the denominator, and it is small — the weakest evidence base of the five standards in this programme. Shares here are coarse by construction and should be read as a signal, not a census. why_no_probe: 'An S3 server validates the signature before it routes the operation, so an unauthenticated caller cannot tell a supported operation from an unsupported one. Tested on 2026-09-13: MinIO''s public endpoint answers AccessDenied to both ?list-type=2 and ?accelerate, and AWS returns 307 to everything. There is no anonymous discriminator, so the `tested` grade that carried the blockchain and open-data profiles is unavailable.' why_no_matrix_harvest: Several providers publish good compatibility matrices, which would be the natural evidence here. MinIO's and Backblaze's render client-side and serve no operation names in their HTML; Cloudflare R2's names 73 operations but does not mark support in any parseable structure. Rather than guess which half of a list is supported, R2 and MinIO are recorded as vendor-matrix claims with their URLs, and no per-operation support is synthesised from them. thresholds: core: '>= 50.0% of the declaring cohort' extended: 'declared by at least 2 providers. This is a count rather than a percentage on purpose: with a cohort of 12, one declaration is 8.3%, and a single provider is not corroboration.' vendor: declared by at most one provider openapi_limitation: summary: OpenAPI cannot express this API's operation identity, so the model is the artifact of record. detail: 99 of 116 operations are distinguished by a query subresource, and the whole API collapses to 12 distinct method and path pairs. A path map keeps one operation per pair and loses 104 of them. collisions: GET /{Bucket}: 36 PUT /{Bucket}: 27 DELETE /{Bucket}: 16 PUT /{Bucket}/{Key+}: 11 GET /{Bucket}/{Key+}: 10 DELETE /{Bucket}/{Key+}: 4 POST /{Bucket}/{Key+}: 4 POST /{Bucket}: 3 GET /: 2 counts: extended: 8 core: 8 vendor: 100 operations: - operation: ListBuckets method: GET path: / subresource: null tier: core providers_declaring: 10 percent_of_cohort: 83.3 evidence: 10 of 12 providers that publish a readable spec declare this operation (83.3%). summary: This operation is not supported for directory buckets. Returns a list of all buckets owned by the authenticated sender of the request. To grant IAM permission to use this operation, you must add the s3:ListAllMyBuckets p - operation: ListObjects method: GET path: /{Bucket} subresource: null tier: core providers_declaring: 10 percent_of_cohort: 83.3 evidence: 10 of 12 providers that publish a readable spec declare this operation (83.3%). summary: This operation is not supported for directory buckets. Returns some or all (up to 1,000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. - operation: DeleteBucket method: DELETE path: /{Bucket} subresource: null tier: core providers_declaring: 9 percent_of_cohort: 75.0 evidence: 9 of 12 providers that publish a readable spec declare this operation (75.0%). summary: 'Deletes the S3 bucket. All objects (including all object versions and delete markers) in the bucket must be deleted before the bucket itself can be deleted. Directory buckets - If multipart uploads in a directory bucket ' - operation: DeleteObject method: DELETE path: /{Bucket}/{Key+} subresource: null tier: core providers_declaring: 9 percent_of_cohort: 75.0 evidence: 9 of 12 providers that publish a readable spec declare this operation (75.0%). summary: 'Removes an object from a bucket. The behavior depends on the bucket''s versioning state: If bucket versioning is not enabled, the operation permanently deletes the object. If bucket versioning is enabled, the operation in' - operation: GetObject method: GET path: /{Bucket}/{Key+} subresource: null tier: core providers_declaring: 9 percent_of_cohort: 75.0 evidence: 9 of 12 providers that publish a readable spec declare this operation (75.0%). summary: Retrieves an object from Amazon S3. In the GetObject request, specify the full key name for the object. General purpose buckets - Both the virtual-hosted-style requests and the path-style requests are supported. For a vi - operation: CreateBucket method: PUT path: /{Bucket} subresource: null tier: core providers_declaring: 8 percent_of_cohort: 66.7 evidence: 8 of 12 providers that publish a readable spec declare this operation (66.7%). summary: This action creates an Amazon S3 bucket. To create an Amazon S3 on Outposts bucket, see CreateBucket . Creates a new S3 bucket. To create a bucket, you must set up Amazon S3 and have a valid Amazon Web Services Access Ke - operation: HeadObject method: HEAD path: /{Bucket}/{Key+} subresource: null tier: core providers_declaring: 7 percent_of_cohort: 58.3 evidence: 7 of 12 providers that publish a readable spec declare this operation (58.3%). summary: The HEAD operation retrieves metadata from an object without returning the object itself. This operation is useful if you're interested only in an object's metadata. A HEAD request has the same options as a GET operation - operation: PutObject method: PUT path: /{Bucket}/{Key+} subresource: null tier: core providers_declaring: 7 percent_of_cohort: 58.3 evidence: 7 of 12 providers that publish a readable spec declare this operation (58.3%). summary: 'End of support notice: As of October 1, 2025, Amazon S3 has discontinued support for Email Grantee Access Control Lists (ACLs). If you attempt to use an Email Grantee ACL in a request after October 1, 2025, the request w' - operation: CreateMultipartUpload method: POST path: /{Bucket}/{Key+} subresource: uploads tier: extended providers_declaring: 5 percent_of_cohort: 41.7 evidence: 5 of 12 providers that publish a readable spec declare this operation (41.7%). summary: 'End of support notice: As of October 1, 2025, Amazon S3 has discontinued support for Email Grantee Access Control Lists (ACLs). If you attempt to use an Email Grantee ACL in a request after October 1, 2025, the request w' - operation: HeadBucket method: HEAD path: /{Bucket} subresource: null tier: extended providers_declaring: 5 percent_of_cohort: 41.7 evidence: 5 of 12 providers that publish a readable spec declare this operation (41.7%). summary: You can use this operation to determine if a bucket exists and if you have permission to access it. The action returns a 200 OK HTTP status code if the bucket exists and you have permission to access it. You can make a H - operation: CopyObject method: PUT path: /{Bucket}/{Key+} subresource: null tier: extended providers_declaring: 4 percent_of_cohort: 33.3 evidence: 4 of 12 providers that publish a readable spec declare this operation (33.3%). summary: 'Creates a copy of an object that is already stored in Amazon S3. End of support notice: As of October 1, 2025, Amazon S3 has discontinued support for Email Grantee Access Control Lists (ACLs). If you attempt to use an Em' - operation: AbortMultipartUpload method: DELETE path: /{Bucket}/{Key+} subresource: null tier: extended providers_declaring: 3 percent_of_cohort: 25.0 evidence: 3 of 12 providers that publish a readable spec declare this operation (25.0%). summary: This operation aborts a multipart upload. After a multipart upload is aborted, no additional parts can be uploaded using that upload ID. The storage consumed by any previously uploaded parts will be freed. However, if an - operation: ListMultipartUploads method: GET path: /{Bucket} subresource: uploads tier: extended providers_declaring: 3 percent_of_cohort: 25.0 evidence: 3 of 12 providers that publish a readable spec declare this operation (25.0%). summary: This operation lists in-progress multipart uploads in a bucket. An in-progress multipart upload is a multipart upload that has been initiated by the CreateMultipartUpload request, but has not yet been completed or aborte - operation: UploadPart method: PUT path: /{Bucket}/{Key+} subresource: null tier: extended providers_declaring: 3 percent_of_cohort: 25.0 evidence: 3 of 12 providers that publish a readable spec declare this operation (25.0%). summary: Uploads a part in a multipart upload. In this operation, you provide new data as a part of an object in your request. However, you have an option to specify your existing Amazon S3 object as a data source for the part yo - operation: CompleteMultipartUpload method: POST path: /{Bucket}/{Key+} subresource: null tier: extended providers_declaring: 2 percent_of_cohort: 16.7 evidence: 2 of 12 providers that publish a readable spec declare this operation (16.7%). summary: Completes a multipart upload by assembling previously uploaded parts. You first initiate the multipart upload and then upload all parts using the UploadPart operation or the UploadPartCopy operation. After successfully u - operation: ListObjectsV2 method: GET path: /{Bucket} subresource: list-type=2 tier: extended providers_declaring: 2 percent_of_cohort: 16.7 evidence: 2 of 12 providers that publish a readable spec declare this operation (16.7%). summary: 'Returns some or all (up to 1,000) of the objects in a bucket with each request. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid ' - operation: CreateSession method: GET path: /{Bucket} subresource: session tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: Creates a session that establishes temporary security credentials to support fast authentication and authorization for the Zonal endpoint API operations on directory buckets. For more information about Zonal endpoint API - operation: DeleteObjectTagging method: DELETE path: /{Bucket}/{Key+} subresource: tagging tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: This operation is not supported for directory buckets. Removes the entire tag set from the specified object. For more information about managing object tags, see Object Tagging. To use this operation, you must have permi - operation: DeleteObjects method: POST path: /{Bucket} subresource: delete tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: This operation enables you to delete multiple objects from a bucket using a single HTTP request. If you know the object keys that you want to delete, then this operation provides a suitable alternative to sending individ - operation: GetBucketAcl method: GET path: /{Bucket} subresource: acl tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: This operation is not supported for directory buckets. This implementation of the GET action uses the acl subresource to return the access control list (ACL) of a bucket. To use GET to return the ACL of the bucket, you m - operation: GetObjectTagging method: GET path: /{Bucket}/{Key+} subresource: tagging tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: This operation is not supported for directory buckets. Returns the tag-set of an object. You send the GET request against the tagging subresource associated with the object. To use this operation, you must have permissio - operation: ListObjectVersions method: GET path: /{Bucket} subresource: versions tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: This operation is not supported for directory buckets. Returns metadata about all versions of the objects in a bucket. You can also use request parameters as selection criteria to return metadata about a subset of all th - operation: ListParts method: GET path: /{Bucket}/{Key+} subresource: null tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: Lists the parts that have been uploaded for a specific multipart upload. To use this operation, you must provide the upload ID in the request. You obtain this uploadID by sending the initiate multipart upload request thr - operation: PutBucketAcl method: PUT path: /{Bucket} subresource: acl tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: 'End of support notice: As of October 1, 2025, Amazon S3 has discontinued support for Email Grantee Access Control Lists (ACLs). If you attempt to use an Email Grantee ACL in a request after October 1, 2025, the request w' - operation: PutObjectTagging method: PUT path: /{Bucket}/{Key+} subresource: tagging tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: This operation is not supported for directory buckets. Sets the supplied tag-set to an object that already exists in a bucket. A tag is a key-value pair. For more information, see Object Tagging. You can associate tags w - operation: RenameObject method: PUT path: /{Bucket}/{Key+} subresource: renameObject tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: Renames an existing object in a directory bucket that uses the S3 Express One Zone storage class. You can use RenameObject by specifying an existing object’s name as the source and the new name of the object as the desti - operation: RestoreObject method: POST path: /{Bucket}/{Key+} subresource: restore tier: vendor providers_declaring: 1 percent_of_cohort: 8.3 evidence: 1 of 12 providers that publish a readable spec declare this operation (8.3%). summary: This operation is not supported for directory buckets. Restores an archived copy of an object back into Amazon S3 This functionality is not supported for Amazon S3 on Outposts. This action performs the following types of - operation: CreateBucketMetadataConfiguration method: POST path: /{Bucket} subresource: metadataConfiguration tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Creates an S3 Metadata V2 metadata configuration for a general purpose bucket. For more information, see Accelerating data discovery with S3 Metadata in the Amazon S3 User Guide. Permissions To use this operation, you mu - operation: CreateBucketMetadataTableConfiguration method: POST path: /{Bucket} subresource: metadataTable tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: We recommend that you create your S3 Metadata configurations by using the V2 CreateBucketMetadataConfiguration API operation. We no longer recommend using the V1 CreateBucketMetadataTableConfiguration API operation. If y - operation: DeleteBucketAnalyticsConfiguration method: DELETE path: /{Bucket} subresource: analytics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Deletes an analytics configuration for the bucket (specified by the analytics configuration ID). To use this operation, you must have permissions to perform the s3:P - operation: DeleteBucketCors method: DELETE path: /{Bucket} subresource: cors tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Deletes the cors configuration information set for the bucket. To use this operation, you must have permission to perform the s3:PutBucketCORS action. The bucket own - operation: DeleteBucketEncryption method: DELETE path: /{Bucket} subresource: encryption tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This implementation of the DELETE action resets the default encryption for the bucket as server-side encryption with Amazon S3 managed keys (SSE-S3). General purpose buckets - For information about the bucket default enc - operation: DeleteBucketIntelligentTieringConfiguration method: DELETE path: /{Bucket} subresource: intelligent-tiering tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Deletes the S3 Intelligent-Tiering configuration from the specified bucket. The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automat - operation: DeleteBucketInventoryConfiguration method: DELETE path: /{Bucket} subresource: inventory tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Deletes an S3 Inventory configuration (identified by the inventory ID) from the bucket. Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints s - operation: DeleteBucketLifecycle method: DELETE path: /{Bucket} subresource: lifecycle tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, and Amazon S3 no ' - operation: DeleteBucketMetadataConfiguration method: DELETE path: /{Bucket} subresource: metadataConfiguration tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Deletes an S3 Metadata configuration from a general purpose bucket. For more information, see Accelerating data discovery with S3 Metadata in the Amazon S3 User Guide. You can use the V2 DeleteBucketMetadataConfiguration - operation: DeleteBucketMetadataTableConfiguration method: DELETE path: /{Bucket} subresource: metadataTable tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: We recommend that you delete your S3 Metadata configurations by using the V2 DeleteBucketMetadataTableConfiguration API operation. We no longer recommend using the V1 DeleteBucketMetadataTableConfiguration API operation. - operation: DeleteBucketMetricsConfiguration method: DELETE path: /{Bucket} subresource: metrics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics. Directory buckets - For dir - operation: DeleteBucketOwnershipControls method: DELETE path: /{Bucket} subresource: ownershipControls tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Removes OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more information about Amaz - operation: DeleteBucketPolicy method: DELETE path: /{Bucket} subresource: policy tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Deletes the policy of a specified bucket. Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https - operation: DeleteBucketReplication method: DELETE path: /{Bucket} subresource: replication tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Deletes the replication configuration from the bucket. To use this operation, you must have permissions to perform the s3:PutReplicationConfiguration action. The buc - operation: DeleteBucketTagging method: DELETE path: /{Bucket} subresource: tagging tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Deletes tags from the general purpose bucket if attribute based access control (ABAC) is not enabled for the bucket. When you enable ABAC for a general purpose bucke - operation: DeleteBucketWebsite method: DELETE path: /{Bucket} subresource: website tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. This action removes the website configuration for a bucket. Amazon S3 returns a 200 OK response upon successfully deleting a website configuration on the specified b - operation: DeleteObjectAnnotation method: DELETE path: /{Bucket}/{Key+} subresource: annotation tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'Deletes a specific annotation from an Amazon S3 object. Use the x-amz-object-if-match header to perform a conditional delete that only succeeds if the object''s ETag matches the provided value, preventing race conditions ' - operation: DeletePublicAccessBlock method: DELETE path: /{Bucket} subresource: publicAccessBlock tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Removes the PublicAccessBlock configuration for an Amazon S3 bucket. This operation removes the bucket-level configuration only. The effective public access behavior - operation: GetBucketAbac method: GET path: /{Bucket} subresource: abac tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Returns the attribute-based access control (ABAC) property of the general purpose bucket. If ABAC is enabled on your bucket, you can use tags on the bucket for access control. For more information, see Enabling ABAC in g - operation: GetBucketAccelerateConfiguration method: GET path: /{Bucket} subresource: accelerate tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. This implementation of the GET action uses the accelerate subresource to return the Transfer Acceleration state of a bucket, which is either Enabled or Suspended. Am - operation: GetBucketAnalyticsConfiguration method: GET path: /{Bucket} subresource: analytics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. This implementation of the GET action returns an analytics configuration (identified by the analytics configuration ID) from the bucket. To use this operation, you m - operation: GetBucketCors method: GET path: /{Bucket} subresource: cors tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the Cross-Origin Resource Sharing (CORS) configuration information set for the bucket. To use this operation, you must have permission to perform the s3:GetB - operation: GetBucketEncryption method: GET path: /{Bucket} subresource: encryption tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'Returns the default encryption configuration for an Amazon S3 bucket. By default, all buckets have a default encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). This operation ' - operation: GetBucketIntelligentTieringConfiguration method: GET path: /{Bucket} subresource: intelligent-tiering tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Gets the S3 Intelligent-Tiering configuration from the specified bucket. The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatica - operation: GetBucketInventoryConfiguration method: GET path: /{Bucket} subresource: inventory tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Returns an S3 Inventory configuration (identified by the inventory configuration ID) from the bucket. Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. The - operation: GetBucketLifecycle method: GET path: /{Bucket} subresource: lifecycle tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: For an updated version of this API, see GetBucketLifecycleConfiguration. If you configured a bucket lifecycle using the filter element, you should see the updated version of this topic. This topic is provided for backwar - operation: GetBucketLifecycleConfiguration method: GET path: /{Bucket} subresource: lifecycle tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Returns the lifecycle configuration information set on the bucket. For information about lifecycle configuration, see Object Lifecycle Management. Bucket lifecycle configuration now supports specifying a lifecycle rule u - operation: GetBucketLocation method: GET path: /{Bucket} subresource: location tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Using the GetBucketLocation operation is no longer a best practice. To return the Region that a bucket resides in, we recommend that you use the HeadBucket operation instead. For backward compatibility, Amazon S3 continu - operation: GetBucketLogging method: GET path: /{Bucket} subresource: logging tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'This operation is not supported for directory buckets. Returns the logging status of a bucket and the permissions users have to view and modify that status. The following operations are related to GetBucketLogging: Creat' - operation: GetBucketMetadataConfiguration method: GET path: /{Bucket} subresource: metadataConfiguration tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'Retrieves the S3 Metadata configuration for a general purpose bucket. For more information, see Accelerating data discovery with S3 Metadata in the Amazon S3 User Guide. You can use the V2 GetBucketMetadataConfiguration ' - operation: GetBucketMetadataTableConfiguration method: GET path: /{Bucket} subresource: metadataTable tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'We recommend that you retrieve your S3 Metadata configurations by using the V2 GetBucketMetadataTableConfiguration API operation. We no longer recommend using the V1 GetBucketMetadataTableConfiguration API operation. If ' - operation: GetBucketMetricsConfiguration method: GET path: /{Bucket} subresource: metrics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Gets a metrics configuration (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics. Directory buckets - For directory buckets, you must make requests for th - operation: GetBucketNotification method: GET path: /{Bucket} subresource: notification tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. No longer used, see GetBucketNotificationConfiguration. - operation: GetBucketNotificationConfiguration method: GET path: /{Bucket} subresource: notification tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the notification configuration of a bucket. If notifications are not enabled on the bucket, the action returns an empty NotificationConfiguration element. By - operation: GetBucketOwnershipControls method: GET path: /{Bucket} subresource: ownershipControls tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:GetBucketOwnershipControls permission. For more information about Am - operation: GetBucketPolicy method: GET path: /{Bucket} subresource: policy tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Returns the policy of a specified bucket. Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https - operation: GetBucketPolicyStatus method: GET path: /{Bucket} subresource: policyStatus tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. In order to use this operation, you must have the s3:GetBucketPolicySta - operation: GetBucketReplication method: GET path: /{Bucket} subresource: replication tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the replication configuration of a bucket. It can take a while to propagate the put or delete a replication configuration to all Amazon S3 systems. Therefore - operation: GetBucketRequestPayment method: GET path: /{Bucket} subresource: requestPayment tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the request payment configuration of a bucket. To use this version of the operation, you must be the bucket owner. For more information, see Requester Pays B - operation: GetBucketTagging method: GET path: /{Bucket} subresource: tagging tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the tag set associated with the general purpose bucket. To use this operation, you must have permission to perform the s3:GetBucketTagging action. By default - operation: GetBucketVersioning method: GET path: /{Bucket} subresource: versioning tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the versioning state of a bucket. To retrieve the versioning state of a bucket, you must be the bucket owner. This implementation also returns the MFA Delete - operation: GetBucketWebsite method: GET path: /{Bucket} subresource: website tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the website configuration for a bucket. To host website on Amazon S3, you can configure a bucket as website by adding a website configuration. For more infor - operation: GetObjectAcl method: GET path: /{Bucket}/{Key+} subresource: acl tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Returns the access control list (ACL) of an object. To use this operation, you must have s3:GetObjectAcl permissions or READ_ACP access to the object. For more infor - operation: GetObjectAnnotation method: GET path: /{Bucket}/{Key+} subresource: annotation tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Retrieves an annotation from an Amazon S3 object. To use this operation, you must have the s3:GetObjectAnnotation permission. If checksum mode is enabled via the x-amz-checksum-mode header, Amazon S3 returns the stored c - operation: GetObjectAttributes method: GET path: /{Bucket}/{Key+} subresource: attributes tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Retrieves all of the metadata from an object without returning the object itself. This operation is useful if you're interested only in an object's metadata. GetObjectAttributes combines the functionality of HeadObject a - operation: GetObjectLegalHold method: GET path: /{Bucket}/{Key+} subresource: legal-hold tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Gets an object's current legal hold status. For more information, see Locking Objects. This functionality is not supported for Amazon S3 on Outposts. The following a - operation: GetObjectLockConfiguration method: GET path: /{Bucket} subresource: object-lock tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the spe - operation: GetObjectRetention method: GET path: /{Bucket}/{Key+} subresource: retention tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Retrieves an object's retention settings. For more information, see Locking Objects. This functionality is not supported for Amazon S3 on Outposts. The following act - operation: GetObjectTorrent method: GET path: /{Bucket}/{Key+} subresource: torrent tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'This operation is not supported for directory buckets. Returns torrent files from a bucket. BitTorrent can save you bandwidth when you''re distributing large files. You can get torrent only for objects that are less than ' - operation: GetPublicAccessBlock method: GET path: /{Bucket} subresource: publicAccessBlock tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. This operation returns the bucket-level configuration only. To understand the effective public - operation: ListBucketAnalyticsConfigurations method: GET path: /{Bucket} subresource: analytics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Lists the analytics configurations for the bucket. You can have up to 1,000 analytics configurations per bucket. This action supports list pagination and does not re - operation: ListBucketIntelligentTieringConfigurations method: GET path: /{Bucket} subresource: intelligent-tiering tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Lists the S3 Intelligent-Tiering configuration from the specified bucket. The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatic - operation: ListBucketInventoryConfigurations method: GET path: /{Bucket} subresource: inventory tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Returns a list of S3 Inventory configurations for the bucket. You can have up to 1,000 inventory configurations per bucket. This action supports list pagination and does not return more than 100 configurations at a time. - operation: ListBucketMetricsConfigurations method: GET path: /{Bucket} subresource: metrics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'Lists the metrics configurations for the bucket. The metrics configurations are only for the request metrics of the bucket and do not provide information on daily storage metrics. You can have up to 1,000 configurations ' - operation: ListDirectoryBuckets method: GET path: / subresource: null tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the request. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide. Directory buckets - For - operation: ListObjectAnnotations method: GET path: /{Bucket}/{Key+} subresource: annotation tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Lists the annotations attached to an Amazon S3 object. Results are paginated, with a maximum of 1,000 annotations per object. Use the AnnotationPrefix parameter to filter the results by name prefix. To use this operation - operation: PutBucketAbac method: PUT path: /{Bucket} subresource: abac tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Sets the attribute-based access control (ABAC) property of the general purpose bucket. You must have s3:PutBucketABAC permission to perform this action. When you enable ABAC, you can use tags for access control on your b - operation: PutBucketAccelerateConfiguration method: PUT path: /{Bucket} subresource: accelerate tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'This operation is not supported for directory buckets. Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers ' - operation: PutBucketAnalyticsConfiguration method: PUT path: /{Bucket} subresource: analytics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Sets an analytics configuration for the bucket (specified by the analytics configuration ID). You can have up to 1,000 analytics configurations per bucket. You can c - operation: PutBucketCors method: PUT path: /{Bucket} subresource: cors tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Sets the cors configuration for your bucket. If the configuration exists, Amazon S3 replaces it. To use this operation, you must be allowed to perform the s3:PutBuck - operation: PutBucketEncryption method: PUT path: /{Bucket} subresource: encryption tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation configures default encryption and Amazon S3 Bucket Keys for an existing bucket. You can also block encryption types using this operation. Directory buckets - For directory buckets, you must make requests f - operation: PutBucketIntelligentTieringConfiguration method: PUT path: /{Bucket} subresource: intelligent-tiering tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can have up to 1,000 S3 Intelligent-Tiering configurations per bucket. The S3 Intelligent-Ti - operation: PutBucketInventoryConfiguration method: PUT path: /{Bucket} subresource: inventory tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This implementation of the PUT action adds an S3 Inventory configuration (identified by the inventory ID) to the bucket. You can have up to 1,000 inventory configurations per bucket. Amazon S3 inventory generates invento - operation: PutBucketLifecycle method: PUT path: /{Bucket} subresource: lifecycle tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. For an updated version of this API, see PutBucketLifecycleConfiguration. This version has been deprecated. Existing lifecycle configurations will work. For new lifec - operation: PutBucketLifecycleConfiguration method: PUT path: /{Bucket} subresource: lifecycle tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. Keep in mind that this will overwrite an existing lifecycle configuration, so if you want to retain any configuration ' - operation: PutBucketLogging method: PUT path: /{Bucket} subresource: logging tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'End of support notice: As of October 1, 2025, Amazon S3 has discontinued support for Email Grantee Access Control Lists (ACLs). If you attempt to use an Email Grantee ACL in a request after October 1, 2025, the request w' - operation: PutBucketMetricsConfiguration method: PUT path: /{Bucket} subresource: metrics tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Sets a metrics configuration (specified by the metrics configuration ID) for the bucket. You can have up to 1,000 metrics configurations per bucket. If you're updating an existing metrics configuration, note that this is - operation: PutBucketNotification method: PUT path: /{Bucket} subresource: notification tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. No longer used, see the PutBucketNotificationConfiguration operation. - operation: PutBucketNotificationConfiguration method: PUT path: /{Bucket} subresource: notification tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'This operation is not supported for directory buckets. Enables notifications of specified events for a bucket. For more information about event notifications, see Configuring Event Notifications. Using this API, you can ' - operation: PutBucketOwnershipControls method: PUT path: /{Bucket} subresource: ownershipControls tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more informatio - operation: PutBucketPolicy method: PUT path: /{Bucket} subresource: policy tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Applies an Amazon S3 bucket policy to an Amazon S3 bucket. Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in - operation: PutBucketReplication method: PUT path: /{Bucket} subresource: replication tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Creates a replication configuration or replaces an existing one. For more information, see Replication in the Amazon S3 User Guide. Specify the replication configura - operation: PutBucketRequestPayment method: PUT path: /{Bucket} subresource: requestPayment tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads from the bucket. This configuration parameter enables the bucket - operation: PutBucketTagging method: PUT path: /{Bucket} subresource: tagging tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Sets the tags for a general purpose bucket if attribute based access control (ABAC) is not enabled for the bucket. When you enable ABAC for a general purpose bucket, - operation: PutBucketVersioning method: PUT path: /{Bucket} subresource: versioning tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. When you enable versioning on a bucket for the first time, it might take a short amount of time for the change to be fully propagated. While this change is propagati - operation: PutBucketWebsite method: PUT path: /{Bucket} subresource: website tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Sets the configuration of the website that is specified in the website subresource. To configure a bucket as a website, you can add this subresource on the bucket wi - operation: PutObjectAcl method: PUT path: /{Bucket}/{Key+} subresource: acl tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'End of support notice: As of October 1, 2025, Amazon S3 has discontinued support for Email Grantee Access Control Lists (ACLs). If you attempt to use an Email Grantee ACL in a request after October 1, 2025, the request w' - operation: PutObjectAnnotation method: PUT path: /{Bucket}/{Key+} subresource: annotation tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Attaches an annotation to an Amazon S3 object. An annotation is a named payload of 1 byte to 1 MiB that you can associate with a specific object or object version. Each object can have up to 1,000 annotations. For annota - operation: PutObjectLegalHold method: PUT path: /{Bucket}/{Key+} subresource: legal-hold tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Applies a legal hold configuration to the specified object. For more information, see Locking Objects. This functionality is not supported for Amazon S3 on Outposts. - operation: PutObjectLockConfiguration method: PUT path: /{Bucket} subresource: object-lock tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Places an Object Lock configuration on the specified bucket. The rule specified in the Object Lock configuration will be applied by default to every new object place - operation: PutObjectRetention method: PUT path: /{Bucket}/{Key+} subresource: retention tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Places an Object Retention configuration on an object. For more information, see Locking Objects. Users or accounts require the s3:PutObjectRetention permission in o - operation: PutPublicAccessBlock method: PUT path: /{Bucket} subresource: publicAccessBlock tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Creates or modifies the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. F - operation: SelectObjectContent method: POST path: /{Bucket}/{Key+} subresource: select&select-type=2 tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. This action filters the contents of an Amazon S3 object based on a simple structured query language (SQL) statement. In the request, along with the SQL expression, y - operation: UpdateBucketMetadataAnnotationTableConfiguration method: PUT path: /{Bucket} subresource: metadataAnnotationTable tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Updates the annotation table configuration for an Amazon S3 bucket's metadata configuration. Use this operation to enable or disable the annotation table, or to update its associated IAM role. An annotation table is a qu - operation: UpdateBucketMetadataInventoryTableConfiguration method: PUT path: /{Bucket} subresource: metadataInventoryTable tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: 'Enables or disables a live inventory table for an S3 Metadata configuration on a general purpose bucket. For more information, see Accelerating data discovery with S3 Metadata in the Amazon S3 User Guide. Permissions To ' - operation: UpdateBucketMetadataJournalTableConfiguration method: PUT path: /{Bucket} subresource: metadataJournalTable tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Enables or disables journal table record expiration for an S3 Metadata configuration on a general purpose bucket. For more information, see Accelerating data discovery with S3 Metadata in the Amazon S3 User Guide. Permis - operation: UpdateObjectEncryption method: PUT path: /{Bucket}/{Key+} subresource: encryption tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets or Amazon S3 on Outposts buckets. Updates the server-side encryption type of an existing encrypted object in a general purpose bucket. You can use the UpdateObjectEnc - operation: UploadPartCopy method: PUT path: /{Bucket}/{Key+} subresource: null tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: Uploads a part by copying data from an existing object as data source. To specify the data source, you add the request header x-amz-copy-source in your request. To specify a byte range, you add the request header x-amz-c - operation: WriteGetObjectResponse method: POST path: /WriteGetObjectResponse subresource: null tier: vendor providers_declaring: 0 percent_of_cohort: 0.0 evidence: No provider that publishes a readable spec declares this operation. With a cohort of only 12 that is weak evidence of absence, and it is recorded as such rather than as a measured gap. summary: This operation is not supported for directory buckets. Passes transformed objects to a GetObject operation when using Object Lambda access points. For information about Object Lambda access points, see Transforming objec