
# 导入服务器黑名单数据文件
#### 场景描述
调用该接口为通过服务器导入黑名单数据文件。
#### 黑名单模板
请参考[表1]创建Excel模板文件。
 表1黑名单模板 
| 黑名单号码（必填） | 到期时间（非必填）           | 有效时长（非必填，单位：小时） |
|:---|:---|:---|
| 65676950  | -                   | -               |
| 88888888  | 2022-05-27 23:06:25 | -               |
| 88888888  | 2022-06-24 10:06:25 | -               |
| 12345678  | 2022-06-24 10:06:25 | -               |
   
表2黑名单模板参数说明 
| 序号 | 参数名             | 参数类型   | 是否必选  | 说明                                                                                                                                                                                                                |
|:---|:---|:---|:---|:---|
| 1  | 黑名单号码（必填）       | String | True  | 号码最大长度为24个字符，有效字符为：0\~9、\*、#                                                                                                                                                                                      |
| 2  | 到期时间（非必填）       | String | False | 到期时间，到期时间=新增时间点+有效时长。例："2020-12-31 10:06:25"新增2条黑名单号码，有效时长120小时，则到期时间为"2021-01-05 10:06:25"。 使用租户对应的时区时间。 |
| 3  | 有效时长（非必填，单位：小时） | int    | False | 有效时长，单位小时，取值范围1\~120。                                                                                                                                                                                             |
   
#### 使用说明
- 前提条件
  - 已经申请了开发者账号。
  
  - 存在可用的文件服务器，且文件服务器支持sftp
   
- 使用限制
  - 文件中每次最多导入500000条。
   
 
#### 接口方法
该接口仅支持POST方法。
#### 接口URL
https://ip:port/rest/isales/v1/openapi/campaigns/{vdnId}/blackfile/uploadFileServer
其中，ip为CC-iSales服务器地址，port为CC-iSales服务器的HTTPS端口号。
表3URL中携带的参数说明 
| 序号 | 参数名   | 参数类型 | 是否必选 | 说明                                                                                                                                      |
|:---|:---|:---|:---|:---|
| 1  | vdnId | int  | True | 虚拟呼叫中心ID。 取值的类型为整数，取值范围为1～9999。 |
   
#### 请求说明
表4请求消息头参数 
| 序号 | 名称            | 参数类型   | 是否必选  | 说明                                                                                                                            |
|:---|:---|:---|:---|:---|
| 1  | Content-Type  | String | True  | 固定填 application/json;charset=UTF-8。                                                                                           |
| 2  | Authorization | String | True  | 生成方式参见[C2 监控/系统外呼/话单/知识库类接口鉴权方式](https://support.huaweicloud.com/api-ccfs-cec/cec_07_0003.html#ZH-CN_TOPIC_0000002481273406)。 |
| 3  | locale        | String | False | i18n（internationalization，国际语言代码），如zh_CN表示中文、en_US表示英文等，默认zh_CN。                                                              |
   
表5请求消息体参数说明 
| 序号 | 参数名            | 参数类型   | 是否必选  | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|:---|
| 1  | serverId       | String | True  | 文件服务器ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| 2  | filePath       | String | False | 文件存放路径。非必填，黑名单文件放在外呼文件器默认路径下可不填；如果放在文件服务器默认路径下的文件夹里，须填写相对于文件服务器默认路径的相对路径 示例：/isales/20220310                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| 3  | fileName       | String | True  | 文件名 示例：demo.xlsx                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| 4  | hour           | String | False | 小时，定时任务导入必传，0\<=hour\<=23，注：minute存在时，hour必传，24h制，使用租户对应的时区时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| 5  | minute         | String | False | 分钟，定时任务导入必传，取值为：00或者30，使用租户对应的时区时间。 须知： hour存在时，minute必传。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| 6  | relCategoryId  | String | False | 关联的黑名单分组id                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| 7  | typeId         | String | False | 关联的黑名单操作类型id                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| 8  | coverDupNoType | Int    | False | 覆盖规则，取值范围： - 0：不覆盖重复号码，跳过处理（默认值）。  - 1：覆盖，更新已有记录。  - 2：全量覆盖，全量覆盖后将删除过滤后黑名单，只保留导入的黑名单。过滤条件包括黑名单分组id。   默认值：0 |
   
#### 响应说明
表6消息体参数说明 
| 序号 | 参数名          | 参数类型   | 说明                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| 1  | resultCode   | String | 原因码。0200000表示成功，其他表示失败。 具体见[表5](https://support.huaweicloud.com/api-ccfs-cec/cec_07_0762.html#ZH-CN_TOPIC_0000002513233747__zh-cn_topic_0000002510109797_zh-cn_topic_0293811562_table3576145771717)。 |
| 2  | resultDesc   | String | 描述。                                                                                                                                                                                                                                                                                                           |
| 3  | importTaskId | String | 文件导入任务ID                                                                                                                                                                                                                                                                                                      |
| 4  | returnCode   | String | 原因码。0200000表示成功，其他表示失败。 具体见[表7]                                                        |
| 5  | returnDesc   | String | 描述。                                                                                                                                                                                                                                                                                                           |
   
#### 触发事件
无
#### 错误结果码
 表7错误原因码说明 
| 序号 | 错误码      | 说明                       |
|:---|:---|:---|
| 1  | 0200001  | 参数异常，异常详情在resultDesc中描述。 |
| 2  | 02000001 | 参数值为空                    |
| 3  | 02000002 | 参数包含非法字符                 |
| 4  | 02000003 | 参数长度不能大于规定长度             |
| 5  | 02000004 | 参数长度不能小于规定长度             |
| 6  | 02000005 | 参数长度需要介于规定长度之间           |
| 7  | 02000006 | 参数值类型不正确                 |
| 8  | 02000007 | 参数值大小不正确                 |
| 9  | 02000008 | 参数转换异常，请检查请求参数           |
| 10 | 02000009 | 参数组合不正确，请检查请求参数          |
| 11 | 02000010 | hour和minute必须同时存在        |
| 12 | 02000011 | 参数个数不能大于规定个数             |
| 17 | 02000012 | 黑名单分组已经存在                |
| 18 | 02000013 | 无效的黑名单分组id               |
| 19 | 02000014 | 黑名单类型已经存在                |
| 20 | 02000015 | 无效的黑名单类型id               |
   
#### 报文样例
- 该接口的请求消息体举例如下：
  ```
  {
  "serverId":"164690088271159234793429225848",
      "filePath":"/isales/upload",
      "fileName":"demoBlack.xlsx",
                
  "hour":"11",
  "minute":"00"
  }
  ```
  
- 该接口的响应消息体举例如下：
  ```
  {
  "returnCode": "0200000",
  "importTaskId": "164757251098048478018607266946",
  "resultCode": "0200000",
  "resultDesc": "数据导入中，请通过“导入结果”查看详细信息。",
  "returnDesc": "数据导入中，请通过“导入结果”查看详细信息。"
  }
  ```
  
 
