首页 > API文档 > CRM
CRM基础接口
更新时间: 2021-12-08 11:04:46

CRM基础对象接口

目前支持客户、订单(订单产品列表)、产品档案、联系人、销售线索、退款、合同、退货单、开票申请、销售记录、商机、销售流程、销售阶段、回款计划、价目表、价目表明细和自定义对象的数据接口。

如果需要支持回款、仓库、入库单、库存、发货单、信用对象,请查看CRM基础对象V2接口

如果需要支持ERP仓库、ERP库存对象,请查看ERP集成接口


1.获取企业CRM对象列表(包含预置对象和自定义对象)

请求路径: https://open.71360.com/cgi/crm/object/list

请求方式:post + application/json 方式

参数说明:
参数参数类型必须说明
corpAccessTokenString企业应用访问公司合法性凭证
corpIdString开放平台公司账号
currentOpenUserIdString当前操作人的openUserId
请求包结构体示例:
{
    "corpAccessToken": "CORP_ACCESS_TOKEN",
    "corpId": "CORP_ID",
    "currentOpenUserId": "FSUID_xxxxx"
}
返回说明:
参数必须说明
errorCode返回码
errorMessage对返回码的文本描述内容
objects对象列表(对象类型数组)
objects.api_name对象api名称(自定义对象api_name以__c结尾)
objects.display_name对象显示名称


正确JSON 返回示例:
{
    "objects": [
        {
            "api_name": "AccountObj", 
            "display_name": "客户"
        }, 
        {
            "api_name": "SalesOrderObj", 
            "display_name": "销售订单"
        }, 
        {
            "api_name": "SalesOrderProductObj", 
            "display_name": "订单关联的产品"
        }, 
        {
            "api_name": "ProductObj", 
            "display_name": "产品档案表"
        }, 
        {
            "api_name": "LeadsObj", 
            "display_name": "销售线索"
        }, 
        {
            "api_name": "ContactObj", 
            "display_name": "联系人"
        }, 
        {
            "api_name": "HighSeasObj", 
            "display_name": "公海"
        },
        {
            "api_name": "ContractObj", 
            "display_name": "合同"
        }, 
        {
            "api_name": "ReturnedGoodsInvoiceObj", 
            "display_name": "退货单"
        },
        {
            "api_name": "InvoiceApplicationObj", 
            "display_name": "开票申请"
        },
        {
            "api_name": "RefundObj", 
            "display_name": "退款"
        },
        {
            "api_name": "OpportunityObj", 
            "display_name": "商机"
        },
        {
            "api_name": "SaleActionObj", 
            "display_name": "销售流程"
        }, 
        {
            "api_name": "SaleActionStageObj", 
            "display_name": "销售阶段"
        }, 
        {
            "api_name": "test_1gi__c", 
            "display_name": "简易模式下的自定义对象"
        }
    ], 
    "errorCode": 0, 
    "errorMessage": "success"
}


错误JSON 返回示例:
{
    "errorCode": 20016,
    "errorMessage": "corpAccessToken error"
}


2.获取对象描述

请求路径: https://open.71360.com/cgi/crm/object/describe

请求方式:post + application/json 方式

参数说明:
参数类型必须备注
corpAccessTokenString企业应用访问公司合法性凭证
corpIdString开放平台公司账号
currentOpenUserIdString当前操作人的openUserId
apiNameString对象的api_name


目前支持的对象及其操作:
apiName描述支持操作
SalesOrderObj销售订单CRUD、变更负责人、作废、恢复
ProductObj产品档案表CRUD、作废、恢复、上下架
AccountObj客户CRUD、变更负责人(对应公海中未分配的客户的【分配】操作)、作废、恢复
SalesOrderProductObj订单关联的产品仅支持根据订单Id查询列表
LeadsObj销售线索CRUD、变更负责人、作废、恢复
ContactObj联系人CRUD、变更负责人、作废、恢复
RefundObj退款CRUD、变更负责人、作废、恢复
ContractObj合同CRUD、变更负责人、作废、恢复
ReturnedGoodsInvoiceObj退货单CRUD、变更负责人、作废、恢复
InvoiceApplicationObj开票申请CRUD、变更负责人、作废、恢复
OpportunityObj商机CRUD、变更负责人、作废、恢复、变更销售流程
SaleActionObj销售流程查询销售流程列表
SaleActionStageObj销售阶段根据销售流程id查询销售阶段列表


