Skip to content

S3  >  Structures  >  LifecycleRule

LifecycleRule

Structure Class

LifecycleRule dataclass

Bases: _SerdeShape

A lifecycle rule for individual objects in an Amazon S3 bucket.

For more information see, Managing your storage lifecycle in the Amazon S3 User Guide.

Attributes

abort_incomplete_multipart_upload class-attribute instance-attribute
abort_incomplete_multipart_upload: AbortIncompleteMultipartUpload | None = ...

Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in the Amazon S3 User Guide.

expiration class-attribute instance-attribute
expiration: LifecycleExpiration | None = ...

Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker.

filter class-attribute instance-attribute
filter: LifecycleRuleFilter | None = ...

The Filter is used to identify objects that a Lifecycle Rule applies to. A Filter must have exactly one of Prefix, Tag, ObjectSizeGreaterThan, ObjectSizeLessThan, or And specified. Filter is required if the LifecycleRule does not contain a Prefix element.

For more information about Tag filters, see Adding filters to Lifecycle rules in the Amazon S3 User Guide.

Note

Tag filters are not supported for directory buckets.

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

Unique identifier for the rule. The value cannot be longer than 255 characters.

noncurrent_version_expiration class-attribute instance-attribute
noncurrent_version_expiration: NoncurrentVersionExpiration | None = ...

Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.

Note

This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.

noncurrent_version_transitions class-attribute instance-attribute
noncurrent_version_transitions: list[NoncurrentVersionTransition] | None = ...

Specifies the transition rule for the lifecycle rule that describes when noncurrent objects transition to a specific storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to a specific storage class at a set period in the object's lifetime.

Note

This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.

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

The general purpose bucket prefix that identifies one or more objects to which the rule applies. We recommend using Filter instead of Prefix for new PUTs. Previous configurations where a prefix is defined will continue to operate as before.

Warning

Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints.

status instance-attribute
status: str

If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.

transitions class-attribute instance-attribute
transitions: list[Transition] | None = ...

Specifies when an Amazon S3 object transitions to a specified storage class.

Note

This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.