基础信息接口 ------------- 登录接口 ================= 基于安全验证考虑,所有的业务接口均需依据atoken验证请求合法性。atoken是通过本接口进行获取到的。 根据appkey以及用户名密码登录系统,并获取atoken值,后续所有的接口请求均要求提供atoken值。 * 注:appkey目前只做记录,后期会加入校验,暂时传入公司英文名称或中文全拼,确保唯一。例:vionvision | ``Verb``: POST | ``Path``: api/v1/user/login | ``Header``: (Content-Type: application/json) | Request Body .. code-block:: javascript { appkey:"xxxxx", // appkey,暂未做校验。推荐使用公司简拼 username:"your uname", //用户名 password:"your password" //密码 } | Response Body: .. code-block:: javascript { atoken:"2cb4ff2f-191a-4b7f-8ef4-7e59bb3d87f4", //成功登录后返回的atoken值 msg_code:200, //状态码 msg_info:"登录成功" //接口返回状态结果 } 门店分组信息 ================ 分组一般是指按运营区域划分的组合,支持多级划分。每个分组下有多个门店(广场)。 分组并不是必需的,可以不进行划分。如果没有划分分组,则直接在集团下是所有门店(广场)。 | ``Verb``: GET | ``Path``: api/v1/base/groupInfo | ``Header``: (authorization, {$atoken}) | Request Params - 无 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "成功" data: [{ id: "115", //分组的id,作为分组信息的唯一标识 name: "西北大区", //分组的名称。 name_en: "xxxxxxx", //分组的英文名称 pid: "11" //分组的父级id }] } 门店(广场)信息列表 ======================= 门店是指在连锁零售平台里对一家店铺的称呼。 广场是指在商业地产平台里对一个购物中心的称呼。 本接口是获取门店的基础信息,包括uuid等字段。后续业务门店(广场)数据接口查询需要使用的unid是本接口提供的。 | ``Verb``: GET | ``Path``: api/v1/base/plazaInfo | ``Header``: (authorization, {$atoken}) | Request Params: - 无 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "this is info", data: [{ plaza_unid: "1231233", //(广场)门店的unid,作为门店信息的全局唯一标识 plaza_externalid: "9876632", //(广场)门店的外部编码,一般用作于第三方对接时,与第三方系统编码保持一致。 plaza_name: "门店名称", //(广场)门店的名称 group_id:"门店分组id", //(广场)门店所属分组的id,分组信息参见上一章节:分组信息 group_name:"门店分组name" //(广场)门店所属分组的名称,分组信息参见上一章节:分组信息 }, { plaza_unid: "1231233", plaza_externalid: "9876632", plaza_name: "门店名称", group_id:"广场分组id", group_name:"广场分组name" }, { plaza_unid:"1231233", plaza_externalid: "9876632", plaza_name: "门店名称", group_id:"广场分组id", group_name:"广场分组name" }] } 楼层信息 ================ 在购物中心项目中往往会有多个楼层的数据需要采集,这个接口可以获取楼层的基本信息。 在连锁零售平台里,有时候也会存在一些较大的门店分为上下两层、甚至多层的。同样本接口也可以提供楼层基本信息。 | ``Verb``: GET | ``Path``: /api/v1/base/floorInfo | ``Header``: (authorization, {$atoken}) | Request Params: - plaza_unid: 广场(门店)唯一编码。示例:8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "成功" data: [{ plaza_unid: "8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6", //(广场)门店唯一编码 floor_unid: "***", //楼层的唯一编码 floor_name: "1F", //楼层的名称 floor_externalid: "***" //楼层的外部编号 }] } 店铺(分区) ================ 在购物中心项目中,往往需要采集每个楼层每个店铺的客流数据。本接口可以提供所有的店铺基础信息。 在连锁零售项目中,有时候也会存在一些较大的门店,将店内空间分成不同的区域(站台)进行数据采集、顾客跟踪等。同样,本接口也可以提供零售门店内的分区情况。 | ``Verb``: GET | ``Path``: api/v1/base/zoneInfo | ``Header``: (authorization, {$atoken}) | Request Params - plaza_unid: 广场(门店)唯一编码。示例:8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "成功" data: [{ plaza_unid: "8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6", //(广场)门店唯一编码 floor_unid: "***", //楼层的唯一编码 zone_unid: "9734758a-e0b0-11e8-b6e8-7cd30ac4c912", //区域的唯一编码 zone_name: "店铺名称", //区域名称 zone_externalid: "***" //区域的外部编号 }] } 出入口信息 ================ 出入口是指顾客进出的位置。 门店(广场)、楼层、店铺(分区)都有出入口。没有出入口的区域是无法产生客流数据的。并且一个出入口可以同时属于多个店铺(分区)。 | ``Verb``: GET | ``Path``: api/v1/base/gateInfo | ``Header``: (authorization, {$atoken}) | Request Params - plaza_unid: 广场(门店)唯一编码。示例:8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "成功" data: [{ plaza_unid: "8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6", //(广场)门店唯一编码 gate_unid: "***", //监控点的唯一编码 is_mall_gate: "1", //是否为门店出入口监控点,0:否 1:是 gate_name: "出入口名称", //出入口的名称 gate_externalid: "***" //监控点的外部编号 }] } 门店设备信息 ==================== 根据门店(广场)的unid获取其下的所有设备信息。 | ``Verb``: GET | ``Path``: api/v1/base/device | ``Header``: (authorization, {$atoken}) | Request Params - plaza_unid: 广场(门店)唯一编码。示例:8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "成功" data: [{ serialnum: "e0b0-11e8-b6e8-7cd30ac4c9a6", //设备序列号 name: "***", //设备名称 channel_count: 1, //设备通道数 mac: "00-10-ff-12-43-12", //设备的mac地址 status: 1, //设备状态 0离线 1在线 停用3 local_ip:"192.168.2.123", //本地ip modify_time:"2018-01-01 00:00:00" //更新时间 }] } 门店店员信息 ==================== 根据门店(广场)的unid获取其下的所有店员信息。包括姓名、照片等。 | ``Verb``: GET | ``Path``: api/v1/base/staff | ``Header``: (authorization, {$atoken}) | Request Params - plaza_unid: 广场(门店)唯一编码。示例:8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "成功" data: [{ person_unid: "e0b0-11e8-b6e8-7cd30ac4c9a6", //员工id,与抓拍记录中的person_unid一致 name: "张先生", //员工姓名 gender: 1, //性别 0:女 1:男 age: 29, //年龄 photo: "http://xxxx.jpg", //注册照片。可访问的url地址 createtime:"2018-01-01 00:00:00" //更新时间 }] } 人员库信息 ==================== 获取品牌(集团)的所有人员库标签(名称)信息。包括名称、ID等。 | ``Verb``: GET | ``Path``: api/v1/base/personLib | ``Header``: (authorization, {$atoken}) | Request Params - plaza_unid: 广场(门店)唯一编码。示例:8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6 | Response Body: .. code-block:: javascript { msg_code: 200, msg_info: "成功" data: [{ id: 157334, //人员类型id name: "vip会员", //人员类型名称 createtime:"2018-01-01 00:00:00", //更新时间 plaza_unid:"8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6", //广场(门店)唯一编码,当人员类型属于集团的时候,该字段返回可能为空 account_unid:"1734758a-e0b0-11e8-b6e8-7cd30ac4c9a6" //集团唯一编码 },{ id: 157335, //人员类型id name: "超级vip会员", //人员类型名称 createtime:"2018-01-01 00:00:00", //更新时间 plaza_unid:"8734758a-e0b0-11e8-b6e8-7cd30ac4c9a6", //广场(门店)唯一编码,当人员类型属于集团的时候,该字段返回可能为空 account_unid:"1734758a-e0b0-11e8-b6e8-7cd30ac4c9a6" //集团唯一编码 }] }