更新时间:2024-04-15 GMT+08:00

批量添加删除资源标签

功能介绍

为指定实例批量添加或删除标签。一个资源上最多有10个标签。 此接口为幂等接口:创建时如果请求体中存在重复key则报错。 创建时,不允许重复key,如果数据库存在就覆盖。 删除时,如果删除的标签不存在,默认处理成功,删除时不对标签字符集范围做校验。

调用方法

请参见如何调用API

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID。获取项目ID请参考 获取项目ID

resource_type

String

资源类型,目前有:

smn_topic,主题

smn_sms,短信

smn_application,移动推送

resource_id

String

资源ID。

获取resource_id的方法:

当resource_type为“smn_topic”时, 手动添加请求消息头“X-SMN-RESOURCEID-TYPE=name”,资源ID即为topic名称。 不添加请求消息头,通过“查询资源实例”,获取资源ID。 当resource_type为“smn_sms”时,resource_id为签名ID。您可在控制台获取。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

tags

Array of ResourceTag objects

标签列表,结构体说明请参见表1。删除时tags结构体不能缺失,key不能为空或空字符串,且不针对字符集范围进行校验。

action

String

操作标识:仅限于create(创建)、delete(删除)。

表4 ResourceTag

参数

是否必选

参数类型

描述

key

String

键,表示要匹配的字段。

当前key的参数值只能取“resource_name”,此时value的参数值为云服务器名称。

  • key不能重复,value为匹配的值。

  • 此字段为固定字典值。

  • 不允许为空字符串。

value

String

值。

当前key的参数值只能取“resource_name”,此时value的参数值为云服务器名称。

  • 每个值最大长度255个unicode字符。

  • 不可以为空。

响应参数

状态码: 400

表5 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

状态码: 403

表6 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

状态码: 404

表7 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

状态码: 500

表8 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

请求示例

  • 批量添加资源标签

    POST https://{SMN_Endpoint}/v2/{project_id}/{resource_type}/{resource_id}/tags/action
    
    {
      "action" : "create",
      "tags" : [ {
        "key" : "key1",
        "value" : "value1"
      }, {
        "key" : "key",
        "value" : "value3"
      } ]
    }
  • 批量删除资源标签

    POST https://{SMN_Endpoint}/v2/{project_id}/{resource_type}/{resource_id}/tags/action
    
    {
      "action" : "delete",
      "tags" : [ {
        "key" : "key1"
      }, {
        "key" : "key2",
        "value" : "value3"
      } ]
    }

响应示例

状态码

状态码

描述

204

OK

400

Bad Request

403

Unauthorized

404

Not Found

500

Internal Server Error

错误码

请参见错误码