You can delete unnecessary tags of an object based on your requirements. When the delete operation is performed on the tags of an object in a versioned bucket, Object Storage Service (OSS) deletes the tags of the current version of the object by default. You can delete the tags of a specified version of the object by specifying the version ID of the object.

Note
  • Object tagging uses a key-value pair to identify objects. For more information about object tagging, see Configure object tagging in OSS Developer Guide.
  • For more information about how to delete the tags of an object, see DeleteObjectTagging.

Delete the tags of an object

When the delete operation is performed on the tags of an object in an unversioned bucket, you can delete the tags of the object based on your requirements. When the delete operation is performed on the tags of an object in a versioned bucket, OSS deletes the tags of the current version of the object by default.

The following code provides an example on how to delete the tags of the exampleobject.txt object in the exampledir directory of the examplebucket bucket:

const OSS = require('ali-oss')

const client = new OSS({
  // Set yourRegion to the endpoint of the region in which the bucket is located. For example, if your bucket is located in the China (Hangzhou) region, set yourRegion to oss-cn-hangzhou. 
  region: 'yourRegion',
  // Security risks may arise if you use the AccessKey pair of an Alibaba Cloud account to access Object Storage Service (OSS) because the account has permissions on all API operations. We recommend that you use a RAM user to call API operations or perform routine operations and maintenance. To create a RAM user, log on to the RAM console. 
  accessKeyId: 'yourAccessKeyId',
  accessKeySecret: 'yourAccessKeySecret',
  // Specify the name of the bucket in which the object you want to access is stored. Example: examplebucket. 
  bucket: 'examplebucket',
});

// Specify the full path of the object. Example: exampledir/exampleobject.txt. The full path of the object cannot contain bucket names. 
const objectName = 'exampledir/exampleobject.txt'

// Delete the tags added to the object. 
async function deleteObjectTagging(objectName) {
  try {
    const result = await client.deleteObjectTagging(objectName);
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

deleteObjectTagging(objectName)

Delete the tags of a specified version of an object

If versioning is enabled for the bucket that contains the object whose tags you want to delete, you can delete the tags of a specified version of the object by specifying the version ID of the object.

The following code provides an example on how to delete the tags of a specified version of the exampleobject.txt object in the exampledir directory of the examplebucket bucket:

Note For more information about how to obtain the version ID of the object, see List objects.
const OSS = require('ali-oss')

const client = new OSS({
  // Set yourRegion to the endpoint of the region in which the bucket is located. For example, if your bucket is located in the China (Hangzhou) region, set yourRegion to oss-cn-hangzhou. 
  region: 'yourRegion',
  // Security risks may arise if you use the AccessKey pair of an Alibaba Cloud account to access OSS because the account has permissions on all API operations. We recommend that you use a RAM user to call API operations or perform routine operations and maintenance. To create a RAM user, log on to the RAM console. 
  accessKeyId: 'yourAccessKeyId',
  accessKeySecret: 'yourAccessKeySecret',
  // Specify the name of the bucket in which the object you want to access is stored. Example: examplebucket. 
  bucket: 'examplebucket',
});

// Specify the full path of the object. Example: exampledir/exampleobject.txt. The full path of the object cannot contain bucket names. 
const objectName = 'exampledir/exampleobject.txt'
// Specify the version ID of the source object. 
const versionId = 'CAEQIRiBgMDqvPqA3BciIDJhMjE4MWZkN2ViYTRmYzJhZjkxMzk2YWM2NjJk****'

// Delete the tags added to the object. 
async function deleteObjectTagging(objectName) {
  try {
    const options = {
      versionId
    };
    const result = await client.deleteObjectTagging(objectName, options);
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

deleteObjectTagging(objectName)