相关对象status字段对应信息:
对象apiName字段apiName描述取值范围
SalesOrderObjorder_status订单状态6:确认中、7:已确认、8:已驳回、9:已撤回、10:已发货、11:已收货、99:已作废
ProductObjproduct_status产品状态1:已上架(正常)、2:已下架、99:已作废
AccountObjaccount_status客户状态1:报备中、2:未分配、3:已分配、99:已作废
LeadsObjleads_status线索状态1:未分配、2:待处理、3:已转换、4:已处理、5:无效、99:已作废
ContactObjcontact_status联系人状态0:正常、99:已作废
RefundObjstatus退款状态1:待确认、3:确认、4:驳回、99:已作废
ContractObjstatus            合同状态1:正常、99:已作废
ReturnedGoodsInvoiceObjstatus退货单状态6:确认中、7:已确认、8:已驳回、9:已撤回、99:已作废
InvoiceApplicationObjstatus            开票申请状态1:未开票、3:已开票、4:已驳回、99:已作废
OpportunityObjstatus商机状态1:进行中、2:赢单、3:无效、4:输单、99:已作废


请求包结构体示例:
{
    "corpAccessToken": "CORP_ACCESS_TOKEN",
    "corpId": "CORP_ID",
    "currentOpenUserId": "FSUID_xxxxx",
    "apiName": "SalesOrderObj"
}


返回说明:
参数必须说明
errorCode返回码
errorMessage对返回码的文本描述内容
objectDesc字段详情Map结构


字段描述中若干属性的含义
  • 所有 define_type=custom 类型的字段名都以 UD*__c命名

  • 所有 is_auto_number=true 的字段添加、更新时不允许输入

  • 所有 is_need_convert=true 的字段输入值和返回结果都是合法的openUserId

  • 所有 type=employee 的字段输入值和返回结果都是数组形式如下:

    "UDEmp1__c":[ "FSUID_3818E17B8D18FA0476CE46BF046CE191" , "FSUID_3818E17B8D18FA0476CE46BF046CE191" ]  

  • 所有 type=select_many 的字段输入值和返回结果都是数组形式如 "UDMSel1__c":["1","2"]

  • 所有 type=file_attachment 的字段返回值如下:

        "UDAttach1__c": [         

            {

                "ext": ".jpg", //文件扩展名称

                "path": "6a7a6c46-d971-4860-a67c-54d344253f1b", //附件的素材Id(参照素材管理部分)

                "filename": "QQ图片20170106184034", //文件名称

                "size": 616563 //文件大小Byte为单位

            }, 

            {

                "ext": ".jpg", //文件扩展名称

                "path": "d75e3724-ea0b-41c9-a25c-60d408e5ab78", //附件的素材Id(参照素材管理部分)

                "filename": "1", //文件名称

                "size": 209666//文件大小Byte为单位

            }

        ]

  • 所有 type=image的字段返回值如下: 

      "UDImg1__c": [

          {

               "ext": ".jpg",

               "path":"f25d503e-ad8e-4e00-8289-f89e15568a23"  //附件的素材Id(参照素材管理部分)

           },

          {

               "ext": ".jpg",

               "path": "56552fcb-4e7f-408f-801a-37691d8dc7fa" //附件的素材Id(参照素材管理部分)

          }

      ]

  • 所有描述中type=use_scope的字段,输入值和返回值为json的字符串,结构如下:

     "account_range": "{\"type\":\"hasCondition\",\"value\":{\"conditions\":[{\"type\":\"and\",\"conditions\":[{\"left\":{\"expression\":\"account_status\"},\"right\":{\"type\":{\"name\":\"select_one123\"},\"value\":\"2\"},\"type\":\"EQ\"},{\"left\":{\"expression\":\"account_no\"},\"right\":{\"type\":{\"name\":\"text\"},\"value\":\"123123\"},\"type\":\"EQ\"}]},{\"type\":\"and\",\"conditions\":[{\"left\":{\"expression\":\"account_type\"},\"right\":{\"type\":{\"name\":\"select_one\"},\"value\":\"2\"},\"type\":\"EQ\"},{\"left\":{\"expression\":\"email\"},\"right\":{\"type\":{\"name\":\"email\"},\"value\":\"123123\"},\"type\":\"EQ\"}]}],\"type\":\"or\"}}"

    如有疑问,请咨询相关珍岛技术人员或者技术支持QQ:2125770475。



