Car Counter is a type of parking sensor which detects cars moving over and send number of detections to an Nwave Cloud. Car Counters are useful when there is no need to know which exctly parking spaces are occupied, but information about of total occupied/free spaces in a parking area is needed.
Car Counters Parking Structure
Nwave Parking structure constists of hierarhy objects called Projects, Zones, Levels, Groups and Positions. The Project is a required highest level object of the hierarchy. You can unite a few Zones in a project and give an access for a user only to this project or set of project.
Zone represent a single parking and it is required too.
Level is an optional object of parking hierarchy. You can add it to a Zone if your parking has more than one floor.
Group allows you to unite Positions inside and describe low-levels areas in a Zone or Level. Group must be added to a Level or to a Zone directly. Moreover, Groups allows to set a type of parking area. In case of using Car Counters, the Groups Type should be set to “Standalone Car Counter”.
Positions should be placed in the Groups. One position can be placed only in a single Group. But in case of using Car Counters, sensor’s counter data can be applied to two groups whena sensor is placed in a transition between groups. This behavior can be set with help of Nwave Team. Please contact us for more information.
All these hierarchy objects helps to describe a parking and allows you to place Positions in the correct hierarchy. For example, if you want to describe a plane parking with 2 areas “Simple spaces” and “EV charging spaces”, then you can register hierarchy like this:
Project: My Parking Project
Zone: My Plane Parking
Group: Simple Spaces
Position: Entrance to parking lot
Position: Transition to EV charging area
Group: EV charging spaces
Position: Transition to Simple Spaces area
Position: Exit from parking lot
In case when you have to describe multi-storey car parking (MSCP) with 3 floors, you can use Levels:
Project: My Parking Project
Zone: My MSCP
Level: Floor 0
Group: Floor 0 Group
Position: Entrance to MSCP
Position: Exit from MSCP
Position: Transition to Floor 1
Level: Floor 1
Group: Floor 1 Group
Position: Transition to Floor 2
Position: Transition to Floor 0
Level: Floor 2
Group: Floor 2 Group
Position: Transition to Floor 1
You can read more about Nwave Parking Hierachy object adding in the following documentation:
Final car counter zone configuration only with help of Nwave Support. Please, contact to manager to getting car counter zone configured.
API
Before using API you need to create Authorization Token using this instructions Generating Authorization Tokens
Analytics API
Realtime Occupancy Summary
URL: https://api.nwave.io/analytics/v1/car_counters/realtime/occupancy_summary
Method: GET
Query arguments:
group_by - grouping result by project/zone/level/group. Allowed values:
project
,zone
,group
,level
project_id - one or many project IDs
zone_id - one or many zone IDs
level_id - one or many level IDs
floor_number - one or many floor numbers
group_id - one or many group IDs
group_custom_id - one or many group custom IDs
order_by - ordering key. Allowed values:
name
,occupied
. Default:name
order_direction - ordering by ascending or descending. Allowed values:
asc
,desc
. Default:asc
pagination:
limit - max number of objects in the response. Default:
100
offset - number of skipped objects from the beginning of result. Default:
0
Example:
Requesting current occupancy of all groups in zone with ID 123:
curl --request GET 'https://api.nwave.io/analytics/v1/car_counters/realtime/occupancy_summary?group_by=group&zone_id=123' --header 'x-Auth-Token: XXXXXXXXXXXX'
Occupancy History
URL: https://api.nwave.io/analytics/v1/car_counters/history/chart/raw
Method: GET
Query arguments:
group_by - grouping result by project/zone/level/group. Allowed values:
zone
date_from - UTC timestamp. Example:
2023-01-10
date_till - UTC timestamp. Example:
2023-01-10
project_id - one or many project IDs
zone_id - one or many zone IDs
level_id - one or many level IDs. Pass 0 to select groups out of level (directly in zone).
order_by - ordering key. Allowed values:
name
,occupied
. Default:name
order_direction - ordering by ascending or descending. Allowed values:
asc
,desc
. Default:asc
pagination:
limit - max number of objects in the response. Default:
100
offset - number of skipped objects from the beginning of result. Default:
0
Example:
Requesting zone occupancy zone with ID 123 between 2022 Dec 10 and 2023 Jan 10:
curl --location --request GET 'https://api.nwave.io/analytics/v1/car_counters//history/chart/raw?group_by=zone&zone_id=123&date_from=2022-12-20&date_till=2023-02-10' --header 'x-Auth-Token: XXXXXXXXXXXX'
Additional Materials
….