# 新增跟进记录


```
POST https://qw-openapi-tx.dustess.com/customer/v2/createFollowRecord?accessToken=

Content-Type: application/json
```

**接口限制**：单次上限1000条，每分钟调用600次；

**Params:**

| 字段        | 类型     | 描述        | 是否必须 |
| ----------- | -------- | ----------- | -------- |
| accessToken | `String` | accessToken | true     |

**请求参数**

| 请求参数名                  | 类型       | 说明                                                     | 是否必须 |
| --------------------------- | ---------- | -------------------------------------------------------- | -------- |
| record_list                 | `Object[]` | 跟进记录列表                                             | true     |
| record_list.cid             | `String`   | 尘锋联系人id（和external_id，external_userid三选一必填） | true     |
| record_list.external_id     | `String`   | 三方联系人id （和cid，external_userid三选一必填）        | true     |
| record_list.external_userid | `String`   | 外部联系人id （和cid，external_id三选一必填）            | true     |
| record_list.content         | `String`   | 跟进内容                                                 | true     |
| record_list.at_users        | `Object[]` | @人列表                                                  | false    |
| record_list.at_users._id    | `String`   | @人id                                                    | true     |
| record_list.at_users.name   | `String`   | @人名称                                                  | true     |
| record_list.corp_id         | `String`   | 企业id                                                   | false    |
| record_list.cate_id         | `String`   | 跟进类型id                                               | false    |
| record_list.complete_time   | `Int`      | 跟进记录完成时间                                         | false    |
| record_list.files           | `Object[]` | 附件列表                                                 | false    |
| record_list.files.file_type | `String`   | 附件类型                                                 | false    |
| record_list.files.url       | `String`   | 附件地址                                                 | false    |
| record_list.files.name      | `String`   | 附件名称                                                 | false    |
| record_list.files.size      | `Int`      | 附件大小                                                 | false    |
| record_list.create_uid      | `String`   | 创建人id                                                 | true     |
| record_list.sale_chance_id  | `String`   | 销售机会id                                               | false    |
| operator_id                 | `String`   | 操作人id                                                 | true     |

**请求参数示例**
`json` - Request-Example:

```json
{
    "operator_id": "3245",
    "record_list": [
        {
            "cid": "5c4ec911-acb5-11ec-a3ac-c2553eae1880",
            "external_id": "",
            "external_userid": "",
            "corp_id": "9b801349-ae78-11ec-85da-52dbb08e1a8b",
            "cate_id": "1c33ee02-ec9c-48a2-502f-c804ef8139d0",
            "complete_time": 1649821469,
            "content": " ${{uid}} == 在文本中@员工,  /n ==文本换行格式,示例：客户反馈：繁忙/n 客户进展：跟进中/n  ${{32}}一起关注下",
            "create_uid": "3245",
            "at_users": [
                {
                    "_id": "3245",
                    "name": "xx"
                },
                {
                    "_id": "2760",
                    "name": "xx"
                }
            ],
            "files": [
                {
                    "file_type": "image",
                    "name": "1.jpg",
                    "size": 208559,
                    "url": "http://xxxx/static/1.jpg"
                }
            ]
        }
    ]
}
```

**成功响应**
| 响应参数名         | 类型       | 说明           |
| ------------------ | ---------- | -------------- |
| code               | `Int`      | 响应码         |
| success            | `Bool`     | 成功标识       |
| msg                | `String`   | 消息提示       |
| data               | `Object`   | 创建结果       |
| data.success       | `Object[]` | 创建成功列表   |
| data.success.id    | `String`   | 跟进记录id |
| data.success.index | `Int`      | 成功的索引位置 |
| data.fail          | `Object[]` | 创建失败列表   |
| data.fail.code     | `Int`      | 创建错误码     |
| data.fail.index    | `Int`      | 错误索引位置   |
| trace_id           | `String`   | 跟踪id         |

**成功响应示例**

```json
{
    "success": true,
    "msg": "操作成功",
    "data": {
        "fail": [],
        "success": [
            {
                "id": "97ef9f37-ba2a-11ec-b604-36f8d71eaa98",
                "index": 0
            }
        ]
    },
    "trace_id": "61e8e69445f64652"
}
```

**错误响应示例**


```json
{
    "success": false,
    "code": 13028,
    "msg": "批次内有失败数据",
    "data": {
        "fail": [
            {
                "code": 4155,
                "index": 0
            }
        ],
        "success": []
    },
    "trace_id": "6ae4412447519315"
}
```
