Updated on 2025-08-22 GMT+08:00

Configuring Tags for a Bucket

Functions

This operation adds tags to a bucket.

After tags are added to a bucket, all service detail records (SDRs) generated by the requests for this bucket will have the same tags. You can categorize the SDRs for detailed cost analysis. For example, if a running application uploads data to a bucket, you can tag the bucket with the application name. In this manner, the costs on the application can be analyzed using tags in SDRs.

To perform this operation, you must have the PutBucketTagging permission. By default, only the bucket owner can delete the tags of a bucket. The bucket owner can allow other users to perform this operation by setting a bucket policy or granting them the permission.

Constraints

  • A bucket can have up to 20 tags.

Request Syntax

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
PUT /?tagging HTTP/1.1 
Host: bucketname.obs.region.myhuaweicloud.com 
Date: date
Authorization: authorization string
Content-SHA256: SHA256
<Tagging> 
    <TagSet>
        <Tag> 
            <Key>Tag Name</Key> 
            <Value>Tag Value</Value> 
        </Tag> 
    </TagSet> 
</Tagging>

Request Parameters

This request contains no message parameters.

Request Headers

Table 1 lists the request header.

Table 1 Request headers

Header

Type

Mandatory

Description

Content-SHA256

String

Yes

Base64-encoded 256-bit SHA256 digest of the message according to SHA.

Example: ogX9qClMrVJUBiUSIKDFM0qO41jJM0I5SCN55/OtMyI=

Request Elements

In this request, you must configure bucket tags in the request body. The tag configuration is uploaded in XML format. Table 2 describes the configuration elements.

Table 2 Bucket tag configuration elements

Header

Type

Mandatory (Yes/No)

Description

Tagging

XML

Yes

Definition:

Root element for TagSet and Tag

Constraints:

None

TagSet

XML

Yes

Definition:

Parent element of Tag. Parent: Tagging

Constraints:

A maximum of 20 tags can be set for a bucket. That means a TagSet can contain a maximum of 20 Tag nodes.

Tag

XML

Yes

Definition:

Information element of Tag Parent: TagSet

Constraints:

A maximum of 20 tags can be set for a bucket. That means a TagSet can contain a maximum of 20 Tag nodes.

Key

String

Yes

Definition:

Name of a tag. Parent: Tag.

Constraints:

  • A tag key can contain a maximum of 36 characters.
  • Tag keys and values cannot contain commas (,), asterisks (*), vertical bars (|), slashes (/), less-than signs (<), greater-than signs (>), equal signs (=), backslashes (\), or ASCII control characters (0x00 to 0x1F). Tag keys and values must be URL encoded before being sent to a server.

Range:

A string between 1 and 36 characters long.

Default value:

None

Value

String

Yes

Definition:

Tag value. Parent: Tag.

Constraints:

  • A key value can contain a maximum of 43 characters.
  • Tag keys and values cannot contain commas (,), asterisks (*), vertical bars (|), slashes (/), less-than signs (<), greater-than signs (>), equal signs (=), backslashes (\), or ASCII control characters (0x00 to 0x1F). Tag keys and values must be URL encoded before being sent to a server.

Range:

A string of 0 (included) to 43 (excluded) characters.

Default value:

None

Response Syntax

1
2
3
4
5
HTTP/1.1 status_code
x-obs-request-id: request id
x-obs-id-2: id
Content-Length: length
Date: date

Response Headers

The response to the request uses common headers. For details, see Table 1.

Response Elements

This response contains no elements.

Error Responses

In addition to common error codes, this API also returns other error codes. The following table lists common errors and possible causes. For details, see Table 3.

Table 3 Bucket tag configuration errors

Error Code

Description

HTTP Status Code

InvalidTagError

An invalid tag is provided when configuring bucket tags.

400 Bad Request

MalformedXMLError

An incorrect XML format is provided when configuring bucket tags.

400 Bad Request

Sample Request

This example adds a tag whose key is TagKey(Name1) and value is TagValue(Value1) to bucket examplebucket.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
PUT /?tagging HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
Date: Wed, 27 Jun 2018 13:22:50 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:Pf1ZyGvVYg2BzOjokZ/BAeR1mEQ=
Content-SHA256: ogX9qClMrVJUBiUSIKDFM0qO41jJM0I5SCN55/OtMyI=
Content-Length: 182

<Tagging xmlns="http://obs.ap-southeast-1.myhuaweicloud.com/doc/2015-06-30/">
  <TagSet>
    <Tag>
      <Key>TagKey%28Name1%29</Key>
      <Value>TagValue%28Value1%29</Value>
    </Tag>
  </TagSet>
</Tagging>

Sample Response

1
2
3
4
5
HTTP/1.1 204 No Content
Server: OBS
x-obs-request-id: BF26000001643FEBA09B1ED46932CD07
x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAABCSEZp87iEirC6DggPB5cN49pSvHBWClg
Date: Wed, 27 Jun 2018 13:22:50 GMT