Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

As an illustrative example of potential use cases, please find below a mapping of specific dashboard charts to the corresponding APIs described earlier.

...

Authorization with Header Tokens

The Nwave Parking Analytics API employs header token authorization for secure access.

...

For a comprehensive guide on authorization, including detailed information and steps, please refer to the provided documentation.

Unobvious features

Handling Date/Time Filters and Grouping Intervals

When working with the Nwave Parking Analytics API, it's important to understand how date/time filters are processed, especially when using the group_by_interval option. Here are some key considerations:

...

With group_by_interval=day, the request contains data about the entry of one car on Monday and the second car on Tuesday, reflecting the local time differences.

API Description

Parking Space States API

The Parking Space States API provides real-time data on the current occupancy of selected parking spaces, along with optional filters. These filters include:

...

For more detailed information about the Parking Space States API, please refer to the API documentation.

Current Occupancy Summary API

The Current Occupancy Summary API offers a comprehensive set of options for grouping and filtering information about current parking space occupancy. This API provides concise information about parking objects, including counts of occupied and free spaces.

Filters

The API supports various filters, including:

  • Project

  • Project ID

  • Zone

  • Zone ID

  • Level

  • Level ID

  • Floor Number

  • Group

  • Group ID

  • Custom ID

  • Position

  • Network ID

  • Label Name

  • Occupancy Status

Grouping and Ordering Options

Additionally, this API allows you to configure grouping and ordering options:

...

Order Direction:

  • Ascending

  • Descending

Example API Request

Here is an example of how to call the API to retrieve information about the occupancy of Electric Vehicle (EV) spaces in Zone 123, grouped by levels:

Code Block
languagebash
curl -H 'x-Auth-Token: 1234567890ABCDEF' 'https://api.nwave.io/analytics/v1/realtime/occupancy_summary?zone_id=123&labels=EV&group_by=level

API Response

The API response provides a summary of occupancy data, including counts of total, occupied, available, and undefined spaces, grouped by levels.

...

For more in-depth details and usage examples, please refer to the API documentation.

History of Completed Parking Sessions API

The History of Completed Parking Sessions API provides a list of filtered parking session objects, allowing you to retrieve detailed information about past parking sessions. You can filter sessions using various parameters, including:

  • Project

  • Project ID

  • Zone

  • Zone ID

  • Level

  • Level ID

  • Floor Number

  • Group

  • Group ID

  • Custom ID

  • Position

  • Network ID

  • Label Name

  • Occupancy Status

  • Session Start Time

  • Session End Time

  • SDI Tag ID

Pagination Options

The API also supports pagination to help manage large datasets:

  • limit (default value - 100): Specifies the number of objects to return per request.

  • offset (default value - 0): Determines the offset from the beginning of the objects list.

Example API Request

Here's an example of how to call the API to retrieve parking session data with a limit of 300 and an offset of 300:

Code Block
languagebash
curl -v -H 'x-Auth-Token: 1234567890ABCDEF' 'https://api.nwave.io/analytics/v1/history/sessions?limit=300&offset=300'

API Response

The API response includes a slice of parking session data, with details such as the parking session UUID, involved positions, session start and end times, and authorization information.at:

...

For more comprehensive details and usage examples, please refer to the API documentation.

Historic Utilization Statistics API

The Historic Utilization Statistics API provides access to data aggregated in various ways, including Average Utilization. This API allows you to retrieve average utilization data for selected positions, labels, groups, levels, zones, or projects over specific time periods. Utilization is calculated based on the occupation time of the selected positions.

Average Utilization

Info

The Average Utilization API returns the average utilization for the chosen period. For instance, if you want to determine the utilization of a zone that contains 10 positions over a 4-hour period, where:

  • 5 positions were occupied continuously

  • 2 positions were occupied for 3 hours

  • 3 positions remained unoccupied

The utilization is calculated as follows: ((5 * 4) + (2 * 3)) / (10 * 4) = 65%

Filters

The Utilization History API offers a range of filters to customize your queries:

  • Project

  • Project ID

  • Zone

  • Zone ID

  • Level

  • Level ID

  • Floor Number

  • Group

  • Group ID

  • Custom ID

  • Position

  • Network ID

  • Label Name

  • Days of the Week: Allows you to calculate utilization exclusively on working days.

  • Date Period: Specify the desired time range.

  • Calculation Hours Window: Define the time window within which calculations are performed (e.g., between 8:00 AM and 6:00 PM).

Pagination Options

To manage large datasets, the API supports pagination:

  • limit (default value - 100): Determines the number of objects to return per request.

  • offset (default value - 0): Specifies the offset from the beginning of the objects list.

Example API Request

Below is an example of an API request to retrieve utilization data:

Code Block
languagebash
curl -v -H 'x-Auth-Token: 1234567890ABCDEF' 'https://api.nwave.io/analytics/v1/history/aggregate/avg?group_by=zone&date_from=2021-07-12&date_till=2021-07-13&control_hours_from=08:00:00&control_hours_till=18:00:00&day_of_week=mon&day_of_week=tue'

