客流统计云平台帮助文档

使用流程
  1. 获取 token
  2. 获取场所/区域
  3. 获取客流数据或其它数据
获取Token
POST

请求URL:/wanf-api/get-token/

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
username string 用户名
password string 密码
timezone string 用户时区 Asia/Shanghai 获取Token时同步保存用户时区,示例:Asia/Shanghai、America/New_York

请求示例

{
    "username": "test",
    "password": "test"
}

返回示例

{
    "token": "28bc3af04fdce53ed4d123405fb1afb3c8810418"
}
获取场所/区域
GET

请求URL:/wanf-api/get-site/?level=2&pk=0

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

说明:当pk等于0,返回当前用户下组织等级等于level值的所有场所,否则返回组织等级等于level值且id=pk值的组织其下级所有组织

Query参数

参数名 类型 描述 必填 可选值 备注
level integer 查询的组织等级 [1,2,3] 单选,1:一级组织,如公司/集团,2:二级组织,如场所,3:三级组织,如区域
pk integer 查询的组织ID 单选,如果是0,将查询当前用户的level等级下的所有组织

返回示例

{
    "code": 1,
    "msn": [
        {
            "pk": 88,
            "name": "万服集团"
        }
    ]
}
                

PS:如提供错误的值或没有权限都将返回一个空的组织列表或400响应

获取客流数据
POST

请求URL:/wanf-api/people-counting-data/

认证方式:Token 或 Session 认证,匿名用户拒绝访问

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
types integer 组织类型 [1,2] 单选,1:二级组织,如场所,2:三级组织,如区域
site Array 场所或区域ID 多选,如[23,65,88],当types为1时,此处应为场所ID,为2时应为区域ID
size string 查询的时间粒度 ["hour", "day", "week", "month", "year"] 单选,hour:小时,day:天,week:周,month:月,year:年
index Array 查询指标 ["passBy", "enter", "exits", "turnBack", "duplicatePeople"] 多选,如['enter', 'exits'],可选值列出的是部分值,更多值请参照下面index参数说明
date string 日期范围 格式:'2000-01-01 - 2000-12-31';请注意中间的空格,当时间粒度为'hour'时,日期范围不超过7天
index参数说明
基础客流
  • passBy 经过人数
  • enter 进入人数
  • exits 离开人数
  • turnBack 折返人数
  • duplicatePeople 重复客流人数
  • deDuplicateEnter 去重后进入人数
  • deDuplicateExit 去重后离开人数
表情/性别/年龄
  • surprised 表情惊讶
  • panic 表情害怕
  • happy 表情高兴
  • angry 表情愤怒
  • male/female 男性/女性
  • kid/child/teenager/young/prime/middle/middleAged/old 儿童(0-6)/少年(7-14)/青少年(15-17)/青年(18-24)/壮年(25-34)/中年(35-56)/中老年(57-67)/老年(68+)
穿戴特征
  • hat_not/hat_yes 不戴帽子/戴帽子
  • hat_helmet 戴头盔
  • mask_not/mask_yes 不戴口罩/戴口罩
PS:如摄像机无该查询指标功能,获取到的数据将是0

请求示例

{
    "types": 1,
    "site": [53, 63],
    "size": "day",
    "index": ["enter", "exits"],
    "date": "2023-04-01 - 2023-04-03"
}
                

返回示例

{
    "code": 1,
    "msn": {
        "KKmail": [
            {
                "times": "2022-04-01T00:00:00+08:00",
                "enter__sum": 910,
                "exits__sum": 854
            },
            {
                "times": "2022-04-02T00:00:00+08:00",
                "enter__sum": 1603,
                "exits__sum": 1585
            },
            {
                "times": "2022-04-03T00:00:00+08:00",
                "enter__sum": 1325,
                "exits__sum": 1298
            }
        ],
        "万服大厦": [
            {
                "times": "2022-04-01T00:00:00+08:00",
                "enter__sum": 1733,
                "exits__sum": 1566
            },
            {
                "times": "2022-04-02T00:00:00+08:00",
                "enter__sum": 1875,
                "exits__sum": 1823
            },
            {
                "times": "2022-04-03T00:00:00+08:00",
                "enter__sum": 1556,
                "exits__sum": 1533
            }
        ]
    }
}
获取车流量实时数据
GET

