
# 批量添加或删除标签 - BatchChangeTags
#### 功能介绍
为指定桌面批量添加或删除标签。创建时，如果创建的标签已经存在（key相同），则覆盖。删除时，如果删除的标签不存在，默认处理成功。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/Workspace/doc?api=BatchChangeTags)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-workspace/workspace_09_0128.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                            | 访问级别    | 资源类型（\*为必须） | 条件键                                                                                                                                                                                                                                                                                                                                             | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | workspace:desktops:operateTags | Tagging | desktop \*  | - g:ResourceTag/\<tag-key\>   - g:EnterpriseProjectId    | -  | -      |
  | workspace:desktops:operateTags | Tagging | -           | - g:RequestTag/\<tag-key\>   - g:TagKeys                 | -  | -      |
     
  
 
#### URI
POST /v2/{project_id}/desktops/{desktop_id}/tags/action
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述    |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID。 |
| desktop_id | 是    | String | 桌面id。 |
   
#### 请求参数
表2请求Body参数 
| 参数       | 是否必选 | 参数类型                                                  | 描述                  |
|:---|:---|:---|:---|
| action   | 否    | String                                                | 操作字符串create或delete。 |
| tags     | 否    | Array of [Tag] objects | 标签对象。               |
| sys_tags | 否    | Array of [Tag] objects | 标签对象（已废弃）。          |
   
 表3Tag 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                   |
|:---|:---|:---|:---|
| key   | 是    | String | 标签的键，不能为空，最大长度128个unicode字符。大小写字母，数字，可以包含中划线"-"，下划线"_"，不能包含以下字符"=","\*","\<","\>","\\",",","\|","/"。 |
| value | 否    | String | 标签的值，最大长度43个unicode字符。大小写字母，数字，可以包含中划线"-"，下划线"_"，不能包含以下字符"=","\*","\<","\>","\\",",","\|","/"。       |
   
#### 响应参数
**状态码：204**
正常。
**状态码：400**
表4响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：401**
表5响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：403**
表6响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：404**
表7响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：500**
表8响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
#### 请求示例
```
{
  "action" : "create",
  "tags" : [ {
    "key" : "key1",
    "value" : "value1"
  }, {
    "key" : "key2",
    "value" : "value3"
  } ]
}
```
#### 响应示例
**状态码：204**
正常。
```
null
```
#### 状态码
| 状态码 | 描述     |
|:---|:---|
| 204 | 正常。    |
| 400 | 参数错误。  |
| 401 | 鉴权失败。  |
| 403 | 无权限范围。 |
| 404 | 资源不存在。 |
| 500 | 内部错误。  |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-workspace/ErrorCode.html)。