API Response

The structure of the API response depends on the chosen grouping option, such as position, label, group, level, zone, or project. It includes utilization data corresponding to the specified parameters.

...

For more detailed information and usage examples, please refer to the API documentation.

Utilization History API

The Utilization History API provides a historical record of utilization data for individual parking positions or groups of positions based on labels, groups, levels, zones, or projects. Utilization data can be aggregated over various time periods, making it a valuable tool for understanding parking space usage.

Aggregation Time Periods

The API allows you to aggregate utilization data over the following time intervals:

  • 5 minutes

  • 10 minutes

  • 15 minutes

  • 20 minutes

  • 30 minutes

  • 1 hour

  • 2 hours

  • 3 hours

  • 4 hours

  • 6 hours

  • 12 hours

  • 1 day

  • 1 week

Filters

To tailor your utilization history queries, the API offers a wide range of filters, including:

  • Project

  • Project ID

  • Zone

  • Zone ID

  • Level

  • Level ID

  • Floor Number

  • Group

  • Group ID

  • Custom ID

  • Position

  • Network ID

  • Label Name

  • Days of the Week: Allows you to calculate utilization for specific days of the week (e.g., working days from Monday to Friday).

  • Date Period: Specify the desired time range.

  • Calculation Hours Window: Define the time window for utilization calculations (e.g., between 8:00 AM and 6:00 PM).

Pagination Options

To manage large datasets efficiently, the API supports pagination with the following options:

  • limit (default value - 100): Specifies the number of objects to return per request.

  • offset (default value - 0): Determines the offset from the beginning of the objects list.

Example API Request

Here is an example of an API request to retrieve utilization data, grouped by zones and aggregated on an hourly basis:

Code Block
curl -v -H 'x-Auth-Token: 1234567890ABCDEF' 'https://api.nwave.io/analytics/v1/history/chart/avg?group_by=zone&group_by_interval=hour&date_from=2021-07-12&date_till=2021-07-13'

API Response

The structure of the API response depends on the chosen grouping option, such as position, label, group, level, zone, or project. It includes meaningful fields like datetime, sessions_count, occupied_spaces_count, and utilization. The object structure corresponds to the chosen grouping type.

...

For comprehensive details and additional usage examples, please refer to the API documentation.

Utilization Heatmap API

The Utilization Heatmap API provides data that can be used to create heatmaps, where the color intensity of each square corresponds to the utilization value (ranging from 0 to 100).

Aggregation Options

The utilization history can be grouped by project, zone, level, group, position and label.

You can also aggregate data over different time periods:

  • Day

  • Hour

Filters

To tailor your heatmap data, the API offers several filters:

  • Project

  • Project ID

  • Zone

  • Zone ID

  • Level

  • Level ID

  • Floor Number

  • Group

  • Group ID

  • Custom ID

  • Position

  • Network ID

  • Label Name

  • Date Period

  • Days of the Week: Allows you to calculate utilization exclusively on working days (e.g., Monday to Friday).

  • Calculation Hours Window: Specify the hours during which calculations are performed (e.g., between 8:00 AM and 6:00 PM).

Pagination Options

For effective data management, the API supports pagination:

  • limit (default value - 100): Specifies the number of objects to return per request.

  • offset (default value - 0): Determines the offset from the beginning of the objects list.

Example API Request

Here's an example API request to retrieve utilization data, grouped by zones and aggregated on an hourly basis:

Code Block
languagebash
curl -v -H 'x-Auth-Token: 1234567890ABCDEF' 'https://api.nwave.io/analytics/v1/history/heatmap?group_by=zone&group_by_interval=hour&date_from=2021-07-12&date_till=2021-07-13'

API Response

The API response includes data suitable for generating heatmaps. It provides information about zones, utilization percentages, week days, and specific times:

...

For comprehensive details and additional usage examples, please refer to the Utilization Heatmap API documentation.

Parking Session Duration API [Under Construction]

The Session Duration History API, currently under construction, will provide a historical record of parking session durations. This data can be grouped by various criteria, including project, zone, level, group, position, and label.

Filters

Once completed, this API will offer a range of filters to refine your queries:

  • Project

  • Project ID

  • Zone

  • Zone ID

  • Level

  • Level ID

  • Floor Number

  • Group

  • Group ID

  • Custom ID

  • Position

  • Network ID

  • Label Name

  • Date Period

  • Days of the Week: Will allow you to calculate session durations specifically for working days.

  • Calculation Hours Window: Will enable calculations within specified hours (e.g., between 8:00 AM and 6:00 PM).

Example API Request

Once completed, you will be able to make API requests to retrieve session duration data. An example request might look like this:

Code Block
languagebash
curl -v -H 'x-Auth-Token: 1234567890ABCDEF' 'https://api.nwave.io/analytics/v1/history/aggregate/session_duration/avg?group_by=zone&date_from=2021-07-12&date_till=2021-07-13'

API Response

The API response, when fully implemented, will provide data about session durations suitable for analysis. It may include information about zones, timestamps, and session durations in minutes.

...