Help Center> Simple Message Notification> API Reference> APIs> Resource Tag Operations> Adding or Deleting Resource Tags in Batches

Adding or Deleting Resource Tags in Batches

Function

This API is used to add or delete tags for a specified resource in batches. You can add a maximum of 10 tags to a resource. The API is idempotent. When you create tags, if there are duplicate keys in the request body, an error is reported. If a to-be-created tag has the same key as an existing tag, the tag will be created and overwrite the existing one. During tag deletion, if some tags to be deleted do not exist, the operation is considered to be successful by default. The character set of the tags will not be checked.

URI

POST /v2/{project_id}/{resource_type}/{resource_id}/tags/action

Table 1 Path parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Specifies the project ID.

See Obtaining a Project ID.

resource_type

Yes

String

Specifies the resource type. The options are as follows:

smn_topic: topic

smn_sms: SMS

smn_application: mobile push

resource_id

Yes

String

Specifies the resource ID.

To obtain the value of resource_id, perform the following steps:

If you set resource_type to smn_topic: Add X-SMN-RESOURCEID-TYPE=name in the request header and set the resource ID to the topic name. Call the GetResourceInstances API to obtain the resource ID. If you set resource_type to smn_sms, the resource ID is the signature ID, which can be obtained on the console.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Specifies the user token.

It can be obtained by calling the IAM API (value of X-Subject-Token in the response header).

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

tags

Yes

Array of ResourceTag objects

Specifies the tag list. For details, see Table 4. When you delete tags, the tag structure cannot be missing, and the key cannot be left blank or be an empty string. The system does not check the character set when deleting a tag.

action

Yes

String

Specifies the operation to be performed, which can be create or delete.

Table 4 ResourceTag

Parameter

Mandatory

Type

Description

key

Yes

String

Specifies the key field to be matched.

key can only be resource_name. In such a case, value is the ECS name.

  • The key must be unique, and the value is used for matching.
  • The key field is a fixed dictionary value.
  • key cannot be left blank.

value

Yes

String

Specifies the tag value.

key can only be resource_name. In such a case, value is the ECS name.

  • Each value contains a maximum of 255 Unicode characters.
  • value cannot be left blank.

Response Parameters

Status code: 400

Table 5 Response body parameters

Parameter

Type

Description

request_id

String

Specifies the request ID, which is unique.

code

String

Specifies the error code.

message

String

Describes the error message.

Status code: 403

Table 6 Response body parameters

Parameter

Type

Description

request_id

String

Specifies the request ID, which is unique.

code

String

Specifies the error code.

message

String

Describes the error message.

Status code: 404

Table 7 Response body parameters

Parameter

Type

Description

request_id

String

Specifies the request ID, which is unique.

code

String

Specifies the error code.

message

String

Describes the error message.

Status code: 500

Table 8 Response body parameters

Parameter

Type

Description

request_id

String

Specifies the request ID, which is unique.

code

String

Specifies the error code.

message

String

Describes the error message.

Example Requests

  • Adding resource tags in batches
    POST https://{SMN_Endpoint}/v2/{project_id}/{resource_type}/{resource_id}/tags/action
    
    {
      "action" : "create",
      "tags" : [ {
        "key" : "key1",
        "value" : "value1"
      }, {
        "key" : "key",
        "value" : "value3"
      } ]
    }
  • Deleting resource tags in batches
    POST https://{SMN_Endpoint}/v2/{project_id}/{resource_type}/{resource_id}/tags/action
    
    {
      "action" : "delete",
      "tags" : [ {
        "key" : "key1"
      }, {
        "key" : "key2",
        "value" : "value3"
      } ]
    }

Example Responses

None

Status Codes

Status Code

Description

204

OK

400

Bad Request

403

Unauthorized

404

Not Found

500

Internal Server Error

Error Codes

See Error Codes.