Feature Overview
This document provides an overview of APIs and SDK code samples for object tagging.
API | Operation | Description |
Tagging an Object | Sets tags for an uploaded object | |
Querying object tags | Queries all tags of an object | |
Deleting object tags | Deletes all tags of an object |
SDK API References
Tagging an Object
Note
This API is used to set tags for an existing object. It can help you group and manage existing object resources by adding key-value pairs as object tags.
Sample code
Objective-C
QCloudPutObjectTaggingRequest *putReq = [QCloudPutObjectTaggingRequest new];// The bucket name, composed of BucketName-Appid, can be viewed in the COS console at https://console.cloud.tencent.com/cos5/bucketputReq.bucket = @"examplebucket-1250000000";// Collection of tagsQCloudTagging *taggings = [QCloudTagging new];QCloudTag *tag1 = [QCloudTag new];// Tag Key, up to 128 bytes in length, supports English letters, numbers, spaces, plus signs, minus signs, underscores, equal signs, periods,// Colon, slashtag1.key = @"age";// Tag value, up to 256 characters. Supports letters, digits, spaces, plus sign, minus sign, underscore, equal sign, and period.//, colon, slashtag1.value = @"20";QCloudTag *tag2 = [QCloudTag new];tag2.key = @"name";tag2.value = @"karis";// Tag collection, supports up to 10 tagsQCloudTagSet *tagSet = [QCloudTagSet new];tagSet.tag = @[tag1,tag2];taggings.tagSet = tagSet;// Collection of tagsputReq.taggings = taggings;[putReq setFinishBlock:^(id outputObject, NSError *error) {// outputObject contains all response HTTP headersNSDictionary* info = (NSDictionary *) outputObject;}];[[QCloudCOSXMLService defaultCOSXML] PutObjectTagging:putReq];
Swift
let putReq = QCloudPutObjectTaggingRequest()// The bucket name, composed of BucketName-Appid, can be viewed in the COS console at https://console.cloud.tencent.com/cos5/bucketputReq.bucket = "examplebucket-1250000000";// Collection of tagslet taggings = QCloudTagging();let tag1 = QCloudTag();// Tag Key, up to 128 bytes in length, supports English letters, numbers, spaces, plus signs, minus signs, underscores, equal signs, periods,// Colon, slashtag1.key = "age";// Tag value, up to 256 characters. Supports letters, digits, spaces, plus sign, minus sign, underscore, equal sign, and period.//, colon, slashtag1.value = "20";let tag2 = QCloudTag();tag2.key = "name";tag2.value = "karis";// Tag collection, supports up to 10 tagslet tagSet = QCloudTagSet();tagSet.tag = [tag1,tag2];taggings.tagSet = tagSet;// Collection of tagsputReq.taggings = taggings;req.finishBlock = {(result,error) inif let result = result {// The result contains the response header information}else{print(error!);}}QCloudCOSXMLService.defaultCOSXML().putObjectTagging(putReq);
Querying object tags
Note
This API is used to query the existing tags of a specified object.
Sample code
Objective-C
QCloudGetObjectTaggingRequest *getReq = [QCloudGetObjectTaggingRequest new];// The bucket name, composed of BucketName-Appid, can be viewed in the COS console at https://console.cloud.tencent.com/cos5/bucketgetReq.bucket = @"examplebucket-1250000000";[getReq setFinishBlock:^(QCloudTagging * result, NSError * error) {// Collection of tagsQCloudTagSet * tagSet = result.tagSet;}];[[QCloudCOSXMLService defaultCOSXML] GetObjectTagging:getReq];
Swift
let getReq = QCloudGetObjectTaggingRequest();// The bucket name, composed of BucketName-Appid, can be viewed in the COS console at https://console.cloud.tencent.com/cos5/bucketgetReq.bucket = "examplebucket-1250000000";req.finishBlock = {(result,error) inif let result = result {// Collection of tagslet tagSet = result.tagSet;}else{print(error!);}}QCloudCOSXMLService.defaultCOSXML().getObjectTagging(getReq);
Deleting object tags
Note
The COS iOS SDK version must be v5.9.9 or later.
Note
This API is used to delete the existing tags of a specified object.
Sample Request
Objective-C
QCloudDeleteObjectTaggingRequest *request = [QCloudDeleteObjectTaggingRequest new];// File Namerequest.object = @"test.png";// The bucket name, composed of BucketName-Appid, can be viewed in the COS console at https://console.cloud.tencent.com/cos5/bucketrequest.bucket = @"examplebucket-1250000000";request.versionId = @"versionId";[request setFinishBlock:^(id * result, NSError * error) {if(!error){// Deletion successful}else{// Deletion failed}}];[[QCloudCOSXMLService defaultCOSXML] DeleteObjectTagging:request];
Swift
let request = QCloudDeleteObjectTaggingRequest();// File Namerequest.object = "test.png";// The bucket name, composed of BucketName-Appid, can be viewed in the COS console at https://console.cloud.tencent.com/cos5/bucketrequest.bucket = "examplebucket-1250000000";request.versionId = "versionId";req.finishBlock = {(result,error) inif(!error){// Deletion successful}else{// Deletion failed}}QCloudCOSXMLService.defaultCOSXML().deleteObjectTagging(request);