
# 更新Topic权限 - UpdateTopicAccessPolicy
#### 功能介绍
更新Topic权限。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ROMA/doc?api=UpdateTopicAccessPolicy)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-roma/roma_06_0018.html)。
#### URI
POST /v2/{project_id}/mqs/instances/{instance_id}/topics/accesspolicy
表1路径参数 
| 参数          | 是否必选 | 参数类型   | 描述                                  |
|:---|:---|:---|:---|
| project_id  | 是    | String | 项目ID，获取方式请参见API参考的"附录 \> 获取项目ID"章节。 |
| instance_id | 是    | String | 实例ID。                               |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                       |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token。通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值）。 |
   
表3请求Body参数 
| 参数     | 是否必选 | 参数类型                                                                                                                          | 描述    |
|:---|:---|:---|:---|
| topics | 是    | Array of [UpdateTopicAccessPolicyTopicsObject] objects | 策略列表。 |
   
 表4UpdateTopicAccessPolicyTopicsObject 
| 参数             | 是否必选 | 参数类型                                                                                                                              | 描述       |
|:---|:---|:---|:---|
| name           | 是    | String                                                                                                                            | Topic名称。 |
| policies       | 是    | Array of [UpdateTopicAccessPolicyPoliciesObject] objects | 权限列表。    |
| description    | 否    | String                                                                                                                            | 描述。      |
| sensitive_word | 否    | String                                                                                                                            | 敏感字段。    |
   
 表5UpdateTopicAccessPolicyPoliciesObject 
| 参数            | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| app_id        | 是    | String  | 集成应用Key。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| app_key       | 否    | String  | 集成应用Key。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| app_name      | 是    | String  | 应用名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| access_policy | 是    | String  | 权限类型。 - all：发布+订阅   - pub：发布   - sub：订阅    |
| owner         | 否    | Boolean | 是否为创建Topic时所选择的应用。 默认为false。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| tag           | 否    | String  | 权限类型对应的标签。 当权限类型是all时，发布和订阅的标签用符号"\&"隔开。 当有多个标签时，标签用符号"\|\|"隔开。                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
#### 响应参数
**状态码：204**
表6响应Body参数 
| 参数 | 参数类型   | 描述         |
|:---|:---|:---|
| -  | String | No Content |
   
**状态码：400**
表7响应Body参数 
| 参数         | 参数类型   | 描述    |
|:---|:---|:---|
| error_code | String | 错误码。  |
| error_msg  | String | 错误信息。 |
   
**状态码：403**
表8响应Body参数 
| 参数         | 参数类型   | 描述    |
|:---|:---|:---|
| error_code | String | 错误码。  |
| error_msg  | String | 错误信息。 |
   
#### 请求示例
把Topic所属集成应用的权限修改为仅可发布消息
```
POST https://{endpoint}/v2/{project_id}/mqs/instances/{instance_id}/topics/accesspolicy
{
  "topics" : [ {
    "name" : "topic-test-mqs",
    "policies" : [ {
      "owner" : true,
      "access_policy" : "pub",
      "app_name" : "app-dhytest",
      "tag" : "",
      "app_id" : "cd28a9d9-2184-42ce-9fbe-f3785b6caada"
    } ],
    "sensitive_word" : "",
    "description" : ""
  } ]
}
```
#### 响应示例
**状态码：400**
Bad Request
```
{
  "error_code" : 400,
  "error_msg" : "Bad Request"
}
```
**状态码：403**
Forbidden
```
{
  "error_code" : 403,
  "error_msg" : "Forbidden"
}
```
#### 状态码
| 状态码 | 描述           |
|:---|:---|
| 204 | 更新Topic权限成功。 |
| 400 | Bad Request  |
| 403 | Forbidden    |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-roma/ErrorCode.html)。
