Updated on 2026-03-06 GMT+08:00

Obtaining Object Tags

Functions

This operation returns tags of an object.

If you do not specify a version ID in a request, make sure that you have the GetObjectTagging permission. If you do specify a version ID in a request, make sure that you have the GetObjectTagging and GetObjectVersionTagging permissions. By default, only the object owner can perform this operation. The object owner can grant this permission to others by using a bucket or user policy.

OBS returns the tags of the current object version by default. You can use the versionId parameter to retrieve tags of any other version. If the version you are retrieving tags from is a delete marker, OBS returns 404 Not Found.

Tags are not supported for files in parallel file systems.

Authorization Information

To call this API, you must be the object owner or have the permissions to obtain object tags. You are advised to use IAM or bucket policies for authorization. For details about OBS authorization methods, see Differences Between OBS Permissions Control Methods.

  • If you use IAM for authorization, you need to use either role/policy-based authorization or identity policy-based authorization and configure the required permissions:
    • If you use role/policy-based authorization (IAM v3 APIs in the old IAM version), you need to grant the obs:object:GetObjectTagging (versioning disabled) and obs:object:GetObjectVersionTagging (versioning enabled or suspended) permissions. For details, see Creating a Custom IAM Policy.
    • If you use identity policy-based authorization (IAM v5 APIs in the new IAM version), you need to grant the obs:object:getObjectTagging (versioning disabled) and obs:object:getObjectVersionTagging (versioning enabled or suspended) permissions, as shown in the following table. For details, see Creating a Custom IAM Identity Policy.

      Action

      Access Level

      Resource Type (*: Required)

      Condition Key

      Alias

      Dependencies

      obs:object:getObjectTagging (versioning disabled)

      obs:object:getObjectVersionTagging (versioning enabled or suspended)

      Read

      object *

      -

      -

  • If you use bucket policies for authorization, you need to grant the obs:object:GetObjectTagging (versioning disabled) and obs:object:GetObjectVersionTagging (versioning enabled or suspended) permissions. For details, see Creating a Custom Bucket Policy.

Request Syntax

1
2
3
GET /objectname?tagging&versionId=versionid HTTP/1.1
Date: date 
Authorization: authorization string

Request Parameters

Table 1 describes the parameters in the request.

Table 1 Request parameters

Parameter

Description

Mandatory (Yes/No)

tagging

Indicates an object tag request.

Type: string

Yes

versionId

ID of the tagged object version. Its corresponding response header is x-obs-version-id.

Type: string

No

Request Headers

This request uses common headers. For details, see Table 3.

Request Elements

This request involves no elements.

Response Syntax

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
HTTP/1.1 status_code
x-obs-request-id: request id
x-obs-id-2: id
x-obs-version-id: version id
Content-Type: application/xml 
Content-Length: length
Date: date
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
    <TagSet> 
        <Tag> 
            <Key>key</Key> 
            <Value>value</Value> 
        </Tag> 
    </TagSet> 
</Tagging>

Response Headers

This response uses common headers. For details, see Table 1.

Response Elements

For more information about the object tag elements returned in the response, see Table 3.

Error Responses

In addition to common error codes, this API also returns others. Table 2 lists the common errors and possible causes.

Table 2 Error codes of obtaining object tags

Error Code

Description

HTTP Status Code

NoSuchTagSet

No tags were configured for the specified object.

404

Sample Request

1
2
3
4
5
GET /objectname?tagging&versionId=G001018455096CE600005306000000DD HTTP/1.1   
User-Agent: curl/7.29.0   
Accept: */*   
Date: Wed, 27 Jun 2018 13:25:44 GMT  
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:H1INcyc5i0XlHqYTfuzkPxLZUPM=

Sample Response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
HTTP/1.1 200 OK 
x-obs-request-id: 0002B7532E0000015BEB35330C5884X1 
x-obs-id-2: s12w20LYNQqSb7moq4ibgJwmQRSmVQV+rFBqplOGYkXUpXeS/nOmbkyD+E35K79j 
x-obs-version-id: G001018455096CE600005306000000DD
Content-Type: application/xml 
Date: Wed, 27 Jun 2018 13:25:44 GMT 
Content-Length: 441 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <TagSet>
    <Tag>
      <Key>TagName1</Key>
      <Value>TagSetValue1</Value>
    </Tag>
  </TagSet>
</Tagging>