属性名必须说明备注
type所有字段类型object_reference、email、phone_number、true_or_false、text、long_text、date_time、number、select_one、select_many、embedded_object_list、file_attachment 、image、employee、country、province、city、district
define_type所有定义类型system:系统内置,package:包(业务应用)定义,custom:企业客户定义
api_name所有字段api_name用于数据操作时对字段的唯一标识
is_required所有是否必填添加时候是否必须输入
is_active
           
所有是否启用用于表示该字段是否生效,false表示该字段被隐藏(禁用),管理员可以从字段管理中打开
is_auto_number部分字段是否自动编号自动编号的字段添加、更新时不允许输入
is_need_convert所有是否需要转换需要转换的字段,输入和返回值都是合法的openUserId
description所有字段描述
help_text所有帮助信息
label所有字段显示名称

正确JSON 返回示例(销售订单部分字段-实际中根据字段不同而不同):
{
    "objectDesc": {
        "fields": {
            "account_id": {
                "type": "object_reference", //关联对象类型
                "define_type": "package", 
                "is_index": false, //暂时不做参考
                "is_need_convert": false, 
                "api_name": "account_id", 
                "label": "客户名称", 
                "is_unique": false, 
                "is_required": false, 
                "target_api_name": "AccountObj", //关联的对象api_name
                "description": "客户名称", 
                "action_on_target_delete": "cascade_delete", //暂时不做参考
                "target_related_list_label": "Customer CustomerTrade", //暂时不做参考
                "target_related_list_name": "account_sales_order_list"//暂时不做参考
            }, 
            "country": {
                "type": "country", 
                "define_type": "package", 
                "is_index": false, 
                "is_need_convert": false, 
                "is_required": false, 
                "is_unique": false, 
                "api_name": "country", 
                "label": "国家", 
                "options": [ ], 
                "is_active": true
            }, 
            "province": {
                "type": "province", 
                "define_type": "package", 
                "is_index": false, 
                "is_need_convert": false, 
                "is_required": false, 
                "is_unique": false, 
                "api_name": "province", 
                "cascade_parent_api_name": "country", 
                "label": "省", 
                "options": [ ], 
                "is_active": true
            }, 
            "city": {
                "type": "city", 
                "define_type": "package", 
                "is_index": false, 
                "is_need_convert": false, 
                "is_required": false, 
                "is_unique": false, 
                "api_name": "city", 
                "cascade_parent_api_name": "province", 
                "label": "市", 
                "options": [ ], 
                "is_active": true
            }, 
            "district": {
                "type": "district", 
                "define_type": "package", 
                "is_index": false, 
                "is_need_convert": false, 
                "is_required": false, 
                "is_unique": false, 
                "api_name": "district", 
                "cascade_parent_api_name": "city", 
                "label": "区", 
                "options": [ ], 
                "is_active": true
            }, 
            "_id": {
                "type": "text", //文本类型
                "define_type": "system", 
                "is_index": false, //暂时不做参考
                "is_need_convert": false, 
                "is_required": false, 
                "is_unique": false, 
                "max_length": 200, 
                "pattern": "", 
                "label": "_id", 
                "api_name": "_id", 
                "description": "_id", 
                "help_text": "_id"
            }, 
            "SalesOrderProductObj": {//内嵌对象列表类型
                "type": "embedded_object_list", 
                "define_type": "package", 
                "is_index": false,//暂时不做参考