All Products
Search
Document Center

ENS:PutBucketLifecycle

Last Updated:Mar 27, 2026

You can call the PutBucketLifecycle operation to set lifecycle rules for a bucket.

Operation description

  • You can configure up to 1,000 rules.

  • If an object matches multiple rules, the rule with the earliest expiration time applies.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

ens:PutBucketLifecycle

none

*All Resource

*

None None

Request parameters

Parameter

Type

Required

Description

Example

BucketName

string

Yes

The name of the bucket.

test

RuleId

string

No

A unique ID that identifies the rule. Maximum length is 255 bytes.

  • Omit this parameter when creating a new rule. The system generates a unique ID automatically.

  • Specify RuleId when updating an existing rule. The rule must exist. Otherwise, the call fails.

b8f93xxxxx4881xxxxxc71d991

Status

string

Yes

The status of the rule. Valid values:

  • Enabled: The system runs the rule on schedule.

  • Disabled: The system ignores the rule.

Enabled

Prefix

string

No

The prefix that the rule applies to. You cannot set duplicate prefixes.

  • If you specify a prefix, the rule applies only to objects in the bucket whose names start with that prefix.

  • If you leave Prefix empty, the rule applies to all objects in the bucket.

image

CreatedBeforeDate

string

No

The date before which objects expire. The system applies the lifecycle rule to objects last modified before this date.

Use ISO 8601 format and UTC time. Format: yyyy-MM-ddTHH:mm:ssZ.

Note

ExpirationDays and CreatedBeforeDate are mutually exclusive. Specify one.

2023-10-12T05:45:00Z

ExpirationDays

integer

No

The number of days after an object's last modification when the lifecycle rule takes effect. Must be a positive integer greater than zero.

Note

ExpirationDays and CreatedBeforeDate are mutually exclusive. Specify one.

5

AllowSameActionOverlap

string

No

Whether to allow overlapping prefixes. Valid values:

  • true: Overlapping prefixes are allowed.

  • false (default): Overlapping prefixes are not allowed.

false

Response elements

Element

Type

Description

Example

object

Response schema

RequestId

string

The request ID.

62373E71-5521-4620-8AAB-133CCE49357A

RuleId

string

The rule ID.

b8f93xxxxx4881xxxxxc71d991

Examples

Success response

JSON format

{
  "RequestId": "62373E71-5521-4620-8AAB-133CCE49357A",
  "RuleId": "b8f93xxxxx4881xxxxxc71d991"
}

Error codes

HTTP status code

Error code

Error message

Description

400 Invalid%s The specified parameter %s is invalid.
400 InvalidArgument Days and createBeforeDate can only choose one
400 InvalidBucketName Specified parameter BucketName is not valid. The specified BucketName parameter is invalid.
400 InvalidLifecycleScheme Specified parameter LifecycleScheme is not valid.
400 InvalidType Specified parameter Type is not valid.
400 OperationDenied Engine lifecycle scheme does't support replication lifecycle rule configuration.
400 NoPermission Permission denied.
400 InvalidParameter.%s The specified field %s invalid. Please check it again.
403 AccessDenied auth is not valid
403 UserDisable The user has been disabled due to arrears. The user has been disabled due to arrears.
404 NoSuchBucket The specified bucket does not exist. The requested bucket does not exist.
404 NoSuchLifecycle The bucket lifecycle does not exist.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.