如果对CRM对象的不了解,请先查看文档:
在创建/修改对象时,需要传递对象的字段,字段需要根据CRM的对象的描述定义的规则进行创建,比如在创建时,必填字段必须填写;字段格式必须按照描述中的类型进行传递等要求。
关于对象有哪些字段信息和字段信息的描述,可以通过两种途径获取:
1、通过登录到纷享销客中,在对象管理上可以查到对应的对象的字段列表。
![]()
2、通过提供的对象描述接口进行获取。参考:对象描述接口
在创建/修改接口中,传递的字段类型格式要求如下:
| 字段类型 | 说明 | JSON类型 | 示例 | 备注 |
|---|---|---|---|---|
| text | 文本 | String | “hello world” | |
| long_text | 多行文本 | String | “hello world” | |
| select_one | 单选 | String | “18” | 调用描述接口,获取该字段描述,options 即为单选字段的选项,获取的数据,以及创建时传值时使用value,label用于页面显示的选项{ "describe_api_name": "SPUObj", "is_index": true, "is_active": true, "create_time": 1545708954736, "description": "单位", "is_unique": false, "label": "单位", "type": "select_one", "is_need_convert": false, "is_required": true, "api_name": "unit", "options": [ { "label": "辆", "value": "18" }, { "label": "册", "value": "16" } ] }从对象描述接口中获取的value 字段 |
| select_many | 多选 | List | [“18”,"19"] | 调用描述接口,获取该字段描述,options 即为单选字段的选项,获取的数据,以及创建时传值时使用value,label用于页面显示的选项{ "describe_api_name": "SPUObj", "is_index": true, "is_active": true, "create_time": 1545708954736, "description": "单位", "is_unique": false, "label": "单位", "type": "select_many", "is_need_convert": false, "is_required": true, "api_name": "unit", "options": [ { "label": "辆", "value": "18" }, { "label": "册", "value": "19" } ] }从对象描述接口中获取的value 字段 |
| number | 数字 | String | “100.01” | 小数位数从描述中可以查出 |
| currency | 金额 | String | “100.01” | 小数位数从描述中可以查出 |
| date | 日期 | Long | 1619712000000 | 时间戳中包含的时分秒信息会被忽略 |
| time | 时间 | Long | 9000000 | 毫秒时间戳 |
| date_time | 日期时间 | Long | 1619422813071 | |
| phone_number | 手机号 | String | 1527XXX7499 | |
| file_attachment | 附件 | List | [ { "name": "aaa.jpg", "path": "edeeee8b-2072-43a7-b228-94086ab17d75" }] | path值为 上传素材 接口返回的mediaId |
| image | 图片 | List | [ { "isImage": true, "name": "weixin", "path": "edeeee8b-2072-43a7-b228-94086ab17d75" }] | path值为 上传素材 接口返回的mediaId |
| true_or_false | 布尔值 | Boolean | true | 注意不是字符串"true" |
| 邮箱 | String | "528XXXXXX7@fxiaoke.com" | ||
| percentile | 百分数 | String | "95.0" | 注意不**"95.0%"** |
| url | 网址 | String | "http://www.fxiaoke.com" | |
| department | 部门 | String | ["1000","1001"] | 部门id的获取可参考文档 |
| employee | 员工 | String | ["FSUID_xx1","FSUID_xx2"] | 人员对应的openUserId可以参考文档 |
| master_detail | 主从关系 | String | "603dabc14ae65400011aec90" | 以销售订单与订单产品为例,订单产品中的该类型字段传入的是销售订单的_id字段值 |
| object_reference | 查找关联 | String | "603dabc14ae65400011aec90" | 查找关联对象的_id字段值 |
| group/地区定位 | 地区定位组件,由多个基本类型字段组合表示。 | Map | "location":"1#%2#%湖北省武汉市", "country": "248", "province": "265", "city": "451", "district": "2155", "address":"湖北省武汉市" | location:定位地址,String类型, 其格式为 {经度}#%{纬度}#%{地址},非必填country:国家编号,String类型, 获取方式见获取国家身份地市选项代码,非必填province:省编号,String类型, 获取方式见获取国家身份地市选项代码,非必填city:城市编号,String类型, 获取方式见获取国家身份地市选项代码,非必填district:地区编号,String类型, 必须通过获取国家身份地市选项代码接口获取,非必填address:详细地址,String类型,非必填 |
1、对象的负责人必须通过接口对应的更好负责人接口进行修改,不能通过修改接口修改
在根据条件查询对象时,需要传递查询条件参数,查询条件只能按照对象的字段进行过滤。
| 参数 | 参数类型 | 必须 | 备注 |
|---|---|---|---|
| corpAccessToken | String | 是 | 企业应用访问公司合法性凭证 |
| corpId | String | 是 | 企业ID |
| currentOpenUserId | String | 是 | 当前操作人OpenUserID |
| need_return_count_num | Boolean | 否 | 是否返回精确总数,true表示返回精确总数,默认false,false可以加快响应 |
| data | 二级对象 | 是 | 查询条件 |
| data.dataObjectApiName | String | 是 | 对象的api_name |
| data.search_query_info | 三级对象 | 是 | 查询条件列表 |
| data.search_query_info.limit | int | 是 | 获取数据条数, 最大值为100 |
| data.search_query_info.offset | int | 是 | 偏移量,从0开始、数值必须为limit的整数倍 |
| data.search_query_info.filters | List | 是 | 过滤条件列表 |
| data.search_query_info.filters.field_name | String | 是 | 字段apiName,如"account_type",获取方式见字段描述 |
| data.search_query_info.filters.field_values | List | 是 | 取值范围, 字段对应的值,必须是列表类型,比如字符串等于"1",则填写 ["1"],值可以通过对象查询接口获取 |
| data.search_query_info.filters.operator | String | 是 | 支持操作,如 "EQ",支持操作见下表 |
| data.search_query_info.orders | List | 是 | 排序 |
| data.search_query_info.orders.fieldName | String | 是 | 字段apiName,如"account_type",获取方式见字段描述 |
| data.search_query_info.orders.isAsc | boolean | 是 | 如果是true,按照升序排列,如果是false,则按照倒序排列 |
| data.search_query_info.fieldProjection | List | 否 | 返回字段列表,填写字段apiName列表,如["_id","name"] |
请求示例:
{
"corpAccessToken": "{{corpAccessToken}}",
"corpId": "{{corpId}}",
"currentOpenUserId": "{{openUserId}}",
"data": {
"dataObjectApiName": "AccountObj",
"search_query_info": {
"fieldProjection": [
"_id",
"name"
],
"limit": 100,
"offset": 0,
"filters": [
{
"field_name": "account_type",
"field_values": [
"1"
],
"operator": "EQ"
},
{
"field_name": "owner",
"field_values": [
"FSUID_0871DA62082216ECE103C16683E2FCDF",
"FSUID_0871DA62082216ECE103C16683E2FCDF"
],
"operator": "IN"
}
],
"orders": [
{
"fieldName": "create_time",
"isAsc": false
}
]
}
}
}
| 参数 | 参数含义 | 参数 | 参数含义 |
|---|---|---|---|
| EQ | = | GT | > |
| LT | < | GTE | >= |
| LTE | <= | N | <> |
| LIKE | LIKE | NLIKE | NOT LIKE |
| IS | IS | ISN | IS NOT |
| IN | IN,人员字段类型范围查询必须使用IN,并且值必须传openUserId | NIN | NOT IN |
| BETWEEN | BETWEEN | NBETWEEN | NOT BETWEEN |
| STARTWITH | LIKE% | ENDWITH | %LIKE |
| CONTAINS | Array 包含 |
1、一次查询的数据列表最多返回200条数据
2、如果某个字段的值是null,则该接口不会返回该字段