# 修改已分配节点通道的详情
#### 功能介绍
修改已分配节点通道的详情
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/IoTEdge/doc?api=UpdateClientNode)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
PUT /v2/{project_id}/push-channels/{channel_id}/client-nodes/{node_id}
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                        |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID。获取方法请参见 [获取项目ID](https://support.huaweicloud.com/api-iotedge/iotedge_api_0032.html)。 |
| channel_id | 是    | String | 边缘推送通道ID                                                                                  |
| node_id    | 是    | String | 边缘节点ID                                                                                    |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token。通过调用IAM服务 [获取IAM用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取，接口返回的响应消息头中"X-Subject-Token"就是需要获取的用户Token。简要的获取方法样例请参见 [Token认证](https://support.huaweicloud.com/api-iothub/iot_06_v5_0091.html#section0)。 |
   
表3请求Body参数 
| 参数                    | 是否必选 | 参数类型                                                                                                                                      | 描述                  |
|:---|:---|:---|:---|
| mqtt_channel_detail   | 否    | [UpdateMqttNodeChannelDetail] object     | 更新MQTT推送通道详情请求结构体   |
| pulsar_channel_detail | 否    | [UpdatePulsarNodeChannelDetail] object | 更新Pulsar推送通道详情请求结构体 |
   
 表4UpdateMqttNodeChannelDetail 
| 参数              | 是否必选 | 参数类型                                                                                                                                                  | 描述            |
|:---|:---|:---|:---|
| connection_info | 否    | [UpdateMqttNodeChannelConnectionInfo] object | 更新外部推送通道请求结构体 |
| push_info       | 否    | [UpdateMqttNodeChannelPushInfoDTO] object       | MQTT推送信息详情    |
   
 表5UpdateMqttNodeChannelConnectionInfo 
| 参数              | 是否必选 | 参数类型    | 描述               |
|:---|:---|:---|:---|
| client_id       | 否    | String  | mqtt协议中的ClientId |
| username        | 否    | String  | 鉴权用户名            |
| password        | 否    | String  | 鉴权密码             |
| trust_certs     | 否    | Object  | 客户端信任证书列表        |
| verify_hostname | 否    | Boolean | 客户端是否开启校验域名      |
   
 表6UpdateMqttNodeChannelPushInfoDTO 
| 参数          | 是否必选 | 参数类型                                                                                                                                                  | 描述           |
|:---|:---|:---|:---|
| device_data | 否    | [DeviceMqttNodeChannelPushInfoDetail] object | 设备数据推送MQTT详情 |
   
 表7DeviceMqttNodeChannelPushInfoDetail 
| 参数    | 是否必选 | 参数类型    | 描述             |
|:---|:---|:---|:---|
| topic | 否    | String  | client推送的topic |
| qos   | 否    | Integer | Mqtt的服务质量      |
   
 表8UpdatePulsarNodeChannelDetail 
| 参数              | 是否必选 | 参数类型                                                                                                                                                      | 描述            |
|:---|:---|:---|:---|
| connection_info | 否    | [UpdatePulsarNodeChannelConnectionInfo] object | 更新外部推送通道请求结构体 |
| push_info       | 否    | [UpdatePulsarNodeChannelPushInfoDTO] object       | Pulsar推送信息详情  |
   
 表9UpdatePulsarNodeChannelConnectionInfo 
| 参数    | 是否必选 | 参数类型   | 描述      |
|:---|:---|:---|:---|
| token | 否    | String | 鉴权token |
   
 表10UpdatePulsarNodeChannelPushInfoDTO 
| 参数          | 是否必选 | 参数类型                                                                                                                                                      | 描述             |
|:---|:---|:---|:---|
| device_data | 否    | [DevicePulsarNodeChannelPushInfoDetail] object | 设备数据推送Pulsar详情 |
   
 表11DevicePulsarNodeChannelPushInfoDetail 
| 参数    | 是否必选 | 参数类型   | 描述             |
|:---|:---|:---|:---|
| topic | 否    | String | client推送的topic |
   
#### 响应参数
**状态码：200**
表12响应Body参数 
| 参数                       | 参数类型                                                                                                                                       | 描述                  |
|:---|:---|:---|
| channel                  | String                                                                                                                                     | 通道                  |
| description              | String                                                                                                                                     | 推送通道描述              |
| endpoint                 | String                                                                                                                                     | 推送的地址               |
| mqtt_channel_detail      | [MqttNodeChannelDetailDTO] object           | MQTT通道详情            |
| iotdb_channel_detail     | [IoTDBNodeChannelDetailDTO] object         | IoTDB通道详情           |
| influxdb2_channel_detail | [InfluxDB2NodeChannelDetailDTO] object | MQTT通道配置详情          |
| pulsar_channel_detail    | [PulsarNodeChannelDetailDTO] object       | Pulsar通道详情          |
| create_time              | String                                                                                                                                     | 创建时间                |
| update_time              | String                                                                                                                                     | 更新时间                |
| synchronized_time        | String                                                                                                                                     | 下发时间，表示通道是否已经同步到了节点 |
| synchronized_status      | Boolean                                                                                                                                    | 下发状态，表示是否已同步到了节点    |
   
 表13MqttNodeChannelDetailDTO 
| 参数              | 参数类型                                                                                                                                               | 描述         |
|:---|:---|:---|
| connection_info | [MqttNodeChannelConnectionInfoResp] object | 外部推送通道返回详情 |
| push_info       | [MqttNodeChannelPushInfoRsp] object               | MQTT推送信息详情 |
   
 表14MqttNodeChannelConnectionInfoResp 
| 参数              | 参数类型    | 描述               |
|:---|:---|:---|
| client_id       | String  | mqtt协议中的ClientId |
| username        | String  | 鉴权用户名            |
| trust_certs     | Object  | 客户端信任证书列表        |
| verify_hostname | Boolean | 客户端是否开启校验域名      |
   
 表15MqttNodeChannelPushInfoRsp 
| 参数          | 参数类型                                                                                                                                                   | 描述           |
|:---|:---|:---|
| device_data | [DeviceMqttNodeChannelPushInfoDetail] object | 设备数据推送MQTT详情 |
   
 表16DeviceMqttNodeChannelPushInfoDetail 
| 参数    | 参数类型    | 描述             |
|:---|:---|:---|
| topic | String  | client推送的topic |
| qos   | Integer | Mqtt的服务质量      |
   
 表17IoTDBNodeChannelDetailDTO 
| 参数              | 参数类型                                                                                                                                     | 描述            |
|:---|:---|:---|
| connection_info | [IoTDBConnectionInfoResp] object           | 创建外部推送通道请求结构体 |
| push_info       | [IoTDBNodeChannelPushInfoResp] object | IoTDB推送信息详情   |
   
 表18IoTDBConnectionInfoResp 
| 参数       | 参数类型   | 描述    |
|:---|:---|:---|
| username | String | 鉴权用户名 |
| password | String | 鉴权密码  |
   
 表19IoTDBNodeChannelPushInfoResp 
| 参数          | 参数类型                                                                                                                                                     | 描述            |
|:---|:---|:---|
| device_data | [DeviceIoTDBNodeChannelPushInfoDetail] object | 创建设备数据推送IoTDB |
   
 表20DeviceIoTDBNodeChannelPushInfoDetail 
| 参数            | 参数类型   | 描述       |
|:---|:---|:---|
| storage_group | String | 数据存储的存储组 |
   
 表21InfluxDB2NodeChannelDetailDTO 
| 参数              | 参数类型                                                                                                                                           | 描述            |
|:---|:---|:---|
| connection_info | [InfluxDB2ConnectionInfo] object                 | 创建外部推送通道请求结构体 |
| push_info       | [InfluxDB2NodeChannelPushInfoRsp] object | 创建IoTDB推送信息   |
   
 表22InfluxDB2ConnectionInfo 
| 参数              | 参数类型    | 描述          |
|:---|:---|:---|
| token           | String  | 鉴权token     |
| trust_certs     | Object  | 客户端信任证书列表   |
| verify_hostname | Boolean | 客户端是否开启校验域名 |
   
 表23InfluxDB2NodeChannelPushInfoRsp 
| 参数          | 参数类型                                                                                                                                                             | 描述                |
|:---|:---|:---|
| device_data | [DeviceInfluxDB2NodeChannelPushInfoDetail] object | 创建设备数据推送InfluxDB2 |
   
 表24DeviceInfluxDB2NodeChannelPushInfoDetail 
| 参数           | 参数类型   | 描述                          |
|:---|:---|:---|
| organization | String | 一组用户的工作空间，一组用户下可以创建多个bucket |
| bucket       | String | 数据存储的地方，结合了数据库和存储周期的概念      |
   
 表25PulsarNodeChannelDetailDTO 
| 参数              | 参数类型                                                                                                                                                   | 描述           |
|:---|:---|:---|
| connection_info | [PulsarNodeChannelConnectionInfoResp] object | 外部推送通道返回详情   |
| push_info       | [PulsarNodeChannelPushInfoRsp] object               | Pulsar推送信息详情 |
   
 表26PulsarNodeChannelConnectionInfoResp 
| 参数    | 参数类型   | 描述      |
|:---|:---|:---|
| token | String | 鉴权token |
   
 表27PulsarNodeChannelPushInfoRsp 
| 参数          | 参数类型                                                                                                                                                       | 描述             |
|:---|:---|:---|
| device_data | [DevicePulsarNodeChannelPushInfoDetail] object | 设备数据推送Pulsar详情 |
   
 表28DevicePulsarNodeChannelPushInfoDetail 
| 参数    | 参数类型   | 描述             |
|:---|:---|:---|
| topic | String | client推送的topic |
   
#### 请求示例
-
  ```
  {
    "mqtt_channel_detail" : {
      "connection_info" : {
        "client_id" : "client-id",
        "username" : "username",
        "password" : "password",
        "trust_certs" : [ "cert" ],
        "verify_hostname" : true
      },
      "push_info" : {
        "device_data" : {
          "topic" : "$oc/gateway/properties/report",
          "qos" : 1
        }
      }
    }
  }
  ```
  
-
  ```
  {
    "pulsar_channel_detail" : {
      "connection_info" : {
        "token" : "oijxbnaddglasf"
      },
      "push_info" : {
        "device_data" : {
          "topic" : "/pulsar/topic"
        }
      }
    }
  }
  ```
  
 
#### 响应示例
**状态码：200**
```
{
  "channel" : "MQTT",
  "description" : "这是一个推送通道",
  "endpoint" : "ssl://068b72f3b75444dda67cc6e2286a4c20.apic.cn-south-1.huaweicloudapis.com",
  "mqtt_channel_detail" : {
    "connection_info" : {
      "client_id" : "clientID",
      "username" : "user1",
      "trust_certs" : [ "cert1" ],
      "verify_hostname" : true
    },
    "push_info" : {
      "device_data" : {
        "topic" : "$oc/gateway/properties/report",
        "qos" : 1
      }
    }
  },
  "create_time" : "2020-05-28T11:31:29.740Z",
  "update_time" : "2020-05-28T11:31:29.740Z",
  "synchronized_time" : "2020-05-28T11:31:29.740Z",
  "synchronized_status" : true
}
```
#### 状态码
| 状态码 | 描述                    |
|:---|:---|
| 200 | OK                    |
| 400 | Not Found             |
| 401 | Unauthorized          |
| 500 | Internal Server Error |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-iotedge/ErrorCode.html)。
