Skip to content

S3  >  Operations  >  delete_object_annotation

delete_object_annotation

Operation

delete_object_annotation async

delete_object_annotation(input: DeleteObjectAnnotationInput, plugins: list[Plugin] | None = None) -> DeleteObjectAnnotationOutput

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 during concurrent updates.

Deleting an annotation is permanent. Annotations are not independently versioned, so there is no delete marker or way to recover a deleted annotation.

To use this operation, you must have the s3:DeleteObjectAnnotation permission. If the object is protected by Object Lock in governance mode, you must also include the x-amz-bypass-governance-retention header.

Note

Annotations are not supported by the following features: S3 Inventory Reports, API Gateway, S3 Storage Lens, Amazon S3 File Gateway, Amazon FSx, S3 on Outposts, and S3 Express One Zone (directory buckets).

The following operations are related to DeleteObjectAnnotation:

Parameters:

Name Type Description Default
input DeleteObjectAnnotationInput

An instance of DeleteObjectAnnotationInput.

required
plugins list[Plugin] | None

A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations.

None

Returns:

Type Description
DeleteObjectAnnotationOutput

An instance of DeleteObjectAnnotationOutput.

Input

DeleteObjectAnnotationInput dataclass

Bases: _SerdeShape

Dataclass for DeleteObjectAnnotationInput structure.

Attributes

annotation_name class-attribute instance-attribute
annotation_name: str | None = ...

The name of the annotation to delete. Annotation names are UTF-8 encoded and cannot start with aws or s3 (case-insensitive).

Length Constraints: Minimum length of 1. Maximum length of 512 bytes.

bucket class-attribute instance-attribute
bucket: str | None = ...

The name of the bucket that contains the object.

expected_bucket_owner class-attribute instance-attribute
expected_bucket_owner: str | None = ...

The account ID of the expected bucket owner.

key class-attribute instance-attribute
key: str | None = ...

The object key.

object_if_match class-attribute instance-attribute
object_if_match: str | None = ...

If specified, the operation only succeeds if the object's ETag matches the provided value.

request_payer class-attribute instance-attribute
request_payer: str | None = ...

Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for the corresponding charges. For information about downloading objects from Requester Pays buckets, see Downloading Objects in Requester Pays Buckets in the Amazon S3 User Guide.

Note

This functionality is not supported for directory buckets.

version_id class-attribute instance-attribute
version_id: str | None = ...

The version ID of the object.

Output

DeleteObjectAnnotationOutput dataclass

Bases: _SerdeShape

Dataclass for DeleteObjectAnnotationOutput structure.

Attributes

object_version_id class-attribute instance-attribute
object_version_id: str | None = ...

The version ID of the object that the annotation was deleted from.

request_charged class-attribute instance-attribute
request_charged: str | None = ...

If present, indicates that the requester was successfully charged for the request. For more information, see Using Requester Pays buckets for storage transfers and usage in the Amazon Simple Storage Service user guide.

Note

This functionality is not supported for directory buckets.

response_metadata class-attribute instance-attribute
response_metadata: ResponseMetadata = ...

Metadata about the response that produced this output. Use this to recover the request identifiers a service's support team needs in order to investigate a call. Members of the metadata are individually optional.