PUT Bucket lifecycle
API Description
You can use this API to set lifecycle rules for a bucket, so as to periodically delete objects in the bucket.
Method Definition
1. ObsClient->setBucketLifecycle(array $parameter) 2. ObsClient->setBucketLifecycleAsync(array $parameter, callable $callback)
Request Parameter
Field |
Type |
Optional or Mandatory |
Description |
||
---|---|---|---|---|---|
Bucket |
string |
Mandatory |
Bucket name |
||
Rules |
indexed array |
Mandatory |
Lifecycle rules of the bucket |
||
Transitions |
indexed array |
Optional |
List of object transition policies |
||
StorageClass |
string |
Mandatory |
Storage class of the object after transition
NOTE:
The Standard storage class is not supported. |
||
Date |
string or \DateTime |
Mandatory when Days is not set |
Date when an object will be transited. The value must conform with the ISO8601 standards and must be at 00:00 (UTC time), for example, 2018-01-01T00:00:00Z. |
||
Days |
integer |
Mandatory when Date is not set |
Number of days after which an object will be transited since its creation. The value must be a positive integer. |
||
Expiration |
associative array |
Optional |
Expiration time of an object |
||
Date |
string or \DateTime |
Mandatory when Days is not set |
Date when an object expires. If the value type is string, the value must conform to the ISO8601 standards and must be at 00:00 (UTC time), for example, 2018-01-01T00:00:00Z. |
||
Days |
integer |
Mandatory when Date is not set |
Number of days after which an object expires since its creation. The value must be a positive integer. |
||
ID |
string |
Optional |
Rule ID. It is a 1-255 character string. |
||
Prefix |
string |
Mandatory |
Object name prefix identifying one or more objects to which the rule applies. The value can be empty, indicating that the rule applies to all objects in the bucket. |
||
Status |
string |
Mandatory |
Whether this rule is enabled. Possible values are:
|
||
NoncurrentVersionTransitions |
indexed array |
Optional |
List of noncurrent object version transition policies |
||
StorageClass |
string |
Mandatory |
Storage class of the noncurrent object version after transition |
||
NoncurrentDays |
integer |
Mandatory |
Number of days after which an object will be transited since it becomes a noncurrent version. The parameter value must be a positive integer. |
||
NoncurrentVersionExpiration |
associative array |
Optional |
Expiration time of a noncurrent object version |
||
NoncurrentDays |
integer |
Mandatory |
Number of days after which an object expires since it becomes a noncurrent version. The field value must be a positive integer. |
Transitions, Expiration, NoncurrentVersionTransitions, and NoncurrentVersionExpiration cannot be all null.
Returned Result
Field |
Type |
Description |
---|---|---|
HttpStatusCode |
integer |
HTTP status code |
Reason |
string |
Reason description |
RequestId |
string |
Request ID returned by the OBS server |
Sample Code
try{ $resp = $obsClient -> setBucketLifecycle([ 'Bucket' => 'bucketname', 'Rules' => [ ['ID' => 'rule1', 'Prefix' => 'prefix1', 'Status' => 'Enabled', 'Expiration' => ['Days' => 60], 'NoncurrentVersionExpiration' => ['NoncurrentDays' => 60]], ['ID' => 'rule2', 'Prefix' => 'prefix2', 'Status' => 'Enabled', 'Expiration' => ['Date' => '2018-12-31T00:00:00Z']] ] ]); printf("RequestId:%s\n", $resp['RequestId']); }catch (Obs\Common\ObsException $obsException){ printf("ExceptionCode:%s\n", $obsException->getExceptionCode()); printf("ExceptionMessage:%s\n", $obsException->getExceptionMessage()); }
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot