Reviewed-by: Hasko, Vladimir <vladimir.hasko@t-systems.com> Co-authored-by: Jawei, Li <lijiawei5@huawei.com> Co-committed-by: Jawei, Li <lijiawei5@huawei.com>
12 KiB
PUT Bucket tagging
This implementation of the PUT operation uses the tagging subresource to add a set of tags to an existing bucket.
This operation is used to add tags to a bucket. Then, all CDRs generated by the requests for this bucket will take the same tags. Thus, CDR reports can be categorized for detailed cost analysis. For example, data is being uploaded to a bucket when an application is running. The application name can be tagged for this bucket. Use this tag to filter the CDRs generated by this application for analyzing its costs. However, searching for buckets by tag is not supported.
Only users granted the s3:PutBucketTagging permission can perform this operation. By default, the permission is granted to the bucket owner only. However, it can be granted to other users by configuring the bucket policy.
Request Syntax
PUT /?tagging HTTP/1.1 User-Agent: agent Host: bucketname.obs.example.com Accept: */* Date: date Authorization: authorization string Content-MD5:<md5> Content-Length: length Expect: expect <Tagging> <TagSet> <Tag> <Key>Tag Name</Key> <Value>Tag Value</Value> </Tag> </TagSet> </Tagging>
Request Parameters
This request contains no parameter.
Request Headers
Content-MD5 will be a required header for this operation. This request uses common headers. For details about common request headers, see section Common Request Headers.
Request Elements
In this request, you must configure the tags of buckets in the request body. The configurations of tags are uploaded in the XML format. The following table describes the elements to be configured.
Element |
Description |
Mandatory or Not |
---|---|---|
Tagging |
Container for the TagSet and Tag elements Type: Container Ancestor: None |
Yes |
TagSet |
Container for a set of tags Type: Container Ancestor: Tagging |
Yes |
Tag |
Container for tag information Type: Container. Each bucket supports a maximum of 20 tags. Ancestor: TagSet |
Yes |
Key |
Name of the tag Type: String. It can contain a maximum of 36 characters, including A to Z, a to z, 0 to 9, hyphens (-), underscores (_), and Unicode(\u4E00-\u9FFF). In the same bucket, the key of a tag must be unique. Ancestor: Tag |
Yes |
Value |
Value of the tag Type: String. It can contain a maximum of 43 characters, including A to Z, a to z, 0 to 9, hyphens (-), underscores (_), periods (.), and Unicode(\u4E00-\u9FFF). Note that periods (.) can be used for this parameter. Ancestor: Tag |
Yes |
Response Syntax
HTTP/1.1 204 No Content Server: Server Name x-amz-request-id: request id x-amz-id-2: id x-reserved: amazon, aws and amazon web services are trademarks or registered trademarks of Amazon Technologies, Inc Date: date
Response Headers
This response uses common headers. For details about common response headers, see section Common Response Headers.
Response Elements
This response involves no elements.
Error Responses
Except for common error responses, special error responses are also returned. The following table lists error responses and possible causes.
Error Code |
Possible Cause |
HTTP Status Code |
---|---|---|
InvalidTag |
An invalid tag is provided when configuring a tag for a bucket. |
400 Bad Request |
MalformedXML |
The provided XML format is incorrect when configuring a bucket tag. |
400 Bad Request |
Sample Request
PUT /?tagging HTTP/1.1 User-Agent: curl/7.19.7 (x86_64-suse-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8j zlib/1.2.7 libidn/1.10 Host: bucketname.obs.example.com Accept: */* Date: Tue, 09 May 2017 02:41:20 +0000 Authorization: authorization string Content-MD5: 5yPl6Bu6q5Z6vBItpJAqAQ== Content-Length: 544 Expect: 100-continue <Tagging> <TagSet> <Tag> <Key>TagNameJJ1</Key> <Value>tytttasceettt</Value> </Tag> </TagSet> </Tagging>
Sample Response
HTTP/1.1 204 No Content Server: OBS x-amz-request-id: 0002B7532E0000015BEB146F2846E8E5 x-amz-id-2: a68r9ufCPuQCBUcwv1clom3zy/LsP+Bp+JJccmsmy2ptuwV3g0YMu3FIoTaEWA02 x-reserved: amazon, aws and amazon web services are trademarks or registered trademarks of Amazon Technologies, Inc Date: Tue, 09 May 2017 02:40:37 GMT