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
1. ObsClient->listVersions(array $parameter) 2. ObsClient->listVersionsAsync(array $parameter, callable $callback)
Request Parameter
Field |
Type |
Optional or Mandatory |
Description |
---|---|---|---|
Bucket |
string |
Mandatory |
Bucket name |
Prefix |
string |
Optional |
Prefix that the object names to be listed must contain |
KeyMarker |
string |
Optional |
Object name to start with when listing versioning objects in a bucket. All versioning objects following this parameter are listed in the lexicographical order. |
MaxKeys |
integer |
Optional |
Maximum number of 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 does not take effect. |
Returned Result
Field |
Type |
Description |
||
---|---|---|---|---|
HttpStatusCode |
integer |
HTTP status code |
||
Reason |
string |
Reason description |
||
RequestId |
string |
Request ID returned by the OBS server |
||
Location |
string |
Bucket location |
||
Name |
string |
Bucket name |
||
Delimiter |
string |
Character used to group object names, which is consistent with that set in the request |
||
Prefix |
string |
Object name prefix, which is consistent with that set in the request |
||
IsTruncated |
boolean |
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 |
Start position for listing 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 |
integer |
Maximum number of listed versioning objects, which is consistent with that set in the request |
||
Versions |
indexed array |
List of versioning objects. |
||
ETag |
string |
MD5 value of the object |
||
Size |
integer |
Object size in bytes |
||
Key |
string |
Object name |
||
VersionId |
string |
Object version ID |
||
IsLatest |
boolean |
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 |
associative array |
Object owner |
||
ID |
string |
ID of the domain to which the object owner belongs |
||
StorageClass |
string |
Storage class of the object |
||
DeleteMarkers |
indexed array |
List of versioning delete markers |
||
Owner |
associative array |
Object owner |
||
ID |
string |
ID of the domain to which the object owner belongs |
||
Key |
string |
Object name |
||
VersionId |
string |
Object version ID |
||
IsLatest |
boolean |
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 |
indexed 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
try{ $resp = $obsClient -> listVersions([ 'Bucket' => 'bucketname', 'Prefix' => 'prefix', 'MaxKeys' => 100 ]); printf("RequestId:%s\n", $resp['RequestId']); printf("Versions:\n"); foreach ($resp['Versions'] as $index => $version){ printf("Versions[%d]\n", $index + 1); printf("ETag:%s\n", $version['ETag']); printf("Size:%s\n", $version['Size']); printf("StorageClass:%s\n", $version['StorageClass']); printf("Key:%s\n", $version['Key']); printf("VersionId:%s\n", $version['VersionId']); printf("LastModified:%s\n", $version['LastModified']); printf("Owner[ID]:%s\n", $version['Owner']['ID']); } printf("DeleteMarkers:\n"); foreach ($resp['DeleteMarkers'] as $index => $deleteMarker){ printf("DeleteMarkers[%d]\n", $index + 1); printf("Key:%s\n", $deleteMarker['Key']); printf("VersionId:%s\n", $deleteMarker['VersionId']); printf("IsLatest:%s\n", $deleteMarker['IsLatest']); printf("LastModified:%s\n", $deleteMarker['LastModified']); printf("Owner[ID]:%s\n", $deleteMarker['Owner']['ID']); } }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