请求URL:/wanf-api/vehicle-real-data/?date=2024-03-23&site=85&page_size=1000

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Query参数

参数名 类型 描述 必填 可选值 备注
date String 日期,示例值: '2024-03-23'
site String 二级组织ID,如场所ID
tag String 三级组织(区域)ID 单选,传入区域ID时只查询该区域关联的设备数据;不传则查询该场所下所有main=1的主设备数据
page_size String 每页数据的条数,默认15条,最大1000条
page String 可通过返回数据中的'next'或'previous'跳转上一页/下一页,也可以直接携带此参数跳转至指定页码

返回示例

{
    "count": 4388,
    "next": "http://192.168.1.6/wanf-api/vehicle-real-data/?date=2024-03-18&page=593&page_size=2&site=85",
    "previous": "http://192.168.1.6/wanf-api/vehicle-real-data/?date=2024-03-18&page=591&page_size=2&site=85",
    "results": [
        {
            "sn": "2102412504WLM1001589",
            "uuid": "be766e22-4e5a-b0e9-82ce-3ac834a8aaca",
            "target_type": 7,
            "lane_no": 2,
            "vehicle_type": "微型面包车",
            "vehicle_color": "银色",
            "vehicle_brand": "五菱",
            "vehicle_sub_brand": "五菱宏光",
            "vechicle_year_brand": "2010",
            "move_direction": "向上",
            "plate_char": "贵AH96**",
            "plate_color": "蓝底白字",
            "plate_type": "单层蓝牌",
            "shot_time": "2024-03-18T17:00:16.544000+08:00",
            "plate_img": null,
            "vehicle_img": null,
            "panorama_img": null
        },
        {
            "sn": "2102412504WLM1001589",
            "uuid": "be766e22-4e5a-b0e9-82ce-3ac834a8aaca",
            "target_type": 7,
            "lane_no": 1,
            "vehicle_type": "中卡",
            "vehicle_color": "白色",
            "vehicle_brand": "厢式车",
            "vehicle_sub_brand": "厢式车",
            "vechicle_year_brand": "未知",
            "move_direction": "向上",
            "plate_char": "鄂A970**",
            "plate_color": "蓝底白字",
            "plate_type": "单层蓝牌",
            "shot_time": "2024-03-18T17:00:07.904000+08:00",
            "plate_img": null,
            "vehicle_img": null,
            "panorama_img": null
        }
    ]
}
                

PS:如提供错误的值或没有权限都将返回一个空的列表或错误响应。因该接口数据量较大,每天请求量被限制为100次

获取车流量分类统计数据
POST

请求URL:/wanf-api/vehicle-counting-data/

认证方式:Token 或 Session 认证,匿名用户拒绝访问

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
site Array 场所ID [2] 单值
size Array 查询的时间粒度 ["hour", "day", "week", "month", "year"] 单值,hour:小时,day:天,week:周,month:月,year:年
date Array 日期范围 格式:'2000-01-01 - 2000-12-31';请注意中间的空格,当时间粒度为'hour'时,日期范围不超过7天
vehicleType Array 过滤条件(车辆类型编号) 通过云平台页面获取,菜单路径:首页-配置中心-车辆属性-车辆类型, 多选,如[1, 2, 3, 4, 5], 车辆类型对应的编号, 非ID。不传该参数将查询所有车型
laneNo Array 过滤条件(车道编号) [1, 2, 3, 4, 5, 6] 多选,如[1, 2, 3], 将只查询选择的车道车辆。不传该参数将查询所有车道
moveDirection Array 过滤条件(行驶方向) [0, 1, 2, 3, 4] 多选,如[1, 2, 3], 不传该字段参数将查询所有方向。0:未知,1:向左,2:向右,3:向上,4:向下
plateType Array 过滤条件(车牌类型编号) 通过云平台页面获取,菜单路径:首页-配置中心-车辆属性-车牌类型, 多选,如[1, 2, 3, 4, 5], 车牌类型对应的编号, 非ID。不传该参数将查询所有车牌类型
tag Array 三级组织(区域)ID 多选,如[1, 2],传入区域ID时只查询这些区域关联的设备数据;不传则查询该场所下所有main=1的主设备数据。支持按区域分组统计(annotates传organization_tag)
annotates Array 分类统计条件(查询结果按该条件分类统计) ["vehicle_type", "move_direction", "plate_type", "lane_no", "plate_char", "organization_tag"] 单选,如['vehicle_type'],不传该参数将按时间分组。可选值分别对应:[车辆类型,行驶方向,车牌类型,车道,车牌号,区域分组]

