
# 新增外呼号码（V1）
#### 场景描述
调用该接口为指定外呼活动新增外呼号码。
#### 使用说明
- 前提条件
  - 已经申请了开发者账号。
  
  - 外呼活动已经创建。
   
- 使用限制
  - 外呼活动未完成的外呼记录数不超过20W。
  
  - 同一个外呼任务，每次只能增加20条，且前后接口调用时间不能小于1秒。
  
  - 每次追加的被叫号码不能有重复。
  
  - 每次追加的被叫号码中不能与黑名单号码重复，如果追加了黑名单号码，新增外呼号码接口发送请求时提示失败。
   
 
#### 接口方法
该接口仅支持POST方法。
#### 接口URL
https://ip:port/rest/isales/v1/openapi/campaigns/{vdnId}/calldata/{campaignId}
其中，ip为CC-iSales服务器地址，port为CC-iSales服务器的HTTPS端口号。
表1URL中携带的参数说明 
| 序号 | 参数名        | 参数类型 | 是否必选 | 说明                                                                                                                                |
|:---|:---|:---|:---|:---|
| 1  | vdnId      | int  | True | 虚拟呼叫中心ID。 取值的类型为整数，取值范围为1～9999。 |
| 2  | campaignId | int  | True | 外呼活动的ID。                                                                                                                          |
   
#### 请求说明
表2请求消息头参数 
| 序号 | 名称            | 参数类型   | 是否必选  | 说明                                                                                                                            |
|:---|:---|:---|:---|:---|
| 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。                                                              |
   
表3请求消息体参数说明 
| 序号 | 参数名          | 参数类型   | 是否必选  | 说明                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|:---|
| 1  | callDataList | List   | True  | 新增数据列表，最多20条。 该对象的参数说明请参见[表 callDataList参数说明]。 |
| 2  | batchId      | String | False | [新增外呼批次](https://support.huaweicloud.com/api-ccfs-cec/cec_07_0770.html#ZH-CN_TOPIC_0000002513233751)接口中生成的批次id。                                                                                                                                     |
   
 表4callDataList参数说明 
| 序号  | 参数名         | 参数类型   | 是否必选  | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|:---|
| 1.1 | sessionId   | String | False | 标识用户的ID，外呼结果中会回传用户。 最大长度为32个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| 1.2 | called      | String | True  | 被叫号码。 最大长度为24个字符，有效字符为：0\~9、\*、#。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| 1.3 | caller      | String | False | 主叫号码。 最大长度为24个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| 1.4 | customField | String | False | 关联外呼结果类接口中的用户自定义字段，最大长度200，不允许出现特殊字符\`\~!@#$%\^\&\*()+=\|{}'":;\<\>/?.\\\[\\\]！￥...（）---【】'；：" "',、？。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| 1.5 | recycleTime | String | False | 回收时间，格式为yyyy-mm-dd hh:mm:ss。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| 1.6 | callData    | String | False | 随路数据，最大长度1024。 注意： - 当自动外呼涉及到智能IVR流程时，该参数格式只支持JSON格式。 智能IVR流程使用JSON格式调用图元对JSON格式的随路数据进行解析和赋值操作，图元的具体实现和使用方式请参见JSON数据调用图元。   - JSON格式请参照如下，其中斜体部分可自定义，其余参数和格式请保持固定： "callData":"{\\\\\\"*fullName* \\\\\\":\\\\\\"*林子航* \\\\\\",\\\\\\"*date* \\\\\\":\\\\\\"*二零二二年三月三十一日* \\\\\\",\\\\\\"*riskName* \\\\\\":\\\\\\"*交强险*\\\\\\"}"    |
| 1.7 | priority    | String | False | 支持设置优先级，优先级值范围为1-5，默认值为3，其中数字1优先级最高，数字5优先级最低。执行外呼任务提取外呼数据时，按照优先级提取外呼数据。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   
#### 响应说明
表5消息体参数说明 
| 序号 | 参数名          | 参数类型   | 说明                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| 1  | resultCode   | String | 原因码。0200000表示成功，其他表示失败。 具体见[表8]。 |
| 2  | resultDesc   | String | 描述。                                                                                                                                                                                                                                        |
| 3  | returnCode   | String | 原因码。0200000表示成功，其他表示失败。 具体见[表8]。 |
| 4  | returnDesc   | String | 描述。                                                                                                                                                                                                                                        |
| 5  | returnObject | Object | 参见[表6]。                                                                                                                             |
   
 表6returnObject参数说明 
| 序号  | 参数名       | 参数类型   | 说明                                                                                                           |
|:---|:---|:---|:---|
| 5.1 | totalSize | int    | 当前系统需要外呼的数据总数。                                                                                               |
| 5.1 | datalist  | Object | 参见[表7]。 |
   
 表7datalist参数说明 
| 序号  | 参数名    | 参数类型   | 说明                 |
|:---|:---|:---|:---|
| 5.1 | called | String | 新增的外呼号码。           |
| 5.1 | dataId | String | 新增外呼号码及其对应的dataId。 |
   
#### 触发事件
无
#### 错误结果码
 表8错误原因码说明 
| 序号 | 错误码      | 说明                       |
|:---|:---|:---|
| 1  | 0200001  | 参数异常，异常详情在resultDesc中描述。 |
| 2  | 0200006  | 数据库操作异常。                 |
| 3  | 0200007  | 外呼活动不存在。                 |
| 4  | 0200018  | 存在重复的号码。                 |
| 5  | 0200019  | 当前状态不允许追加号码。             |
| 6  | 0200020  | 号码数量超过了最大规格20w条。         |
| 7  | 0200022  | 接口调用太快。                  |
| 8  | 0200024  | 添加的号码中存在黑名单号码。           |
| 9  | 0200029  | 超过了每次添加允许的最大值。           |
| 10 | 0200030  | 时间格式不正确。                 |
| 11 | 02000001 | 参数值为空                    |
| 12 | 02000002 | 参数包含非法字符                 |
| 13 | 02000003 | 参数长度不能大于规定长度             |
| 14 | 02000004 | 参数长度不能小于规定长度             |
| 15 | 02000005 | 参数长度需要介于规定长度之间           |
| 16 | 02000006 | 参数值类型不正确                 |
| 17 | 02000007 | 参数值大小不正确                 |
| 18 | 02000008 | 参数转换异常，请检查请求参数           |
| 19 | 02000009 | 参数组合不正确，请检查请求参数          |
| 20 | 02000010 | hour和minute必须同时存在        |
| 21 | 02000011 | 参数个数不能大于规定个数             |
   
#### 报文样例
- 该接口的请求消息体举例如下：
  ```
  {   
      "batchId": "174667380880136549777962146073",
      "callDataList": [
          {
              "sessionId": "00750",
              "called": "80021"
          },
          {
              "sessionId": "00850",
              "called": "80022"
          },
          {
              "sessionId": "00950",
              "called": "80023"
          },
          {
              "sessionId": "01050",
              "called": "80024"
          }
      ]
  }
  ```
  
- 该接口的响应消息体举例如下：
  ```
  {
    "returnCode": "0200000",
    "returnObject": {
      "totalSize": 2,
      "dataIdList": [
        {
          "called": "88880399",
          "dataId": "1803096731904991234"
        },
        {
          "called": "88880399",
          "dataId": "1803096731997265922"
        }
      ]
    },
    "resultCode": "0200000",
    "resultDesc": "create data succeeded",
    "returnDesc": "create data succeeded"
  }
  ```
  
 
