This document provides an overview of APIs and SDK code samples related to lifecycles.
API | Operation | Description |
---|---|---|
PUT Bucket lifecycle | Setting lifecycle | Sets the lifecycle management configuration of a bucket |
GET Bucket lifecycle | Querying lifecycle | Queries the lifecycle management configuration of a bucket |
DELETE Bucket lifecycle | Deleting lifecycle | Deletes the lifecycle management configuration of a bucket |
This API is used to set the lifecycle configuration of a bucket.
Sample 1. Transition objects to the Standard_IA
storage class 30 days after upload
cos.putBucketLifecycle({
Bucket: 'examplebucket-1250000000', /*Required*/
Region: 'COS_REGION', /* Bucket region. Required */
Rules: [{
"ID": "1",
"Status": "Enabled",
"Filter": {},
"Transition": {
"Days": "30",
"StorageClass": "STANDARD_IA"
}
}],
}, function(err, data) {
console.log(err || data);
});
Sample 2. Transition objects with the specified directory prefix dir/
to the ARCHIVE
storage class 90 days after upload
cos.putBucketLifecycle({
Bucket: 'examplebucket-1250000000', /*Required*/
Region: 'COS_REGION', /* Bucket region. Required */
Rules: [{
"ID": "2",
"Filter": {
"Prefix": "dir/",
},
"Status": "Enabled",
"Transition": {
"Days": "90",
"StorageClass": "ARCHIVE"
}
}],
}, function(err, data) {
console.log(err || data);
});
Sample 3. Remove the delete markers of expired files 180 days after upload.
cos.putBucketLifecycle({
Bucket: 'examplebucket-1250000000', /*Required*/
Region: 'COS_REGION', /* Bucket region. Required */
Rules: [{
"ID": "3",
"Status": "Enabled",
"Filter": {},
"Expiration": {
"Days": "180"
}
}],
}, function(err, data) {
console.log(err || data);
});
Sample 4. Delete incomplete multipart uploads 30 days after upload.
cos.putBucketLifecycle({
Bucket: 'examplebucket-1250000000', /*Required*/
Region: 'COS_REGION', /* Bucket region. Required */
Rules: [{
"ID": "4",
"Status": "Enabled",
"Filter": {},
"AbortIncompleteMultipartUpload": {
"DaysAfterInitiation": "30"
}
}],
}, function(err, data) {
console.log(err || data);
});
Sample 5: Transition a past version to the ARCHIVE
30 days after it is generated.
cos.putBucketLifecycle({
Bucket: 'examplebucket-1250000000', /*Required*/
Region: 'COS_REGION', /* Bucket region. Required */
Rules: [{
"ID": "5",
"Status": "Enabled",
"Filter": {},
"NoncurrentVersionTransition": {
"NoncurrentDays": "30",
"StorageClass": 'ARCHIVE'
}
}],
}, function(err, data) {
console.log(err || data);
});
Parameter Name | Description | Type | Required |
---|---|---|---|
Bucket | Bucket for which the lifecycle is configured in the format: BucketName-APPID |
String | Yes |
Region | Bucket region. For the enumerated values, see Regions and Access Domain Names | String | Yes |
Rules | List of specific lifecycle rules | ObjectArray | Yes |
- ID | Unique rule ID | String | Yes |
- Status | Rule status; enumerated values: Enabled , Disabled |
String | Yes |
- Filter | Specifies the filter | Object | Yes |
- - - Prefix | Object prefix to be matched by the rule | String | No |
- Transition | Rule transition attributes, indicating when the COS storage class is converted to Standard_IA or Archive |
Object | No |
- - Days | Indicates the number of days after which the object was last modified that the action corresponding to the rule will be executed. The value must be a non-negative integer, and a maximum of 3650 days is supported. | Number | Yes |
StorageClass | Indicates the storage class of the transitioned object; enumerated values: STANDARD , STANDARD_IA , ARCHIVE . Default value: STANDARD |
String | No |
- NoncurrentVersionTransition | Specifies the transition attributes of a past object version | ObjectArray | No |
- - NoncurrentDays | Indicates that the past object version is transitioned after the number of days determined by this value | Number | Yes |
StorageClass | Indicates the storage class of the transitioned object; enumerated values: STANDARD , STANDARD_IA , ARCHIVE . Default value: STANDARD |
String | Yes |
- Expiration | Rule expiration attributes | Object | No |
- - ExpiredObjectDeleteMarker | Deletes expired object delete markers. Enumerated values: true and false . It cannot be specified with Days at the same time. |
Boolean | Yes |
- - Days | Specifies the number of days after which the object was last modified that the deletion action will occur. It cannot be specified with ExpiredObjectDeleteMarker at the same time. |
Number | Yes |
- AbortIncompleteMultipartUpload | Indicates to delete incomplete multipart uploads. | Object | No |
- - DaysAfterInitiation | Incomplete multipart uploads are deleted after the number of days determined by this value; the computation of this value starts from the time the file was uploaded and must be a positive integer. | Number | Yes |
function(err, data) { ... }
Parameter Name | Description | Type |
---|---|---|
err | Object returned when an error (network error or service error) occurs. If the request is successful, this is null. For more information, see Error Codes | Object |
- statusCode | HTTP status code returned by the request, such as 200 , 403 , and 404 |
Number |
- headers | Headers returned by the request | Object |
data | Data returned when the request is successful. If the request fails, this is null | Object |
- statusCode | HTTP status code returned by the request, such as 200 , 403 , and 404 |
Number |
- headers | Headers returned by the request | Object |
This API is used to query the lifecycle management configuration of a bucket.
cos.getBucketLifecycle({
Bucket: 'examplebucket-1250000000', /*Required*/
Region: 'COS_REGION', /* Bucket region. Required */
}, function(err, data) {
console.log(err || data);
});
{
"Rules": [{
"ID": "1",
"Filter": "",
"Status": "Enabled",
"Transition": {
"Days": "30",
"StorageClass": "STANDARD_IA"
}
}, {
"ID": "2",
"Filter": {
"Prefix": "dir/"
},
"Status": "Enabled",
"Transition": {
"Days": "90",
"StorageClass": "ARCHIVE"
}
}, {
"ID": "3",
"Filter": "",
"Status": "Enabled",
"Expiration": {
"Days": "180"
}
}, {
"ID": "4",
"Filter": "",
"Status": "Enabled",
"AbortIncompleteMultipartUpload": {
"DaysAfterInitiation": "30"
}
}, {
"ID": "5",
"Filter": "",
"Status": "Enabled",
"NoncurrentVersionTransition:": {
"NoncurrentDays": "30",
"StorageClass": "ARCHIVE"
}
}],
"statusCode": 200,
"headers": {}
}
Parameter Name | Description | Type | Required |
---|---|---|---|
Bucket | Bucket for which the lifecycle is queried in the format: BucketName-APPID |
String | Yes |
Region | Bucket region. For the enumerated values, see Regions and Access Domain Names | String | Yes |
function(err, data) { ... }
Parameter Name | Parameter Description | Type |
---|---|---|
err | Object returned when an error (network error or service error) occurs. If the request is successful, this is null. For more information, see Error Codes | Object |
- statusCode | HTTP status code returned by the request, such as 200 , 403 , and 404 |
Number |
- headers | Headers returned by the request | Object |
data | Data returned when the request is successful. If the request fails, this is null | Object |
- statusCode | HTTP status code returned by the request, such as 200 , 403 , and 404 |
Number |
- headers | Headers returned by the request | Object |
- Rules | List of specific lifecycle rules | ObjectArray |
- - ID | Unique rule ID | String |
- - Status | Rule status; enumerated values: Enabled , Disabled |
String |
- - Filter | Specifies the filter | Object |
- - - Prefix | Key prefix to be matched with the rule | String |
- - Transition | Rule transition attributes, indicating when the COS storage class is transitioned to Standard_IA or Archive |
ObjectArray |
- - - Days | Specifies the number of days after which the object was last modified that the action corresponding to the rule will be executed. The value must be a non-negative integer, and a maximum of 3650 days is supported | Number |
- - - StorageClass | Indicates the storage class of the transitioned object; enumerated values: STANDARD , STANDARD_IA , ARCHIVE |
String |
- - NoncurrentVersionTransition | Specifies the transition attributes of a past object version | ObjectArray |
- - - NoncurrentDays | Indicates that the past object version is transitioned after the number of days determined by the value | Number |
StorageClass | Indicates the storage class of the transitioned object; enumerated values: STANDARD , STANDARD_IA , ARCHIVE . Default value: STANDARD |
String |
- - Expiration | Rule expiration attributes | Object |
- - - ExpiredObjectDeleteMarker | Deletes expired object delete markers. Enumerated values: true and false . It cannot be specified with Days at the same time. |
Boolean |
- - - Days | Specifies the number of days after which the object was last modified that the deletion action will occur. It cannot be specified with ExpiredObjectDeleteMarker at the same time |
Number |
- - AbortIncompleteMultipartUpload | Indicates to delete incomplete multipart uploads. | Object |
- - - DaysAfterInitiation | Incomplete multipart uploads are deleted after the number of days determined by this value; the computation of this value starts from the time the file was uploaded and must be a positive integer. | Number |
This API is used to delete the lifecycle management configuration of a bucket.
cos.deleteBucketLifecycle({
Bucket: 'examplebucket-1250000000', /*Required*/
Region: 'COS_REGION', /* Bucket region. Required */
}, function(err, data) {
console.log(err || data);
});
Parameter Name | Description | Type | Required |
---|---|---|---|
Bucket | Bucket for which the lifecycle is deleted in the format: BucketName-APPID |
String | Yes |
Region | Bucket region. For the enumerated values, see Regions and Access Domain Names | String | Yes |
function(err, data) { ... }
Parameter Name | Description | Type |
---|---|---|
err | Object returned when an error (network error or service error) occurs. If the request is successful, this is null. For more information, see Error Codes | Object |
- statusCode | HTTP status code returned by the request, such as 200 , 403 , and 404 |
Number |
- headers | Headers returned by the request | Object |
data | Data returned when the request is successful. If the request fails, this is null | Object |
- statusCode | HTTP status code returned by the request, such as 200 , 403 , and 404 |
Number |
- headers | Headers returned by the request | Object |
Apakah halaman ini membantu?