请求示例

{
    "site": [72],
    "size": ["day"],
    "date": ["2023-07-06 - 2023-07-06"],
    "vehicleType": [2, 9, 11, 30],
    "laneNo": [1, 2, 3, 4],
    "moveDirection": [0, 1, 2, 3, 4],
    "plateType": [0, 1, 2, 3, 4, 5, 6],
    "annotates": ["vehicle_type"],
    "tag": [1, 2]
}
                

返回示例

{
    "code": 1,
    "msn": [
        {
            "times": "2023-07-06T00:00:00+08:00",
            "annotates": [
                [
                    11,
                    18
                ],
                [
                    30,
                    14
                ],
                [
                    2,
                    1
                ]
            ]
        }
    ]
}

PS:返回示例中,annotates字段中的[11, 18]为时间段内的统计结果,11代表分组条件中的对应编号,在上方示例中代表'泥头车-渣土车',18代表该车型的数量

按车牌号分组统计时,日期范围不得超过1天

获取剩余车位
POST

请求URL:/wanf-api/parking-spaces-data/

认证方式:Token 或 Session 认证,匿名用户拒绝访问

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
site Integer 场所ID

请求示例

{
    "site": 85
}

返回示例

{
    "code": 1,
    "msn": {
        "site_up": 120,
        "site_down": 150,
        "site_parking": 500,
        "site_remaining": 470,
        "regions": [
            {
                "tag": "A区",
                "up": 50,
                "down": 60,
                "remaining": 90
            }
        ]
    }
}

PS:上行(3)表示离开,下行(4)表示进入;剩余车位 = 停车位总数 - (进入数 - 离开数),最小为0

获取排队定时数据
POST

请求URL:/wanf-api/person-queue-timing/

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
site String/Integer 场所ID
size String 查询的时间粒度 ["hour", "day", "week", "month", "year"] 单值,hour:小时,day:天,week:周,month:月,year:年
date String 日期范围 格式:'2000-01-01 - 2000-12-31';请注意中间的空格,当时间粒度为'hour'时,日期范围不超过7天

请求示例

{
    "site": 88,
    "size": "hour",
    "date": "2024-04-25 - 2024-04-27"
}
                

请求成功返回数据结构

参数名 类型 描述 必填 可选值 备注
code Integer 状态码,请求成功返回1,错误返回2
msn Object 返回错误信息或成功数据,如该场所下所有设备的数据统计结果 下级为'设备识别码'对象
设备识别码 Object 该设备下查询日期范围内的数据统计结果 下级为'时间段数据'数组
时间段数据 Array 该时间段的数据统计结果 下级为'区域统计数据'数组
区域统计数据 Array 数据结构:[区域id,该时间段总人数,平均停留时间,[[停留时间等级1, 人数],[停留时间等级2, 人数]]] 停留时间等级在摄像机中配置,最多有4个

返回示例

{
    "code": 1,
    "msn": {
        "e8:a0:ed:81:fa:00": {
            "2024-04-27T09:00:00+08:00": [
                [
                    1,
                    0,
                    0,
                    [
                        [
                            2,
                            0
                        ],
                        [
                            10,
                            0
                        ],
                        [
                            60,
                            0
                        ],
                        [
                            120,
                            0
                        ]
                    ]
                ],
                [
                    2,
                    0,
                    0,
                    [
                        [
                            2,
                            0
                        ],
                        [
                            10,
                            0
                        ],
                        [
                            60,
                            0
                        ],
                        [
                            120,
                            0
                        ]
                    ]
                ]
            ]
        }
    }
}
获取排队区域信息
GET

