GET Object versions
API Description
You can use this API to list versioning objects in a bucket. By default, a maximum of 1000 versioning objects are listed.
Method Definition
ObsClient.listVersions
Request Parameter
Field |
Type |
Optional or Mandatory |
Description |
---|---|---|---|
Bucket |
String |
Mandatory |
Bucket name |
RequestDate |
String or Date |
Optional |
Request time
NOTE:
When the parameter type is String, the value must comply with the ISO8601 or RFC822 standards. |
Prefix |
String |
Optional |
Name prefix that the objects to be listed must contain |
KeyMarker |
String |
Optional |
Object name to start with when listing versioning objects in a bucket. All versioning objects whose names follow this parameter are listed in the lexicographical order. |
MaxKeys |
Number |
Optional |
Maximum number of versioning objects returned. The value ranges from 1 to 1000. If the value is not in this range, 1000 is returned by default. |
Delimiter |
String |
Optional |
Character used to group object names. If the object name contains the Delimiter parameter, the character string from the first character to the first delimiter in the object name is grouped under a single result element, CommonPrefix. (If a prefix is specified in the request, the prefix must be removed from the object name.) |
VersionIdMarker |
String |
Optional |
Object name to start with when listing versioning objects in a bucket. All versioning objects are listed in the lexicographical order by object name and version ID. This parameter must be used together with KeyMarker. If the value of VersionIdMarker is not a version ID specified by KeyMarker, VersionIdMarker is ineffective. |
Returned Result (InterfaceResult)
Field |
Type |
Description |
||
---|---|---|---|---|
RequestId |
String |
Request ID returned by the OBS server |
||
Location |
String |
Bucket location |
||
Bucket |
String |
Bucket name |
||
Delimiter |
String |
Character used to group versioning object names, which is consistent with that set in the request |
||
Prefix |
String |
Name prefix of versioning objects, which is consistent with that set in the request |
||
IsTruncated |
String |
Whether all versioning objects are returned. If the field value is true, not all versioning objects are returned. If the field value is false, all versioning objects are returned. |
||
KeyMarker |
String |
Object name to start with for listing versioning objects, which is consistent with that set in the request |
||
VersionIdMarker |
String |
Start position for listing objects, which is consistent with that set in the request |
||
NextKeyMarker |
String |
Object name to start with upon the next request for listing versioning objects in a bucket |
||
NextVersionIdMarker |
String |
Version ID to start with upon the next request for listing versioning objects. It is used with the NextKeyMarker parameter. |
||
MaxKeys |
String |
Maximum number of listed versioning objects, which is consistent with that set in the request |
||
Versions |
Array |
List of versioning objects |
||
ETag |
String |
MD5 value of the object |
||
Size |
String |
Object size in bytes |
||
Key |
String |
Object name |
||
VersionId |
String |
Object version ID |
||
IsLatest |
String |
Whether the object is of the latest version. If the field value is true, the object is of the latest version. |
||
LastModified |
String |
Time when the last modification was made to the object |
||
Owner |
Object |
Object owner |
||
ID |
String |
ID of the domain to which the object owner belongs |
||
StorageClass |
String |
Storage class of the object |
||
Type |
String |
Whether the object is an appendable object |
||
DeleteMarkers |
Array |
List of versioning delete markers |
||
Owner |
Object |
Object owner |
||
ID |
String |
ID of the domain to which the object owner belongs |
||
Key |
String |
Object name |
||
VersionId |
String |
Object version ID |
||
IsLatest |
String |
Whether the object is of the latest version. If the field value is true, the object is of the latest version. |
||
LastModified |
String |
Time when the last modification was made to the object |
||
CommonPrefixes |
Array |
List of object name prefixes grouped according to the Delimiter parameter (if specified) |
||
Prefix |
String |
Object name prefix grouped according to the Delimiter parameter |
Sample Code
obsClient.listVersions({ Bucket : 'bucketname', Prefix : 'prefix', MaxKeys : 100 },function (err, result) { if(err){ console.error('Error-->' + err); }else{ if(result.CommonMsg.Status < 300){ console.log('RequestId-->' + result.InterfaceResult.RequestId); console.log('Versions:'); for(var j=0;j<result.InterfaceResult.Versions;j++){ console.log('Version[' + j + ']:'); console.log('Key-->' + result.InterfaceResult.Versions[j]['Key']); console.log('VersionId-->' + result.InterfaceResult.Versions[j]['VersionId']); console.log('IsLatest-->' + result.InterfaceResult.Versions[j]['IsLatest']); console.log('LastModified-->' + result.InterfaceResult.Versions[j]['LastModified']); console.log('ETag-->' + result.InterfaceResult.Versions[j]['ETag']); console.log('Size-->' + result.InterfaceResult.Versions[j]['Size']); console.log('Owner[ID]-->' + result.InterfaceResult.Versions[j]['Owner']['ID']); console.log('StorageClass-->' + result.InterfaceResult.Versions[j]['StorageClass']); } console.log('DeleteMarkers:'); for(var i=0;i<result.InterfaceResult.DeleteMarkers.length;i++){ console.log('DeleteMarker[' + i + ']:'); console.log('Key-->' + result.InterfaceResult.DeleteMarkers[i]['Key']); console.log('VersionId-->' + result.InterfaceResult.DeleteMarkers[i]['VersionId']); console.log('IsLatest-->' + result.InterfaceResult.DeleteMarkers[i]['IsLatest']); console.log('LastModified-->' + result.InterfaceResult.DeleteMarkers[i]['LastModified']); console.log('Owner[ID]-->' + result.InterfaceResult.DeleteMarkers[i]['Owner']['ID']); } }else{ console.log('Code-->' + result.CommonMsg.Code); console.log('Message-->' + result.CommonMsg.Message); } } });
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