所有api接口都需要鉴权规则,具体详情前往鉴权规则查看
1、查询客户字段接口
请求URL:
POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/listFields
接口说明:该接口获取当前系统客户所有启用的并且配置了字段参数的字段(除附件、系统自动赋值字段外),用于创建客户、修改客户时传值使用。
请求示例
curl --location --request POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/listFields' \
--header 'm7-appkey: 2000100' \
--header 'm7-nonce: 111922' \
--header 'm7-sign: lmwwrahWCRO0x+3DhlMMVgB2V5ytUXp5GxbLTW9wOig=' \
--header 'm7-timestamp: 1609226863021' \
--header 'content-type: application/json' \
--data-raw '{ }
}'
返回示例
{
"success": true,
"message": "requestSuccess",
"code": "200",
"data": [
{
"field": "source",
"name": "客户来源",
"type": "dropdown",
"choices": [
{
"value": "转介绍",
"key": "247146bd4b464929bbde82a005999f43"
},
{
"value": "渠道推广",
"key": "834553785c4547789fb15497a72f42f9"
}
]
},
{
"field": "labels",
"name": "客户标签",
"type": "dropdown",
"choices": []
},
{
"field": "name",
"name": "客户名称",
"type": "text"
},
{
"field": "mobile",
"name": "手机号码",
"type": "other"
},
{
"field": "wechat",
"name": "微信号",
"type": "other"
},
{
"field": "qq",
"name": "QQ",
"type": "other"
},
{
"field": "email",
"name": "邮箱",
"type": "other"
},
{
"field": "gender",
"name": "性别",
"type": "radio",
"choices": [
{
"value": "保密",
"key": "N"
},
{
"value": "女",
"key": "F"
},
{
"value": "男",
"key": "M"
}
]
},
{
"field": "age",
"name": "年龄",
"type": "number"
},
{
"field": "region",
"name": "省市区",
"type": "cascade"
},
{
"field": "memo",
"name": "备注",
"type": "multi-text"
},
{
"field": "serviceAccount",
"name": "服务帐号",
"type": "text"
},
{
"field": "servicePassword",
"name": "服务密码",
"type": "text"
},
{
"field": "checkbox_1",
"name": "测试4",
"type": "checkbox",
"choices": [
{
"value": "1",
"key": "09c76c4dfaa340cd9481c17df8af7a5d"
},
{
"value": "正确1",
"key": "a1f50f8b42634813af36a592b8870f76"
},
{
"value": "正确2",
"key": "5ec0514a68c9461c9a6d3d21174fd493"
}
]
},
{
"field": "cc",
"name": "测试5",
"options": {
"children": [
{
"children": [
{
"value": "1",
"key": "abc3b893887c470c99f4b21e8744b90a"
}
],
"value": "1",
"key": "a851e22d07274d798fd8ddc47f0d196e"
},
{
"children": [
{
"value": "正确2",
"key": "d538e67c61064f5c9327ea9857be76af"
}
],
"value": "正确1",
"key": "f3c304662a384f88b60c77935811e996"
}
]
},
"type": "cascade"
},
{
"field": "owner",
"name": "归属人",
"type": "text"
}
]
}
返回Data说明
| 字段名称 | 字段描述 |
|---|---|
| field | 解释 |
| name | 字段名称 |
| type | 字段类型,每种类型的传值方式不同,详见如下描述 |
| choices | 单选、多选、下拉菜单的value值 |
| options | 级联菜单的value值 |
字段类型(type)描述
字段共有12种类型,分别是数字、多行文本、单行文本、下拉菜单、复选框、日期时间、日期时间范围 、日期、日期范围、单选、级联菜单 、其他特殊格式 。每种类型传值方式不同。
| 类型filed | 类型 | 解释 | 传值示例 |
| number | 数字 | String格式 只能传字符串格式的数字 例如:"12345" | age:"25" |
| text | 单行文本 | String格式 其中归属人传座席名称字符串 | "name":"测试客户" 归属人 :"owner":"张三" |
| multi-text | 多行文本 | String格式 | "momo":备注 |
| dropdown | 下拉菜单 | 数组格式 返回数据中带可选属性choices;value值代表当前下拉菜单的可选项。 | "labels":["标签1","标签2"] |
| checkbox | 复选框 | 数组格式 返回数据中带可选属性choices;value值代表当前复选框的可选项。 传choices中存在的value 字符串 | "checkbox":["1","2"] |
| datetime | 日期时间 | String 格式 日期时间格式“yyyy-MM-dd HH:mm:ss" |
"time":"2022-06-09 16:29:59" |
| datetime-range | 日期时间范围 | 数组格式 日期时间范围格式[“yyyy-MM-dd HH:mm:ss","yyyy-MM-dd HH:mm:ss"] 逗号前为开始时间,后为结束时间 | "datetimerange":[”2022-06-09 16:29:59“,”2022-06-10 16:29:59“] |
| date | 日期 | string 格式 日期格式"yyyy-MM-dd" | "date":”2022-06-09“ |
| date-range | 日期范围 | 数组格式 日期范围格式[“yyyy-MM-dd”,”yyyy-MM-dd“] 下划线前为开始时间,后为结束时间 | "daterange":[”2022-06-09“,”2022-06-10 “] |
| radio | 单选 | String格式 返回数据中带可选属性choices;value值代表当单选的可选项 注:性别 可传"男","女","保密"s | "redio1":"1" 性别 → "gender":"男" |
| cascade | 级联菜单 | 数组格式 :返回数据中带可选属性options;value值代表当级联菜单的可选项 传值时要保证字符串的先后顺序。 注:其中省市区格式 ["省",市,区] 省:直辖市带"市"字,例如: "北京市"普通省份带"省"字,例如: "山东省 市:带"市"字,例如:"北京市", "石家庄市" 区:带"区"或者"县"字,例如:"朝阳区","延庆县" | "cascade1":["级联1","级联2","级联3"] 省市区 可以以下三种格式: [”省“]、["省",市] 、["区"]、["省","市","区"] ->region:["北京市","北京市","朝阳区" |
| other | 其他特殊格式 ( 邮箱、qq、微信、手机号 ) | 数组格式 {"value":"130xxxxxxxx","memo":"备注"}] value: 邮箱/qq/微信/手机号 , memo: 备注 | 支持传多个,做多传10个 [{"value":"130xxxxxxxx","memo":"备注1"},{"value":"131xxxxxxxx","memo":"备注2"}] |
2、创建客户接口
求URL:
POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/insert
接口说明: 该接口用于创建客户,在创建客户之前,需要先调用接口1(查询客户字段接口)获取当前系统最新的客户字段。 数据条数限制:每次最多插入500条用户数据
请求示例
curl --location --request POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/insert' \
--header 'm7-appkey: 2000100' \
--header 'm7-nonce: 111922' \
--header 'm7-sign: lmwwrahWCRO0x+3DhlMMVgB2V5ytUXp5GxbLTW9wOig=' \
--header 'm7-timestamp: 1609226863021' \
--header 'content-type: application/json' \
--data-raw '{
"customers": [
{
"name": "客户1",
"mobile": [
{
"value": "139******2",
"memo": "备注"
}
],
"gender": "男",
"age": "24",
"region":["北京市"],
"source": [
"转介绍"
],
"labels": [],
"cc": ["正确1", "正确"],
"checkbox_1":["正确2"]
},{
"name": "客户2",
"mobile": [
{
"value": "130****8989",
"memo": "11"
}
],
"gender": "男",
"age": "22",
"region":["北京市"],
"source": [
"转介绍"
],
"labels": [],
"cc": ["正确"],
"checkbox_1":["正确2"]
},{
"name": "客户3",
"mobile": [
{
"value": "130****9090",
"memo": "11"
}
],
"gender": "男",
"age": "22",
"region": [
"北京市"
],
"source": [
"转介绍"
],
"labels": [],
"cc": [
"正确1",
"正确"
],
"checkbox_1": [
"1",
"正确",
"正确2"
]
}
]
}
返回示例
创建成功示例
{
"success": true,
"message": "requestSuccess", ,
"code": "200",
"data": {
"failedList": []
}
}
存在创建失败的示例 -> 失败的数据后面有errMessage参数 说明了创建失败的原因
{
"success": true,
"message": "200 ok!",
"code": "200",
"data": {
"failedList": [ // 返回保存失败的数据
{
"name": "客户3",
"mobile": [
{
"value": "130****9090",
"memo": "11"
}
],
"gender": "男",
"age": "22",
"region": [
"北京市"
],
"source": [
"转介绍"
],
"labels": [],
"cc": [
"正确1",
"正确"
],
"checkbox_1": [
"1",
"正确",
"正确2"
],
"errMessage": "checkbox_1错误内容" // 保存失败的原因
}
]
}
}
3、修改客户信息
请求地址:
POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/update
接口说明:该接口用于修改客户信息,在创建客户之前,需要先调用接口1获取当前系统最新的客户字段
请求参数
| 参数名 | 必选 | 类型 | 说明 |
| customer | 是 | Object类型 必填 | _id 必填 |
请求示例
curl --location --request POS Thttp://v7openapi.7moor.com/openapi/v1/server-crm/customer/update' \
--header 'm7-appkey: 2000100' \
--header 'm7-nonce: 111922' \
--header 'm7-sign: lmwwrahWCRO0x+3DhlMMVgB2V5ytUXp5GxbLTW9wOig=' \
--header 'm7-timestamp: 1609226863021' \
--header 'content-type: application/json' \
--data-raw '{
"customer": {
"_id": "62a088571e25464de6b0f2fb",
"name": "测试1",
"mobile": [
{
"value": "130****9090",
"memo": "11"
}
],
"gender": "男",
"age": "22",
"region": [
"北京市",
"朝阳区"
],
"source": [
"转介绍"
],
"labels": [],
"cc": [
"正确1",
"正确"
],
"checkbox_1": [
"正确2"
]
}
}
}'
响应示例
更新成功示例
{
"success": true,
"message": "requestSuccess",
"code": "200"
}
4.删除客户接口
请求地址:
POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/delete 接口说明
删除数据限制:每次最多删除500条用户数据
请求参数
| 参数名 | 必选 | 类型 | 说明 |
| ids | 是 | String类型数组,必填 | 客户数据主键 |
请求示例
curl --location --request POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/delete' \
--header 'm7-appkey: 2000100' \
--header 'm7-nonce: 111922' \
--header 'm7-sign: lmwwrahWCRO0x+3DhlMMVgB2V5ytUXp5GxbLTW9wOig=' \
--header 'm7-timestamp: 1609226863021' \
--header 'content-type: application/json' \
--data-raw '{
{
"ids":["62a15ff87374e54c4a4f9ad8","62a15ff87374e54c4a4f9ad9"]
}
}
响应示例
注:errorData 为删除失败的数据id
{
"success": true,
"message": "requestSuccess",
"code": "200",
"data": {
"errorData": [
"62a15ff87374e54c4a4f9ad9" //删除失败的数据id
]
}
}
5.查询客户列表接口
请求地址:
POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/list
请求参数
| 参数名 | 必选 | 类型 | 说明 |
| name | 否/td> | string | 客户名称 |
| mobile | 否 | string | 备件手机号 |
| webcaht | 否 | string | 客户微信 |
| 否 | string | 客户邮箱 | |
| 否 | string | 客户qq | |
| beginCreateTime | 否 | string | 大于创建时间 类型String 格式Date yyyy-MM-dd HH:mm:ss" 非必填 |
| endCreateTime | 否 | string | 小于创建时间 类型String 格式Date yyyy-MM-dd HH:mm:ss" 非必填 |
| beginLastUpdateTime | 否 | string | 大于最后修改时间 类型String 格式Date yyyy-MM-dd HH:mm:ss" 非必填 |
| ensLastUpdateTime | 否 | string | 小于最后修改时间 类型String 格式Date yyyy-MM-dd HH:mm:ss" 非必填 |
| page | 否 | int | 查询第几页数据默认1 |
| pageSize | 否 | int | 每页数量 默认1000 |
请求示例
curl --location --request POST http://v7openapi.7moor.com/openapi/v1/server-crm/customer/list' \
--header 'm7-appkey: 2000100' \
--header 'm7-nonce: 111922' \
--header 'm7-sign: lmwwrahWCRO0x+3DhlMMVgB2V5ytUXp5GxbLTW9wOig=' \
--header 'm7-timestamp: 1609226863021' \
--header 'content-type: application/json' \
--data-raw '{
{
"name":"客户1",
"page":1,
"pageSize":1000
}
}
返回示例
{
"success": true,
"message": "requestSuccess",
"code": "200",
"data": {
"list": [
{
"gender": "M",
"createMethod": "API",
"mobile": [
{
"memo": "11",
"value": "130****9090"
}
],
"updateUser": "openApi",
"updateTime": "2022-06-09 13:17:35",
"source": [
"247146bd4b464929bbde82a005999f43"
],
"cascade_1": [
"f3c304662a384f88b60c77935811e996",
"d538e67c61064f5c9327ea9857be76af"
],
"labels": [],
"accountId": "1100813",
"createTime": "2022-06-09 13:17:35",
"checkbox_1": [
"5ec0514a68c9461c9a6d3d21174fd493"
],
"name": "客户1",
"createUser": "openApi",
"_id": "62a1826f5a1c002f0a70e1e4",
"region": [
"110000"
],
"age": "22"
}
],
"count": 1
}
}
6.查询系统省市区字典接口
请求地址:
GET http://v7openapi.7moor.com/openapi/v1/server-crm/customer/getRegion
接口说明
查询当前系统省市区字典值, 创建、修改座席信息时传fullname 字符串即可
请求示例
curl --location --request GET http://v7openapi.7moor.com/openapi/v1/server-crm/customer/getRegion' \
--header 'm7-appkey: 2000100' \
--header 'm7-nonce: 111922' \
--header 'm7-sign: lmwwrahWCRO0x+3DhlMMVgB2V5ytUXp5GxbLTW9wOig=' \
--header 'm7-timestamp: 1609226863021' \
--header 'content-type: application/json' \
--data-raw '{ }
返回示例
部分响应示例
{
"success": true,
"message": "200 ok!",
"message": "requestSuccess",
"data": {
"_id": "6225e79759f7c7c383d5fa4b",
"data_version": "20220114",
"result": [
{
"id": "110000",
"name": "北京",
"fullname": "北京市",
"children": [
{
"id": "110100",
"name": "北京",
"fullname": "北京市",
"children": [
{
"id": "110101",
"name": "东城",
"fullname": "东城区"
},
{
"id": "110102",
"name": "西城",
"fullname": "西城区"
},
{
"id": "110105",
"name": "朝阳",
"fullname": "朝阳区"
},
{
"id": "110106",
"name": "丰台",
"fullname": "丰台区"
},
{
"id": "110107",
"name": "石景山",
"fullname": "石景山区"
},
{
"id": "110108",
"name": "海淀",
"fullname": "海淀区"
},
{
"id": "110109",
"name": "门头沟",
"fullname": "门头沟区"
},
{
"id": "110111",
"name": "房山",
"fullname": "房山区"
},
{
"id": "110112",
"name": "通州",
"fullname": "通州区"
},
{
"id": "110113",
"name": "顺义",
"fullname": "顺义区"
},
{
"id": "110114",
"name": "昌平",
"fullname": "昌平区"
},
{
"id": "110115",
"name": "大兴",
"fullname": "大兴区"
},
{
"id": "110116",
"name": "怀柔",
"fullname": "怀柔区"
},
{
"id": "110117",
"name": "平谷",
"fullname": "平谷区"
},
{
"id": "110118",
"name": "密云",
"fullname": "密云区"
},
{
"id": "110119",
"name": "延庆",
"fullname": "延庆区"
}
]
}
]
}
}