请求URL:/wanf-api/person-queue-area/?sn=e8:a0:ed:00:fa:ce&ruleid=1

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Query参数

参数名 类型 描述 必填 可选值 备注
sn String 设备识别码 一般为设备Mac、SN,不同设备类型可能不同
ruleid String 排队区域ID 如果不传该参数,将返回查询设备的所有排队区域,否则只返回等于ruleid值的区域

返回示例

[
    {
        "ruleid": 1,
        "name": "数码区",
        "organization": 53,
        "device": 42
    }
]
                

PS:如提供错误的值或没有权限都将返回一个空的列表或错误响应

获取实时排队数据
POST

请求URL:/wanf-api/queue-realtime-data/

认证方式:Token 或 Session 认证,匿名用户拒绝访问

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
site Integer 场所ID

请求示例

{
    "site": 53
}

返回示例

{
    "code": 1,
    "msn": {
        "site_enter": 1520,
        "site_exits": 1480,
        "site_stay": 40,
        "region_count": 3,
        "regions": [
            {
                "name": "数码区",
                "peopleNum": 25,
                "max_visitors": 50,
                "waitTime": 420,
                "waitTimeMin": 7.0,
                "saturation": 50.0,
                "comfort": "适中"
            }
        ]
    }
}

PS:peopleNum为区域当前人数,waitTime为预计排队秒数,waitTimeMin为分钟数,saturation为饱和度百分比,comfort为舒适度等级(舒适/适中/拥挤/饱和)

获取热度图合成图
POST

请求URL:/wanf-api/heatmap-overlay/

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

认证方式:Token 或 Session 认证,匿名用户拒绝访问

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
zone_id String/Integer 区域ID 对应排队区域的标识ID
date String 日期 格式:'2024-03-23'
size String 数据类型 ['people','time'] 默认为'people',表示基于客流数据生成热度图;'time'表示基于停留时长生成热度图
colormap String 颜色映射方案 jet 默认为'jet',可选值请参考matplotlib颜色映射表
overlay_alpha Integer 合成图透明度 0-255 默认为180,数值越大热度图越不透明

请求示例

{
    "zone_id": 1,
    "date": "2024-03-23",
    "size": "people",
    "colormap": "jet",
    "overlay_alpha": 180
}

返回示例

{
    "code": 1,
    "msn": "success",
    "image_base64": "iVBORw0KGgoAAAANSUhEUgAA..."
}

PS:如提供错误的值或没有权限都将返回错误响应,image_base64为Base64编码的合成图PNG数据

销售数据推送
POST

请求URL:/wanf-api/sales-data-push/

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

认证方式:Token 或 Session 认证,匿名用户拒绝访问

Body参数:支持表单或json格式提交

参数名 类型 描述 必填 可选值 备注
site_id Integer 场所ID
transaction_time String 交易时间 格式:%Y-%m-%d %H:%M:%S 或 %Y-%m-%d,不传则默认为当前时间
transaction_count Integer 交易笔数 0
transaction_amount Float 交易额 0
customer_count Integer 顾客人数
discount_amount Float 优惠金额 0
refund_amount Float 退款金额 0
category_data JSON 品类数据 JSON格式,如:{'食品': 100, '饮料': 50}
store_code String 门店编号
store_name String 门店名称 不传则默认为场所名称

请求示例

{
    "site_id": 53,
    "transaction_time": "2026-04-14 10:30:00",
    "transaction_count": 15,
    "transaction_amount": 2580.50,
    "customer_count": 12
}

返回示例

{
    "code": 1,
    "msn": {
        "id": 123,
        "transaction_time": "2026-04-14 10:30:00"
    }
}
重置Token
POST

请求URL:/wanf-api/reset-token/

Header参数:Authorization:'token 28bc3af04f32e53ced4d123405f1afb3c8810418',token值由API接口获取

Query参数

参数名 类型 描述 必填 可选值 备注

返回示例

{
    "code": 1,
    "msn": "token重置成功!"
}
重要说明:因云服务器带宽费用高昂,故设置有限流措施,匿名用户30次/天,认证用户20次/分钟

陆续更新中…… 期待您的宝贵建议和意见!