
# 新建或更新连接器 - createOrUpdateConnector
#### 功能介绍
本接口用于创建或更新连接器。
```
- 根据是否存在connector_id字段，判断是创建还是更新连接器
    - 创建mysql连接器时需上传驱动文件，详见应用示例
    - 该接口需将请求body转换为json字符串，详见请求示例
    - 返回连接器ID
```
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-tics/tics_05_0025.html)。
#### URI
POST /v1/agents/connectors
#### 请求参数
表1请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                       |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token。 通过调用接口获取用户Token接口获取。 |
| X-Language   | 是    | String | 根据自己偏好的语言来获取不同语言的返回内容，zh-cn或者en_us                                       |
| Content-Type | 是    | String | 消息体的类型（格式），必选，此接口为multipart/form-data。                                   |
   
表2请求Body参数 
| 参数             | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| name           | 是    | String | 连接器名称                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| connector_id   | 否    | String | 连接器id，长度32，更新连接器时必填                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| connector_type | 是    | String | 连接器类型，主要分为多方安全计算连接器和可信联邦学习连接器。 多方安全计算连接器 MRS， RDS_MYSQL， DWS， JDBC， MYSQL， ORACLE， 可信联邦学习连接器 LOCAL |
| auth_type      | 是    | String | 认证类型 1.PWD----密码 2.AK_SK----访问密钥与私有访问密钥                                                                                                                                                                                                                                                                                                                                                                         |
| ext_info       | 是    | String | json格式存放键值对形式配置信息                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
#### 响应参数
**状态码：200**
表3响应Body参数 
| 参数             | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| name           | String | 连接器名称                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| connector_id   | String | 连接器id，长度32，更新连接器时必填                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| connector_type | String | 连接器类型，主要分为多方安全计算连接器和可信联邦学习连接器。 多方安全计算连接器 MRS， RDS_MYSQL， DWS， JDBC， MYSQL， ORACLE， 可信联邦学习连接器 LOCAL |
| auth_type      | String | 认证类型 1.PWD----密码 2.AK_SK----访问密钥与私有访问密钥                                                                                                                                                                                                                                                                                                                                                                         |
| ext_info       | String | json格式存放键值对形式配置信息                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
**状态码：201**
表4响应Body参数 
| 参数             | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| name           | String | 连接器名称                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| connector_id   | String | 连接器id，长度32，更新连接器时必填                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| connector_type | String | 连接器类型，主要分为多方安全计算连接器和可信联邦学习连接器。 多方安全计算连接器 MRS， RDS_MYSQL， DWS， JDBC， MYSQL， ORACLE， 可信联邦学习连接器 LOCAL |
| auth_type      | String | 认证类型 1.PWD----密码 2.AK_SK----访问密钥与私有访问密钥                                                                                                                                                                                                                                                                                                                                                                         |
| ext_info       | String | json格式存放键值对形式配置信息                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
#### 请求示例
- 新建连接器(MRS)
  ```
  post https://x.x.x.x:12345/v1/agents/connectors
  data_connector: {"connector_type":"MRS","name":"hive","ext_info":"{"master_node_ip":"*.*.*.*","cluster_id":"cee282ae-fcaf-46ad-a145-9e5198f710a9","user_name":"***","password":"***"}","auth_type":"PWD"}
  ```
  
- 新建连接器(RDS)
  ```
  post https://x.x.x.x:12345/v1/agents/connectors
  data_connector: {"connector_type":"RDS_MYSQL","name":"rds2","ext_info":"{"rds":"ea20335038f54ecaafb83e6c26a4d856in01","jdbc_url":"jdbc:mysql://*.*.*.*:3306","driver_name":"mysql-connector-java-8.0.20.jar","properties":"","user_name":"***","password":"***"}","auth_type":"PWD"}
  ```
  
- 新建连接器(MySql)
  ```
  post https://x.x.x.x:12345/v1/agents/connectors
  data_connector: {"connector_type":"MYSQL","name":"mysql2","ext_info":"{"user_name":"***","password":"***","jdbc_url":"jdbc:mysql://*.*.*.*:3306","driver_name":"mysql-connector-java-8.0.20.jar","properties":""}","auth_type":"PWD"}
  ```
  
- 新建连接器(DWS)
  ```
  post https://x.x.x.x:12345/v1/agents/connectors
  data_connector: {"connector_type":"DWS","name":"dws","ext_info":"{"dws":"c07f71b6-f004-482f-b414-4124eca1f82c","jdbc_url":"jdbc:postgresql://*.*.*.*:8000/postgres","driver_name":"dws-jdbc-1.7.1.jar","properties":"","user_name":"postgres","password":"***"}","auth_type":"PWD"}
  ```
  
- 新建连接器(ORACLE)
  ```
  post https://x.x.x.x:12345/v1/agents/connectors
  data_connector: {"connector_type":"ORACLE","name":"oracle","ext_info":"{"database_name":"test","database_ip":"*.*.*.*","database_port":"8080","user_name":"tics","password":"***"}","auth_type":"PWD"}
  ```
  
 
#### 响应示例
**状态码：200**
更新连接器成功
```
{
  "name" : "rds1",
  "connector_id" : "9ddd9df9f50849f9b3fead745f5ce541",
  "connector_type" : "RDS_MYSQL",
  "auth_type" : "PWD",
  "ext_info" : "{\"rds\":\"ea20335038f54ecaafb83e6c26a4d856in01\",\"jdbc_url\":\"jdbc:mysql://*.*.*.*:3306\",\"driver_name\":\"mysql-connector-java-8.0.20.jar\",\"properties\":\"\",\"user_name\":\"admin\",\"password\":\"***\"}"
}
```
**状态码：201**
新建连接器成功
```
{
  "name" : "rds1",
  "connector_id" : "9ddd9df9f50849f9b3fead745f5ce541",
  "connector_type" : "RDS_MYSQL",
  "auth_type" : "PWD",
  "ext_info" : "{\"rds\":\"ea20335038f54ecaafb83e6c26a4d856in01\",\"jdbc_url\":\"jdbc:mysql://*.*.*.*:3306\",\"driver_name\":\"mysql-connector-java-8.0.20.jar\",\"properties\":\"\",\"user_name\":\"admin\",\"password\":\"***\"}"
}
```
#### 状态码
| 状态码 | 描述      |
|:---|:---|
| 200 | 更新连接器成功 |
| 201 | 新建连接器成功 |
| 401 | 操作无权限   |
| 500 | 内部服务器错误 |
   
