
# 新增预约外呼
#### 前置条件
- 已经申请了开发者账号。
 
#### 场景描述
通过该接口新增预约外呼任务。
#### 接口方法
该接口仅支持POST方法。
#### 接口URL
https://ip:port/rest/isales/v1/openapi/campaigns/{vdnId}/appoint/create
其中，ip为CC-iSales服务器地址，port为CC-iSales服务器的HTTPS端口号。
表1URL中携带的参数说明 
| 序号 | 参数名   | 参数类型 | 是否必选 | 说明                                                                                                                                      |
|:---|:---|:---|:---|:---|
| 1  | vdnId | int  | True | 虚拟呼叫中心ID。 取值的类型为整数，取值范围为1～9999。 |
   
#### 请求说明
表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请求消息体参数说明 
| 序号 | 参数名         | 参数类型      | 是否必选  | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|:---|
| 1  | callType    | int       | True  | 1. 预约手动外呼  2. 预约自动外呼                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| 2  | calledNo    | String    | True  | 预约呼叫的号码                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| 3  | userAccount | String    | False | 非op独立部署必填，需要设置的座席业务帐号。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| 4  | workNo      | String    | False | op独立部署必填，需要设置的座席工号。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| 5  | taskId      | String    | True  | 外呼任务id                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| 6  | appointTime | TimeStamp | True  | 预约呼叫时间，如果是自动外呼，则会提前5分钟执行呼叫。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| 7  | callData    | String    | False | 随路数据，最大长度1024，使用JSON格式。只支持预约自动外呼。 注意： - 当自动外呼涉及到智能IVR流程时，该参数格式只支持JSON格式。 智能IVR流程使用JSON格式调用图元对JSON格式的随路数据进行解析和赋值操作，图元的具体实现和使用方式请参见JSON数据调用图元。   - JSON格式请参照如下，其中斜体部分可自定义，其余参数和格式请保持固定： "callData":"{\\\\\\"*fullName* \\\\\\":\\\\\\"*林子航* \\\\\\",\\\\\\"*date* \\\\\\":\\\\\\"*二零二二年三月三十一日* \\\\\\",\\\\\\"*riskName* \\\\\\":\\\\\\"*交强险*\\\\\\"}"    |
| 8  | remark      | String    | False | 预约任务备注信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
#### 响应说明
表4消息体参数说明 
| 序号 | 参数名          | 参数类型   | 说明                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| 1  | resultCode   | String | 原因码。0200000表示成功，其他表示失败。 具体见[表6]。 |
| 2  | resultDesc   | String | 描述。                                                                                                                                                                                                                                                    |
| 3  | returnCode   | String | 原因码。0200000表示成功，其他表示失败。 具体见[表6]。 |
| 4  | returnDesc   | String | 描述。                                                                                                                                                                                                                                                    |
| 5  | returnObject | Object | 参见[表5 returnObject参数说明]。                                                                                                                  |
   
 表5returnObject参数说明 
| 序号 | 参数名       | 参数类型   | 说明      |
|:---|:---|:---|:---|
| 1  | appointId | String | 预约外呼id。 |
   
#### 触发事件
无
#### 错误结果码
 表6错误原因码说明 
| 序号 | 错误码      | 说明                                    |
|:---|:---|:---|
| 1  | 0200001  | 参数异常，异常详情在resultDesc中描述。              |
| 2  | 0200006  | 数据库操作异常。                              |
| 3  | 0200007  | 外呼活动不存在。                              |
| 4  | 02000001 | 参数值为空                                 |
| 5  | 02000002 | 参数包含非法字符                              |
| 6  | 02000003 | 参数长度不能大于规定长度                          |
| 7  | 04000001 | 预约时间不正确。                              |
| 8  | 04000002 | 预约呼叫号码不正确。最大长度为24个字符，有效字符为：0\~9、\*、#。 |
| 9  | 04000003 | 预约号码在黑名单中                             |
   
#### 报文样例
- 该接口的请求消息体举例如下：
  ```
  {
      "callType": "1",
      "calledNo": "66660001",
      "userAccount": "testName",
      "taskId": "1106025109",
      "appointTime": 1748858400000,
      "remark": "remark备注"
  }
  ```
  
- 该接口的响应消息体举例如下：
  ```
  {
      "returnCode": "0200000",
      "returnObject": {
          "id": "174712034211433247704877116507"
      },
      "resultCode": "0200000",
      "resultDesc": "success",
      "returnDesc": "success"
  }
  ```
  
 
