Object Analytics

Concepts
Records (Per-Object-Per-Detection-Zone)
Samples
Data Structure
Record
ID | UUID of the object |
Type | Type of object: vehicle, pedestrian, cyclist, railcar, aircraft, animal, unclassified |
Classification | Classification of the object. The sensing technology provides this value. |
Length / Width / Height | The size of the object, in meters, captured at ingress of the zone |
Headway / Gap | The time between travelers entering a zone. These values are computed by the Integrator-AI. The strategy used by the sensing technology is also considered in this calculation as each sensing technology measures object zone occupancy differently. Our system will unify the measurements between all of them to ensure consistent and accurate measurements no matter what strategy the technology uses. Headway - measured from object front to object front Gap - measured from object back to object front Both metrics will only measure between objects of the same type |
zone | ID of the zone |
speed | Speed of the object, in meters per second, captured at ingress of the zone |
axles | Count of axles, captured at ingress of the zone |
dwell | How long, in milliseconds, the object occupied the zone |
ingress.timestamp | Unix timestamp, in milliseconds, of when the object entered the zone |
ingress.position | Contains latitude and longitude position, in decimal degrees, where the object entered the zone |
ingress.heading | Angle of the object, in radians, when it entered the zone. 0 is north |
egress.timestamp | Unix timestamp, in milliseconds, of when the object exited the zone |
egress.position | Contains latitude and longitude position, in decimal degrees, where the object exited the zone |
egress.heading | Angle of the object, in radians, when it exited the zone. 0 is north |
Sample
Volume | Total number of uniquely new objects that entered a zone. Objects will only be counted once across all sample periods and only on ingress of the zone |
Speed | How fast travelers are moving |
Length / Width / Height | The size of travelers |
Headway / Gap | The time between travelers entering a zone |
Dwell | How long travelers occupy a zone |
Occupancy | The total time that the zone was occupied during the sample period. The image below may help with understanding how this value is calculated ![]() |
Types | All the same data as above but broken down by object type (vehicle, pedestrian, cyclist, etc.). The data represented in each type set only includes objects of that type. So for example, even though many other object types may have occupied a zone, the occupancy time of that zone will be calculated only with objects of the same type |
Classifications | All the same data as above but broken down by object classification (as reported by the sensor technology). The data represented in each classification set only includes objects of that classification. So for example, even though many other object classification may have occupied a zone, the occupancy time of that zone will be calculated only with objects of the same classification |
User Interface
Sample Page

- Number of new unique objects for the displayed sample period
- Start time of the displayed sample period
- End time of the displayed sample period
- Time until the next sample period
- Sample group data, you can pick zones or aggregated
- Counts by traveler type (Integrator-AI)
- Counts by traveler classification (Sensor)
Actions
- Dark blue: recall buttons, which allow you to navigate between sample periods
- Purple: view the most recently completed sample period
- Red: manually delete data
- Green: settings and reports
- Per object movement list from the sample period
Reports
- The report type you want to download
- Start date and time for the range of data
- Sub data type (if available for that report. mean, median, 85th percentile, etc.)
- The output format you want
- End date and time for the range of data
- Generate the report for download
- Bin size - how to split the data up in the report

Settings

- Enable/disable the application
- Time period (duration) for the samples shown in the GUI. Default of 900 seconds (15 minutes) but you can set this as low as you want. Unlike the previous version, it now has no impact on how the data is collected or generated which means you can change this at anytime.
- Monitored zones. These are the zones that Object Analytics will collect data on. An aggregate group will be created automatically to combine all the selected zone data into an overall view. For intersections you should choose: stop bar and crosswalk zones. For highways you should choose: one zone per lane
- Maximum age for data. Any data older than this value will be deleted automatically. A value of 0 disables this function, and all data will be retained forever

- Enable/disable the application
- Time period (duration) for the samples shown in the GUI. Default of 900 seconds (15 minutes) but you can set this as low as you want. Unlike the previous version, it now has no impact on how the data is collected or generated which means you can change this at anytime.
- Monitored zones. These are the zones that Object Analytics will collect data on. An aggregate group will be created automatically to combine all the selected zone data into an overall view. For intersections you should choose: stop bar and crosswalk zones. For highways you should choose: one zone per lane
- Lock cars to first zone they encounter
- Maximum age for data. Any data older than this value will be deleted automatically. A value of 0 disables this function, and all data will be retained forever
- Custom Classes. These are custom classifications
Reports
Taking advantage of our per-object-per-detection-zone records, we can generate many different kinds of reports.
Time bins are a powerful and widely supported reporting feature. They take your individual records and organize them into the time intervals you specify. For example: Set the time bin to 15 minutes to see volume counts neatly grouped into 15-minute periods. This simple grouping makes it much easier to identify trends and observe how data changes over time. Most of our reports support a time bin setting.
Volume | Object counts |
Occupancy | Provides information on how long a zone was occupied. This report supports the following subtypes: time - total time the zone was occupied percent - percentage of time the zone was occupied |
Speed | Provides information on object speed. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed 85th - 85th percentile value 15th - 15th percentile value |
Length | Provides information on object lengths. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed |
Width | Provides information on object widths. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed |
Height | Provides information on object heights. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed |
Headway | Provides information on object headways. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed |
Gap | Provides information on object gaps. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed |
Dwell | Provides information on object dwell times. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed |
Axles | Provides information on object axle counts. This report supports the following subtypes: mean - average value median - middle value max - max value observed min - smallest value observed |
Chronology | Per-object-per-zone zone records |
Custom Classes | Custom class report |
REST API
/api/app/object-analytics | Settings | GET, PUT | Application configurations |
/api/app/object-analytics/records | Raw data | GET, DELETE | Access and management of raw data |
/api/app/object-analytics/samples | Aggregate data | GET | Generates a summary of statistics per-sample (this is the endpoint that the GUI uses) |
/api/app/object-analytics/report/* | Report | GET | Aggregate data with selectable output formats and time bin sizes |
PUT /api/app/object-analytics
PUT /api/app/object-analytics HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
{"settings":{"enabled":true,"time-period":30,"zones":[24,25,26,27],"db":{"limit":{"age":0}},"advanced":{"min-lifespan":150}}}
HTTP/1.1 200 OK
Content-Type: application/json
settings.enabled boolean | Enable/disable the application |
settings.time-period number | Time, in seconds, for a sample period. Default is 900 seconds (15 minutes) |
settings.zones array[number] | A list of zone ID's to include in the aggregated data group. For intersections you should include crosswalks and stopbar zones only. For highways, just the travel lanes |
settings.db.limit.age number | Oldest age, in seconds, for stored samples. Any sample that is older than this age will be erased. A value of 0 indicates that there is no limit, and samples will be retained forever |
settings.advanced.min-lifespan number | Minimum lifespan an object must exist to be included in a sample. Helps filter out some noise from perception. Value is in milliseconds |
GET /api/app/object-analytics
GET /api/app/object-analytics HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
HTTP/1.1 200 OK
Content-Type: application/json
{"app":{"name":"object-analytics","settings":{"_version_":[2,71],"advanced":{"min-lifespan":150},"db":{"advanced":{"min-lifespan":150},"limit":{"age":0}},"enabled":true,"time-period":30,"zones":[24,25,26,27]},"defaults":{"advanced":{"min-lifespan":0},"db":{"limit":{"age":0}},"enabled":false,"zones":null},"manifest":{"description":"Aggregates all object data to a central place for analytics","name":"Object Analytics","version":"1.0.0"}}}
GET /api/app/object-analytics/records?start={iso8601}&end={iso8601}
GET /api/app/object-analytics/records?start={iso8601}&end={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61start ISO8601 Date & Time | Start time of the range to search /api/app/object-analytics/records?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End time of the range to search /api/app/object-analytics/records?end=2025-06-16T12:15:30 |
HTTP/1.1 200 OK
Content-Type: application/json
{"records":[{"id":[4,1765823052617],"type":"vehicle","classification":"car","lwh":[4.39967155456543,1.9045064449310303,1.558181881904602],"speed":5.046957015991211,"headway":0,"gap":0,"dwell":2133,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823060217,"position":[42.35581588745117,-83.06690216064453]},"egress":{"timestamp":1765823062350,"position":[42.355857849121094,-83.06686401367188]}},{"id":[4,1765823052617],"type":"vehicle","classification":"car","lwh":[4.4531755447387695,1.8864558935165405,1.5629774332046509],"speed":4.9743523597717285,"headway":0,"gap":0,"dwell":2278,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823061333,"position":[42.355857849121094,-83.0668716430664]},"egress":{"timestamp":1765823063611,"position":[42.35589599609375,-83.06684875488281]}},{"id":[32,1765823056443],"type":"vehicle","classification":"car","lwh":[4.468292236328125,1.8930611610412598,1.6822701692581177],"speed":5.558854103088379,"headway":3005,"gap":2107,"dwell":32741,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823063222,"position":[42.3558235168457,-83.06690979003906]},"egress":{"timestamp":1765823095963,"position":[42.355892181396484,-83.06671142578125]}},{"id":[90,1765823085262],"type":"vehicle","classification":"car","lwh":[4.871607780456543,2.0230307579040527,1.9045602083206177],"speed":6.523082733154297,"headway":27884,"gap":27004,"dwell":6746,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823089217,"position":[42.35585403442383,-83.0669174194336]},"egress":{"timestamp":1765823095963,"position":[42.35591506958008,-83.06672668457031]}},{"id":[64,1765823066286],"type":"vehicle","classification":"truck","lwh":[5.891263484954834,2.2514395713806152,2.5658159255981445],"speed":0.6536338329315186,"headway":10127,"gap":9343,"dwell":26458,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823073350,"position":[42.35581970214844,-83.06690979003906]},"egress":{"timestamp":1765823099808,"position":[42.35588455200195,-83.06671142578125]}},{"id":[91,1765823085560],"type":"vehicle","classification":"car","lwh":[4.847478866577148,2.045687675476074,2.036525011062622],"speed":3.8770253658294678,"headway":0,"gap":0,"dwell":9842,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823091948,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823101790,"position":[42.35586166381836,-83.06670379638672]}},{"id":[171,1765823138011],"type":"vehicle","classification":"car","lwh":[4.377324104309082,1.9076818227767944,1.6777452230453491],"speed":6.460484504699707,"headway":68298,"gap":67032,"dwell":2967,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823160247,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823163214,"position":[42.355831146240234,-83.06673431396484]}},{"id":[171,1765823138011],"type":"vehicle","classification":"car","lwh":[4.364943504333496,1.8866900205612183,1.6319047212600708],"speed":4.25639009475708,"headway":0,"gap":0,"dwell":2005,"axles":0,"zone":{"id":23,"name":"EBR"},"ingress":{"timestamp":1765823162186,"position":[42.355831146240234,-83.06673431396484]},"egress":{"timestamp":1765823164191,"position":[42.35581970214844,-83.066650390625]}},{"id":[176,1765823149764],"type":"vehicle","classification":"car","lwh":[4.0828423500061035,1.8610484600067139,1.6853532791137695],"speed":6.763949871063232,"headway":2703,"gap":2015,"dwell":2139,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823162950,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823165089,"position":[42.355838775634766,-83.06670379638672]}},{"id":[187,1765823162648],"type":"vehicle","classification":"car","lwh":[4.154888153076172,1.8488913774490356,1.5366885662078857],"speed":12.135679244995117,"headway":91262,"gap":82656,"dwell":763,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823164612,"position":[42.3558235168457,-83.06690216064453]},"egress":{"timestamp":1765823165375,"position":[42.355892181396484,-83.06670379638672]}},{"id":[176,1765823149764],"type":"vehicle","classification":"car","lwh":[4.094836711883545,1.85102117061615,1.6803605556488037],"speed":5.119199275970459,"headway":2155,"gap":1127,"dwell":1048,"axles":0,"zone":{"id":23,"name":"EBR"},"ingress":{"timestamp":1765823164341,"position":[42.355838775634766,-83.06670379638672]},"egress":{"timestamp":1765823165389,"position":[42.3558349609375,-83.06665802001953]}},{"id":[189,1765823163643],"type":"vehicle","classification":"car","lwh":[4.304990291595459,1.845689058303833,1.5399214029312134],"speed":5.339766025543213,"headway":75926,"gap":75210,"dwell":1545,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823165143,"position":[42.35585403442383,-83.06692504882812]},"egress":{"timestamp":1765823166688,"position":[42.355899810791016,-83.06684875488281]}}]}
GET /api/app/object-analytics/records?after={iso8601}
GET /api/app/object-analytics/records?after={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61after ISO8601 Date & Time | Fetch all records after this date/time /api/app/object-analytics/records?after=2025-06-16T12:15:30 |
HTTP/1.1 200 OK
Content-Type: application/json
{"records":[{"id":[4,1765823052617],"type":"vehicle","classification":"car","lwh":[4.39967155456543,1.9045064449310303,1.558181881904602],"speed":5.046957015991211,"headway":0,"gap":0,"dwell":2133,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823060217,"position":[42.35581588745117,-83.06690216064453]},"egress":{"timestamp":1765823062350,"position":[42.355857849121094,-83.06686401367188]}},{"id":[4,1765823052617],"type":"vehicle","classification":"car","lwh":[4.4531755447387695,1.8864558935165405,1.5629774332046509],"speed":4.9743523597717285,"headway":0,"gap":0,"dwell":2278,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823061333,"position":[42.355857849121094,-83.0668716430664]},"egress":{"timestamp":1765823063611,"position":[42.35589599609375,-83.06684875488281]}},{"id":[32,1765823056443],"type":"vehicle","classification":"car","lwh":[4.468292236328125,1.8930611610412598,1.6822701692581177],"speed":5.558854103088379,"headway":3005,"gap":2107,"dwell":32741,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823063222,"position":[42.3558235168457,-83.06690979003906]},"egress":{"timestamp":1765823095963,"position":[42.355892181396484,-83.06671142578125]}},{"id":[90,1765823085262],"type":"vehicle","classification":"car","lwh":[4.871607780456543,2.0230307579040527,1.9045602083206177],"speed":6.523082733154297,"headway":27884,"gap":27004,"dwell":6746,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823089217,"position":[42.35585403442383,-83.0669174194336]},"egress":{"timestamp":1765823095963,"position":[42.35591506958008,-83.06672668457031]}},{"id":[64,1765823066286],"type":"vehicle","classification":"truck","lwh":[5.891263484954834,2.2514395713806152,2.5658159255981445],"speed":0.6536338329315186,"headway":10127,"gap":9343,"dwell":26458,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823073350,"position":[42.35581970214844,-83.06690979003906]},"egress":{"timestamp":1765823099808,"position":[42.35588455200195,-83.06671142578125]}},{"id":[91,1765823085560],"type":"vehicle","classification":"car","lwh":[4.847478866577148,2.045687675476074,2.036525011062622],"speed":3.8770253658294678,"headway":0,"gap":0,"dwell":9842,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823091948,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823101790,"position":[42.35586166381836,-83.06670379638672]}},{"id":[171,1765823138011],"type":"vehicle","classification":"car","lwh":[4.377324104309082,1.9076818227767944,1.6777452230453491],"speed":6.460484504699707,"headway":68298,"gap":67032,"dwell":2967,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823160247,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823163214,"position":[42.355831146240234,-83.06673431396484]}},{"id":[171,1765823138011],"type":"vehicle","classification":"car","lwh":[4.364943504333496,1.8866900205612183,1.6319047212600708],"speed":4.25639009475708,"headway":0,"gap":0,"dwell":2005,"axles":0,"zone":{"id":23,"name":"EBR"},"ingress":{"timestamp":1765823162186,"position":[42.355831146240234,-83.06673431396484]},"egress":{"timestamp":1765823164191,"position":[42.35581970214844,-83.066650390625]}},{"id":[176,1765823149764],"type":"vehicle","classification":"car","lwh":[4.0828423500061035,1.8610484600067139,1.6853532791137695],"speed":6.763949871063232,"headway":2703,"gap":2015,"dwell":2139,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823162950,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823165089,"position":[42.355838775634766,-83.06670379638672]}},{"id":[187,1765823162648],"type":"vehicle","classification":"car","lwh":[4.154888153076172,1.8488913774490356,1.5366885662078857],"speed":12.135679244995117,"headway":91262,"gap":82656,"dwell":763,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823164612,"position":[42.3558235168457,-83.06690216064453]},"egress":{"timestamp":1765823165375,"position":[42.355892181396484,-83.06670379638672]}},{"id":[176,1765823149764],"type":"vehicle","classification":"car","lwh":[4.094836711883545,1.85102117061615,1.6803605556488037],"speed":5.119199275970459,"headway":2155,"gap":1127,"dwell":1048,"axles":0,"zone":{"id":23,"name":"EBR"},"ingress":{"timestamp":1765823164341,"position":[42.355838775634766,-83.06670379638672]},"egress":{"timestamp":1765823165389,"position":[42.3558349609375,-83.06665802001953]}},{"id":[189,1765823163643],"type":"vehicle","classification":"car","lwh":[4.304990291595459,1.845689058303833,1.5399214029312134],"speed":5.339766025543213,"headway":75926,"gap":75210,"dwell":1545,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823165143,"position":[42.35585403442383,-83.06692504882812]},"egress":{"timestamp":1765823166688,"position":[42.355899810791016,-83.06684875488281]}}]}
GET /api/app/object-analytics/records?before={iso8601}
GET /api/app/object-analytics/records?before={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61before ISO8601 Date & Time | Fetch all records before this date/time /api/app/object-analytics/records?before=2025-06-16T12:15:30 |
HTTP/1.1 200 OK
Content-Type: application/json
{"records":[{"id":[4,1765823052617],"type":"vehicle","classification":"car","lwh":[4.39967155456543,1.9045064449310303,1.558181881904602],"speed":5.046957015991211,"headway":0,"gap":0,"dwell":2133,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823060217,"position":[42.35581588745117,-83.06690216064453]},"egress":{"timestamp":1765823062350,"position":[42.355857849121094,-83.06686401367188]}},{"id":[4,1765823052617],"type":"vehicle","classification":"car","lwh":[4.4531755447387695,1.8864558935165405,1.5629774332046509],"speed":4.9743523597717285,"headway":0,"gap":0,"dwell":2278,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823061333,"position":[42.355857849121094,-83.0668716430664]},"egress":{"timestamp":1765823063611,"position":[42.35589599609375,-83.06684875488281]}},{"id":[32,1765823056443],"type":"vehicle","classification":"car","lwh":[4.468292236328125,1.8930611610412598,1.6822701692581177],"speed":5.558854103088379,"headway":3005,"gap":2107,"dwell":32741,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823063222,"position":[42.3558235168457,-83.06690979003906]},"egress":{"timestamp":1765823095963,"position":[42.355892181396484,-83.06671142578125]}},{"id":[90,1765823085262],"type":"vehicle","classification":"car","lwh":[4.871607780456543,2.0230307579040527,1.9045602083206177],"speed":6.523082733154297,"headway":27884,"gap":27004,"dwell":6746,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823089217,"position":[42.35585403442383,-83.0669174194336]},"egress":{"timestamp":1765823095963,"position":[42.35591506958008,-83.06672668457031]}},{"id":[64,1765823066286],"type":"vehicle","classification":"truck","lwh":[5.891263484954834,2.2514395713806152,2.5658159255981445],"speed":0.6536338329315186,"headway":10127,"gap":9343,"dwell":26458,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823073350,"position":[42.35581970214844,-83.06690979003906]},"egress":{"timestamp":1765823099808,"position":[42.35588455200195,-83.06671142578125]}},{"id":[91,1765823085560],"type":"vehicle","classification":"car","lwh":[4.847478866577148,2.045687675476074,2.036525011062622],"speed":3.8770253658294678,"headway":0,"gap":0,"dwell":9842,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823091948,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823101790,"position":[42.35586166381836,-83.06670379638672]}},{"id":[171,1765823138011],"type":"vehicle","classification":"car","lwh":[4.377324104309082,1.9076818227767944,1.6777452230453491],"speed":6.460484504699707,"headway":68298,"gap":67032,"dwell":2967,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823160247,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823163214,"position":[42.355831146240234,-83.06673431396484]}},{"id":[171,1765823138011],"type":"vehicle","classification":"car","lwh":[4.364943504333496,1.8866900205612183,1.6319047212600708],"speed":4.25639009475708,"headway":0,"gap":0,"dwell":2005,"axles":0,"zone":{"id":23,"name":"EBR"},"ingress":{"timestamp":1765823162186,"position":[42.355831146240234,-83.06673431396484]},"egress":{"timestamp":1765823164191,"position":[42.35581970214844,-83.066650390625]}},{"id":[176,1765823149764],"type":"vehicle","classification":"car","lwh":[4.0828423500061035,1.8610484600067139,1.6853532791137695],"speed":6.763949871063232,"headway":2703,"gap":2015,"dwell":2139,"axles":0,"zone":{"id":24,"name":"EBT-3"},"ingress":{"timestamp":1765823162950,"position":[42.35579299926758,-83.06689453125]},"egress":{"timestamp":1765823165089,"position":[42.355838775634766,-83.06670379638672]}},{"id":[187,1765823162648],"type":"vehicle","classification":"car","lwh":[4.154888153076172,1.8488913774490356,1.5366885662078857],"speed":12.135679244995117,"headway":91262,"gap":82656,"dwell":763,"axles":0,"zone":{"id":25,"name":"EBT-2"},"ingress":{"timestamp":1765823164612,"position":[42.3558235168457,-83.06690216064453]},"egress":{"timestamp":1765823165375,"position":[42.355892181396484,-83.06670379638672]}},{"id":[176,1765823149764],"type":"vehicle","classification":"car","lwh":[4.094836711883545,1.85102117061615,1.6803605556488037],"speed":5.119199275970459,"headway":2155,"gap":1127,"dwell":1048,"axles":0,"zone":{"id":23,"name":"EBR"},"ingress":{"timestamp":1765823164341,"position":[42.355838775634766,-83.06670379638672]},"egress":{"timestamp":1765823165389,"position":[42.3558349609375,-83.06665802001953]}},{"id":[189,1765823163643],"type":"vehicle","classification":"car","lwh":[4.304990291595459,1.845689058303833,1.5399214029312134],"speed":5.339766025543213,"headway":75926,"gap":75210,"dwell":1545,"axles":0,"zone":{"id":26,"name":"EBT-1"},"ingress":{"timestamp":1765823165143,"position":[42.35585403442383,-83.06692504882812]},"egress":{"timestamp":1765823166688,"position":[42.355899810791016,-83.06684875488281]}}]}
DELETE /api/app/object-analytics/records
DELETE /api/app/object-analytics/records HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
HTTP/1.1 200 OK
Content-Type: application/json
DELETE /api/app/object-analytics/records?start={iso8601}&end={iso8601}
DELETE /api/app/object-analytics/records?start={iso8601}&end={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
start ISO8601 | Start time of the range to search /api/app/object-analytics/records?start=2025-06-16T12:15:30 |
end ISO8601 | End time of the range to search /api/app/object-analytics/records?end=2025-06-16T12:15:30 |
HTTP/1.1 200 OK
Content-Type: application/json
DELETE /api/app/object-analytics/records?before={iso8601}
DELETE /api/app/object-analytics/records?before={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
before ISO8601 | Delete all samples before this date and time /api/app/object-analytics/records?before=2025-06-16T12:15:30 |
HTTP/1.1 200 OK
Content-Type: application/json
DELETE /api/app/object-analytics/records?after={iso8601}
DELETE /api/app/object-analytics/records?after={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
after ISO8601 | Delete all samples after this date and time /api/app/object-analytics/records?after=2025-06-16T12:15:30 |
HTTP/1.1 200 OK
Content-Type: application/json
GET /api/app/object-analytics/samples
GET /api/app/object-analytics/samples HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
q array | Request additional query information: /api/app/object-analytics/samples?q=next - return the timestamp and remaining time of when the next sample period will be generated |
HTTP/1.1 200 OK
Content-Type: application/json
{"sample":{"start":1750094490,"end":1750094520,"duration":30000,"aggregated":{"volume":28,"observed":28,"speed":{"min":1.4765090942382812,"max":10.10147762298584,"mean":5.487825393676758,"median":5.343478202819824,"85th":7.170822620391846,"15th":3.6417243480682373},"occupancy":{"time":22488,"percent":74.96000000000001},"dwell":{"min":536,"max":7233,"mean":1803,"median":1609},"headway":{"min":100,"max":32632,"mean":4988,"median":2052},"gap":{"min":0,"max":32138,"mean":4312,"median":1074},"length":{"min":1.3386824131011963,"max":5.537214279174805,"mean":4.069427967071533,"median":4.257318019866943},"width":{"min":0.0887308120727539,"max":4.14466667175293,"mean":1.6158432960510254,"median":1.5549815893173218},"height":{"min":0.46396404504776,"max":1.744057297706604,"mean":1.3102593421936035,"median":1.3036572933197021},"types":[{"volume":24,"observed":24,"speed":{"min":1.4765090942382812,"max":10.10147762298584,"mean":5.5646772384643555,"median":5.3851704597473145,"85th":7.137270450592041,"15th":4.264405727386475},"occupancy":{"time":22496,"percent":74.98666666666666},"dwell":{"min":1052,"max":7233,"mean":1827,"median":1609},"headway":{"min":100,"max":29729,"mean":3910,"median":2002},"gap":{"min":0,"max":29311,"mean":3183,"median":1052},"length":{"min":1.6432113647460938,"max":5.168470859527588,"mean":4.1441850662231445,"median":4.251163482666016},"width":{"min":0.6187005043029785,"max":4.14466667175293,"mean":1.6481684446334839,"median":1.5549815893173218},"height":{"min":0.9764110445976257,"max":1.744057297706604,"mean":1.3140606880187988,"median":1.2980930805206299},"id":1,"name":"vehicle"},{"volume":4,"observed":4,"speed":{"min":1.7459315061569214,"max":9.633935928344727,"mean":4.903753280639648,"median":3.4452242851257324,"85th":7.825623035430908,"15th":2.5425286293029785},"occupancy":{"time":5983,"percent":19.94333333333333},"dwell":{"min":536,"max":2585,"mean":1595,"median":1630},"headway":{"min":250,"max":32632,"mean":13182,"median":8908},"gap":{"min":0,"max":32138,"mean":12891,"median":8908},"length":{"min":1.3386824131011963,"max":5.537214279174805,"mean":3.501274347305298,"median":4.289007186889648},"width":{"min":0.0887308120727539,"max":1.9110143184661865,"mean":1.370172381401062,"median":1.893536925315857},"height":{"min":0.46396404504776,"max":1.6946947574615479,"mean":1.2813687324523926,"median":1.4402340650558472},"id":0,"name":"unclassified"}],"classifications":[{"volume":24,"observed":24,"speed":{"min":1.4765090942382812,"max":10.10147762298584,"mean":5.5646772384643555,"median":5.3851704597473145,"85th":7.137270450592041,"15th":4.264405727386475},"occupancy":{"time":22496,"percent":74.98666666666666},"dwell":{"min":1052,"max":7233,"mean":1827,"median":1609},"headway":{"min":100,"max":29729,"mean":3910,"median":2002},"gap":{"min":0,"max":29311,"mean":3183,"median":1052},"length":{"min":1.6432113647460938,"max":5.168470859527588,"mean":4.1441850662231445,"median":4.251163482666016},"width":{"min":0.6187005043029785,"max":4.14466667175293,"mean":1.6481684446334839,"median":1.5549815893173218},"height":{"min":0.9764110445976257,"max":1.744057297706604,"mean":1.3140606880187988,"median":1.2980930805206299},"name":"car"},{"volume":4,"observed":4,"speed":{"min":1.7459315061569214,"max":9.633935928344727,"mean":4.903753280639648,"median":3.4452242851257324,"85th":7.825623035430908,"15th":2.5425286293029785},"occupancy":{"time":5983,"percent":19.94333333333333},"dwell":{"min":536,"max":2585,"mean":1595,"median":1630},"headway":{"min":250,"max":32632,"mean":13182,"median":8908},"gap":{"min":0,"max":32138,"mean":12891,"median":8908},"length":{"min":1.3386824131011963,"max":5.537214279174805,"mean":3.501274347305298,"median":4.289007186889648},"width":{"min":0.0887308120727539,"max":1.9110143184661865,"mean":1.370172381401062,"median":1.893536925315857},"height":{"min":0.46396404504776,"max":1.6946947574615479,"mean":1.2813687324523926,"median":1.4402340650558472},"name":"unknown"}]},"zones":[{"volume":0,"observed":2,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":27447,"percent":91.49000000000001},"dwell":{"min":14310,"max":30316,"mean":22313,"median":22313},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"types":[{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":9991,"percent":33.303333333333335},"dwell":{"min":14310,"max":14310,"mean":14310,"median":14310},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"id":1,"name":"vehicle"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":27448,"percent":91.49333333333334},"dwell":{"min":30316,"max":30316,"mean":30316,"median":30316},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"id":0,"name":"unclassified"}],"classifications":[{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":9991,"percent":33.303333333333335},"dwell":{"min":14310,"max":14310,"mean":14310,"median":14310},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"name":"car"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":27448,"percent":91.49333333333334},"dwell":{"min":30316,"max":30316,"mean":30316,"median":30316},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"name":"unknown"}],"id":34,"name":"zone_11"},{"volume":0,"observed":0,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":0,"percent":0},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"types":[],"classifications":[],"id":22,"name":"zone_15"},{"volume":2,"observed":2,"speed":{"min":1.3037335872650146,"max":3.2775156497955322,"mean":2.2906246185302734,"median":2.2906246185302734,"85th":2.9814484119415283,"15th":1.599800944328308},"occupancy":{"time":9629,"percent":32.09666666666667},"dwell":{"min":2537,"max":2537,"mean":2537,"median":2537},"headway":{"min":2752,"max":32082,"mean":17417,"median":17417},"gap":{"min":2752,"max":32082,"mean":17417,"median":17417},"length":{"min":1.3386824131011963,"max":1.813393473625183,"mean":1.576037883758545,"median":1.576037883758545},"width":{"min":0.07591628283262253,"max":1.0640428066253662,"mean":0.5699795484542847,"median":0.5699795484542847},"height":{"min":0.4414156377315521,"max":0.46396404504776,"mean":0.4526898264884949,"median":0.4526898264884949},"types":[{"volume":2,"observed":2,"speed":{"min":1.3037335872650146,"max":3.2775156497955322,"mean":2.2906246185302734,"median":2.2906246185302734,"85th":2.9814484119415283,"15th":1.599800944328308},"occupancy":{"time":9629,"percent":32.09666666666667},"dwell":{"min":2537,"max":2537,"mean":2537,"median":2537},"headway":{"min":2752,"max":32082,"mean":17417,"median":17417},"gap":{"min":2752,"max":32082,"mean":17417,"median":17417},"length":{"min":1.3386824131011963,"max":1.813393473625183,"mean":1.576037883758545,"median":1.576037883758545},"width":{"min":0.07591628283262253,"max":1.0640428066253662,"mean":0.5699795484542847,"median":0.5699795484542847},"height":{"min":0.4414156377315521,"max":0.46396404504776,"mean":0.4526898264884949,"median":0.4526898264884949},"id":0,"name":"unclassified"}],"classifications":[{"volume":2,"observed":2,"speed":{"min":1.3037335872650146,"max":3.2775156497955322,"mean":2.2906246185302734,"median":2.2906246185302734,"85th":2.9814484119415283,"15th":1.599800944328308},"occupancy":{"time":9629,"percent":32.09666666666667},"dwell":{"min":2537,"max":2537,"mean":2537,"median":2537},"headway":{"min":2752,"max":32082,"mean":17417,"median":17417},"gap":{"min":2752,"max":32082,"mean":17417,"median":17417},"length":{"min":1.3386824131011963,"max":1.813393473625183,"mean":1.576037883758545,"median":1.576037883758545},"width":{"min":0.07591628283262253,"max":1.0640428066253662,"mean":0.5699795484542847,"median":0.5699795484542847},"height":{"min":0.4414156377315521,"max":0.46396404504776,"mean":0.4526898264884949,"median":0.4526898264884949},"name":"unknown"}],"id":35,"name":"zone_2"},{"volume":1,"observed":2,"speed":{"min":0.09013346582651138,"max":0.09013346582651138,"mean":0.09013346582651138,"median":0.09013346582651138,"85th":0.09013346582651138,"15th":0.09013346582651138},"occupancy":{"time":29999,"percent":99.99666666666667},"dwell":{"min":30924,"max":145946,"mean":88435,"median":88435},"headway":{"min":37388,"max":37388,"mean":37388,"median":37388},"gap":{"min":37388,"max":37388,"mean":37388,"median":37388},"length":{"min":1.813393473625183,"max":1.813393473625183,"mean":1.813393473625183,"median":1.813393473625183},"width":{"min":0.07591628283262253,"max":0.07591628283262253,"mean":0.07591628283262253,"median":0.07591628283262253},"height":{"min":0.4414156377315521,"max":0.4414156377315521,"mean":0.4414156377315521,"median":0.4414156377315521},"types":[{"volume":1,"observed":1,"speed":{"min":0.09013346582651138,"max":0.09013346582651138,"mean":0.09013346582651138,"median":0.09013346582651138,"85th":0.09013346582651138,"15th":0.09013346582651138},"occupancy":{"time":7292,"percent":24.306666666666665},"dwell":{"min":145946,"max":145946,"mean":145946,"median":145946},"headway":{"min":37388,"max":37388,"mean":37388,"median":37388},"gap":{"min":37388,"max":37388,"mean":37388,"median":37388},"length":{"min":1.813393473625183,"max":1.813393473625183,"mean":1.813393473625183,"median":1.813393473625183},"width":{"min":0.07591628283262253,"max":0.07591628283262253,"mean":0.07591628283262253,"median":0.07591628283262253},"height":{"min":0.4414156377315521,"max":0.4414156377315521,"mean":0.4414156377315521,"median":0.4414156377315521},"id":0,"name":"unclassified"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":26605,"percent":88.68333333333334},"dwell":{"min":30924,"max":30924,"mean":30924,"median":30924},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"id":1,"name":"vehicle"}],"classifications":[{"volume":1,"observed":1,"speed":{"min":0.09013346582651138,"max":0.09013346582651138,"mean":0.09013346582651138,"median":0.09013346582651138,"85th":0.09013346582651138,"15th":0.09013346582651138},"occupancy":{"time":7292,"percent":24.306666666666665},"dwell":{"min":145946,"max":145946,"mean":145946,"median":145946},"headway":{"min":37388,"max":37388,"mean":37388,"median":37388},"gap":{"min":37388,"max":37388,"mean":37388,"median":37388},"length":{"min":1.813393473625183,"max":1.813393473625183,"mean":1.813393473625183,"median":1.813393473625183},"width":{"min":0.07591628283262253,"max":0.07591628283262253,"mean":0.07591628283262253,"median":0.07591628283262253},"height":{"min":0.4414156377315521,"max":0.4414156377315521,"mean":0.4414156377315521,"median":0.4414156377315521},"name":"unknown"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":26605,"percent":88.68333333333334},"dwell":{"min":30924,"max":30924,"mean":30924,"median":30924},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"name":"car"}],"id":36,"name":"zone_3"},{"volume":1,"observed":2,"speed":{"min":2.7665507793426514,"max":2.7665507793426514,"mean":2.7665507793426514,"median":2.7665507793426514,"85th":2.7665507793426514,"15th":2.7665507793426514},"occupancy":{"time":29999,"percent":99.99666666666667},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":20470,"max":20470,"mean":20470,"median":20470},"gap":{"min":20470,"max":20470,"mean":20470,"median":20470},"length":{"min":1.254651427268982,"max":1.254651427268982,"mean":1.254651427268982,"median":1.254651427268982},"width":{"min":1.1618540287017822,"max":1.1618540287017822,"mean":1.1618540287017822,"median":1.1618540287017822},"height":{"min":0.46125727891921997,"max":0.46125727891921997,"mean":0.46125727891921997,"median":0.46125727891921997},"types":[{"volume":1,"observed":1,"speed":{"min":2.7665507793426514,"max":2.7665507793426514,"mean":2.7665507793426514,"median":2.7665507793426514,"85th":2.7665507793426514,"15th":2.7665507793426514},"occupancy":{"time":10245,"percent":34.150000000000006},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":20470,"max":20470,"mean":20470,"median":20470},"gap":{"min":20470,"max":20470,"mean":20470,"median":20470},"length":{"min":1.254651427268982,"max":1.254651427268982,"mean":1.254651427268982,"median":1.254651427268982},"width":{"min":1.1618540287017822,"max":1.1618540287017822,"mean":1.1618540287017822,"median":1.1618540287017822},"height":{"min":0.46125727891921997,"max":0.46125727891921997,"mean":0.46125727891921997,"median":0.46125727891921997},"id":0,"name":"unclassified"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"id":1,"name":"vehicle"}],"classifications":[{"volume":1,"observed":1,"speed":{"min":2.7665507793426514,"max":2.7665507793426514,"mean":2.7665507793426514,"median":2.7665507793426514,"85th":2.7665507793426514,"15th":2.7665507793426514},"occupancy":{"time":10245,"percent":34.150000000000006},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":20470,"max":20470,"mean":20470,"median":20470},"gap":{"min":20470,"max":20470,"mean":20470,"median":20470},"length":{"min":1.254651427268982,"max":1.254651427268982,"mean":1.254651427268982,"median":1.254651427268982},"width":{"min":1.1618540287017822,"max":1.1618540287017822,"mean":1.1618540287017822,"median":1.1618540287017822},"height":{"min":0.46125727891921997,"max":0.46125727891921997,"mean":0.46125727891921997,"median":0.46125727891921997},"name":"unknown"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"name":"car"}],"id":21,"name":"zone_10"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"types":[{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"id":1,"name":"vehicle"}],"classifications":[{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"name":"car"}],"id":20,"name":"zone_1"},{"volume":2,"observed":3,"speed":{"min":1.1686941385269165,"max":2.083019971847534,"mean":1.6258571147918701,"median":1.6258571147918701,"85th":1.945871114730835,"15th":1.3058429956436157},"occupancy":{"time":29997,"percent":99.99},"dwell":{"min":2259,"max":2259,"mean":2259,"median":2259},"headway":{"min":1150,"max":21571,"mean":11360,"median":11360},"gap":{"min":383,"max":21571,"mean":10977,"median":10977},"length":{"min":1.254651427268982,"max":1.585039734840393,"mean":1.4198455810546875,"median":1.4198455810546875},"width":{"min":0.4656212031841278,"max":1.1618540287017822,"mean":0.8137376308441162,"median":0.8137376308441162},"height":{"min":0.46125727891921997,"max":0.7398056387901306,"mean":0.6005314588546753,"median":0.6005314588546753},"types":[{"volume":2,"observed":2,"speed":{"min":1.1686941385269165,"max":2.083019971847534,"mean":1.6258571147918701,"median":1.6258571147918701,"85th":1.945871114730835,"15th":1.3058429956436157},"occupancy":{"time":21755,"percent":72.51666666666667},"dwell":{"min":2259,"max":2259,"mean":2259,"median":2259},"headway":{"min":1150,"max":21571,"mean":11360,"median":11360},"gap":{"min":383,"max":21571,"mean":10977,"median":10977},"length":{"min":1.254651427268982,"max":1.585039734840393,"mean":1.4198455810546875,"median":1.4198455810546875},"width":{"min":0.4656212031841278,"max":1.1618540287017822,"mean":0.8137376308441162,"median":0.8137376308441162},"height":{"min":0.46125727891921997,"max":0.7398056387901306,"mean":0.6005314588546753,"median":0.6005314588546753},"id":0,"name":"unclassified"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"id":1,"name":"vehicle"}],"classifications":[{"volume":2,"observed":2,"speed":{"min":1.1686941385269165,"max":2.083019971847534,"mean":1.6258571147918701,"median":1.6258571147918701,"85th":1.945871114730835,"15th":1.3058429956436157},"occupancy":{"time":21755,"percent":72.51666666666667},"dwell":{"min":2259,"max":2259,"mean":2259,"median":2259},"headway":{"min":1150,"max":21571,"mean":11360,"median":11360},"gap":{"min":383,"max":21571,"mean":10977,"median":10977},"length":{"min":1.254651427268982,"max":1.585039734840393,"mean":1.4198455810546875,"median":1.4198455810546875},"width":{"min":0.4656212031841278,"max":1.1618540287017822,"mean":0.8137376308441162,"median":0.8137376308441162},"height":{"min":0.46125727891921997,"max":0.7398056387901306,"mean":0.6005314588546753,"median":0.6005314588546753},"name":"unknown"},{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"name":"car"}],"id":33,"name":"zone_9"},{"volume":1,"observed":2,"speed":{"min":2.839674711227417,"max":2.839674711227417,"mean":2.839674711227417,"median":2.839674711227417,"85th":2.839674711227417,"15th":2.839674711227417},"occupancy":{"time":29999,"percent":99.99666666666667},"dwell":{"min":1366,"max":1366,"mean":1366,"median":1366},"headway":{"min":54007,"max":54007,"mean":54007,"median":54007},"gap":{"min":53327,"max":53327,"mean":53327,"median":53327},"length":{"min":1.254651427268982,"max":1.254651427268982,"mean":1.254651427268982,"median":1.254651427268982},"width":{"min":1.1618540287017822,"max":1.1618540287017822,"mean":1.1618540287017822,"median":1.1618540287017822},"height":{"min":0.46125727891921997,"max":0.46125727891921997,"mean":0.46125727891921997,"median":0.46125727891921997},"types":[{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"id":1,"name":"vehicle"},{"volume":1,"observed":1,"speed":{"min":2.839674711227417,"max":2.839674711227417,"mean":2.839674711227417,"median":2.839674711227417,"85th":2.839674711227417,"15th":2.839674711227417},"occupancy":{"time":1366,"percent":4.553333333333334},"dwell":{"min":1366,"max":1366,"mean":1366,"median":1366},"headway":{"min":54007,"max":54007,"mean":54007,"median":54007},"gap":{"min":53327,"max":53327,"mean":53327,"median":53327},"length":{"min":1.254651427268982,"max":1.254651427268982,"mean":1.254651427268982,"median":1.254651427268982},"width":{"min":1.1618540287017822,"max":1.1618540287017822,"mean":1.1618540287017822,"median":1.1618540287017822},"height":{"min":0.46125727891921997,"max":0.46125727891921997,"mean":0.46125727891921997,"median":0.46125727891921997},"id":0,"name":"unclassified"}],"classifications":[{"volume":0,"observed":1,"speed":{"min":0,"max":0,"mean":0,"median":0,"85th":0,"15th":0},"occupancy":{"time":30000,"percent":100},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":0,"max":0,"mean":0,"median":0},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":0,"max":0,"mean":0,"median":0},"width":{"min":0,"max":0,"mean":0,"median":0},"height":{"min":0,"max":0,"mean":0,"median":0},"name":"car"},{"volume":1,"observed":1,"speed":{"min":2.839674711227417,"max":2.839674711227417,"mean":2.839674711227417,"median":2.839674711227417,"85th":2.839674711227417,"15th":2.839674711227417},"occupancy":{"time":1366,"percent":4.553333333333334},"dwell":{"min":1366,"max":1366,"mean":1366,"median":1366},"headway":{"min":54007,"max":54007,"mean":54007,"median":54007},"gap":{"min":53327,"max":53327,"mean":53327,"median":53327},"length":{"min":1.254651427268982,"max":1.254651427268982,"mean":1.254651427268982,"median":1.254651427268982},"width":{"min":1.1618540287017822,"max":1.1618540287017822,"mean":1.1618540287017822,"median":1.1618540287017822},"height":{"min":0.46125727891921997,"max":0.46125727891921997,"mean":0.46125727891921997,"median":0.46125727891921997},"name":"unknown"}],"id":32,"name":"zone_8"},{"volume":25,"observed":25,"speed":{"min":2.920783758163452,"max":10.10147762298584,"mean":5.735208034515381,"median":5.639978885650635,"85th":7.344624042510986,"15th":3.927807569503784},"occupancy":{"time":18951,"percent":63.17},"dwell":{"min":1176,"max":3056,"mean":1743,"median":1641},"headway":{"min":100,"max":17466,"mean":2131,"median":951},"gap":{"min":0,"max":17466,"mean":1561,"median":484},"length":{"min":1.6432113647460938,"max":5.168470859527588,"mean":4.090704441070557,"median":4.257318019866943},"width":{"min":0.0887308120727539,"max":4.14466667175293,"mean":1.5031388998031616,"median":1.5270335674285889},"height":{"min":0.9764110445976257,"max":1.744057297706604,"mean":1.3405003547668457,"median":1.3036572933197021},"types":[{"volume":2,"observed":2,"speed":{"min":3.4452242851257324,"max":6.620080947875977,"mean":5.032652854919434,"median":5.032652854919434,"85th":6.143852233886719,"15th":3.921452760696411},"occupancy":{"time":2623,"percent":8.743333333333334},"dwell":{"min":2289,"max":2289,"mean":2289,"median":2289},"headway":{"min":250,"max":550,"mean":400,"median":400},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":2.0524604320526123,"max":4.289007186889648,"mean":3.17073392868042,"median":3.17073392868042},"width":{"min":0.0887308120727539,"max":1.893536925315857,"mean":0.9911338686943054,"median":0.9911338686943054},"height":{"min":1.4402340650558472,"max":1.6946947574615479,"mean":1.5674643516540527,"median":1.5674643516540527},"id":0,"name":"unclassified"},{"volume":23,"observed":23,"speed":{"min":2.920783758163452,"max":10.10147762298584,"mean":5.796299457550049,"median":5.639978885650635,"85th":7.4447784423828125,"15th":4.277807712554932},"occupancy":{"time":18953,"percent":63.17666666666667},"dwell":{"min":1176,"max":3056,"mean":1717,"median":1605},"headway":{"min":100,"max":17466,"mean":2282,"median":1451},"gap":{"min":0,"max":17466,"mean":1697,"median":503},"length":{"min":1.6432113647460938,"max":5.168470859527588,"mean":4.170701503753662,"median":4.257318019866943},"width":{"min":0.6187005043029785,"max":4.14466667175293,"mean":1.5476610660552979,"median":1.5270335674285889},"height":{"min":0.9764110445976257,"max":1.744057297706604,"mean":1.3207643032073975,"median":1.292528748512268},"id":1,"name":"vehicle"}],"classifications":[{"volume":2,"observed":2,"speed":{"min":3.4452242851257324,"max":6.620080947875977,"mean":5.032652854919434,"median":5.032652854919434,"85th":6.143852233886719,"15th":3.921452760696411},"occupancy":{"time":2623,"percent":8.743333333333334},"dwell":{"min":2289,"max":2289,"mean":2289,"median":2289},"headway":{"min":250,"max":550,"mean":400,"median":400},"gap":{"min":0,"max":0,"mean":0,"median":0},"length":{"min":2.0524604320526123,"max":4.289007186889648,"mean":3.17073392868042,"median":3.17073392868042},"width":{"min":0.0887308120727539,"max":1.893536925315857,"mean":0.9911338686943054,"median":0.9911338686943054},"height":{"min":1.4402340650558472,"max":1.6946947574615479,"mean":1.5674643516540527,"median":1.5674643516540527},"name":"unknown"},{"volume":23,"observed":23,"speed":{"min":2.920783758163452,"max":10.10147762298584,"mean":5.796299457550049,"median":5.639978885650635,"85th":7.4447784423828125,"15th":4.277807712554932},"occupancy":{"time":18953,"percent":63.17666666666667},"dwell":{"min":1176,"max":3056,"mean":1717,"median":1605},"headway":{"min":100,"max":17466,"mean":2282,"median":1451},"gap":{"min":0,"max":17466,"mean":1697,"median":503},"length":{"min":1.6432113647460938,"max":5.168470859527588,"mean":4.170701503753662,"median":4.257318019866943},"width":{"min":0.6187005043029785,"max":4.14466667175293,"mean":1.5476610660552979,"median":1.5270335674285889},"height":{"min":0.9764110445976257,"max":1.744057297706604,"mean":1.3207643032073975,"median":1.292528748512268},"name":"car"}],"id":27,"name":"Crosswalk 4"},{"volume":4,"observed":4,"speed":{"min":0.4181953966617584,"max":8.455659866333008,"mean":4.03213357925415,"median":3.6273393630981445,"85th":7.599514484405518,"15th":0.5457112789154053},"occupancy":{"time":8648,"percent":28.826666666666668},"dwell":{"min":1535,"max":3150,"mean":2274,"median":2205},"headway":{"min":2702,"max":42444,"mean":14214,"median":5856},"gap":{"min":0,"max":42444,"mean":13511,"median":5801},"length":{"min":1.6432113647460938,"max":4.4559760093688965,"mean":3.5810482501983643,"median":4.1125030517578125},"width":{"min":1.4639145135879517,"max":4.14466667175293,"mean":2.20398211479187,"median":1.6036736965179443},"height":{"min":1.1306990385055542,"max":1.4336007833480835,"mean":1.2901214361190796,"median":1.2980930805206299},"types":[{"volume":4,"observed":4,"speed":{"min":0.4181953966617584,"max":8.455659866333008,"mean":4.03213357925415,"median":3.6273393630981445,"85th":7.599514484405518,"15th":0.5457112789154053},"occupancy":{"time":8648,"percent":28.826666666666668},"dwell":{"min":1535,"max":3150,"mean":2274,"median":2205},"headway":{"min":2702,"max":42444,"mean":14214,"median":5856},"gap":{"min":0,"max":42444,"mean":13511,"median":5801},"length":{"min":1.6432113647460938,"max":4.4559760093688965,"mean":3.5810482501983643,"median":4.1125030517578125},"width":{"min":1.4639145135879517,"max":4.14466667175293,"mean":2.20398211479187,"median":1.6036736965179443},"height":{"min":1.1306990385055542,"max":1.4336007833480835,"mean":1.2901214361190796,"median":1.2980930805206299},"id":1,"name":"vehicle"}],"classifications":[{"volume":4,"observed":4,"speed":{"min":0.4181953966617584,"max":8.455659866333008,"mean":4.03213357925415,"median":3.6273393630981445,"85th":7.599514484405518,"15th":0.5457112789154053},"occupancy":{"time":8648,"percent":28.826666666666668},"dwell":{"min":1535,"max":3150,"mean":2274,"median":2205},"headway":{"min":2702,"max":42444,"mean":14214,"median":5856},"gap":{"min":0,"max":42444,"mean":13511,"median":5801},"length":{"min":1.6432113647460938,"max":4.4559760093688965,"mean":3.5810482501983643,"median":4.1125030517578125},"width":{"min":1.4639145135879517,"max":4.14466667175293,"mean":2.20398211479187,"median":1.6036736965179443},"height":{"min":1.1306990385055542,"max":1.4336007833480835,"mean":1.2901214361190796,"median":1.2980930805206299},"name":"car"}],"id":28,"name":"zone_12"},{"volume":4,"observed":4,"speed":{"min":3.6957528591156006,"max":8.50583553314209,"mean":5.777749061584473,"median":5.4547038078308105,"85th":7.5938286781311035,"15th":4.026278018951416},"occupancy":{"time":8682,"percent":28.939999999999998},"dwell":{"min":1510,"max":2957,"mean":2246,"median":2259},"headway":{"min":1601,"max":66321,"mean":18682,"median":3403},"gap":{"min":1601,"max":65294,"mean":18111,"median":2775},"length":{"min":4.028792858123779,"max":4.477057933807373,"mean":4.2299675941467285,"median":4.207009792327881},"width":{"min":0.8013239502906799,"max":1.5973904132843018,"mean":1.2530381679534912,"median":1.3067190647125244},"height":{"min":1.1036454439163208,"max":1.3422423601150513,"mean":1.2045589685440063,"median":1.1861741542816162},"types":[{"volume":4,"observed":4,"speed":{"min":3.6957528591156006,"max":8.50583553314209,"mean":5.777749061584473,"median":5.4547038078308105,"85th":7.5938286781311035,"15th":4.026278018951416},"occupancy":{"time":8682,"percent":28.939999999999998},"dwell":{"min":1510,"max":2957,"mean":2246,"median":2259},"headway":{"min":1601,"max":66321,"mean":18682,"median":3403},"gap":{"min":1601,"max":65294,"mean":18111,"median":2775},"length":{"min":4.028792858123779,"max":4.477057933807373,"mean":4.2299675941467285,"median":4.207009792327881},"width":{"min":0.8013239502906799,"max":1.5973904132843018,"mean":1.2530381679534912,"median":1.3067190647125244},"height":{"min":1.1036454439163208,"max":1.3422423601150513,"mean":1.2045589685440063,"median":1.1861741542816162},"id":1,"name":"vehicle"}],"classifications":[{"volume":4,"observed":4,"speed":{"min":3.6957528591156006,"max":8.50583553314209,"mean":5.777749061584473,"median":5.4547038078308105,"85th":7.5938286781311035,"15th":4.026278018951416},"occupancy":{"time":8682,"percent":28.939999999999998},"dwell":{"min":1510,"max":2957,"mean":2246,"median":2259},"headway":{"min":1601,"max":66321,"mean":18682,"median":3403},"gap":{"min":1601,"max":65294,"mean":18111,"median":2775},"length":{"min":4.028792858123779,"max":4.477057933807373,"mean":4.2299675941467285,"median":4.207009792327881},"width":{"min":0.8013239502906799,"max":1.5973904132843018,"mean":1.2530381679534912,"median":1.3067190647125244},"height":{"min":1.1036454439163208,"max":1.3422423601150513,"mean":1.2045589685440063,"median":1.1861741542816162},"name":"car"}],"id":30,"name":"zone_14"},{"volume":2,"observed":2,"speed":{"min":7.076876640319824,"max":7.224062442779541,"mean":7.150469779968262,"median":7.150469779968262,"85th":7.201984405517578,"15th":7.098954677581787},"occupancy":{"time":2054,"percent":6.846666666666666},"dwell":{"min":1154,"max":1219,"mean":1186,"median":1186},"headway":{"min":2253,"max":29729,"mean":15991,"median":15991},"gap":{"min":1682,"max":29311,"mean":15496,"median":15496},"length":{"min":4.2689127922058105,"max":4.335118770599365,"mean":4.302015781402588,"median":4.302015781402588},"width":{"min":1.5973904132843018,"max":1.8453454971313477,"mean":1.7213679552078247,"median":1.7213679552078247},"height":{"min":1.1991102695465088,"max":1.338835597038269,"mean":1.2689728736877441,"median":1.2689728736877441},"types":[{"volume":2,"observed":2,"speed":{"min":7.076876640319824,"max":7.224062442779541,"mean":7.150469779968262,"median":7.150469779968262,"85th":7.201984405517578,"15th":7.098954677581787},"occupancy":{"time":2054,"percent":6.846666666666666},"dwell":{"min":1154,"max":1219,"mean":1186,"median":1186},"headway":{"min":2253,"max":29729,"mean":15991,"median":15991},"gap":{"min":1682,"max":29311,"mean":15496,"median":15496},"length":{"min":4.2689127922058105,"max":4.335118770599365,"mean":4.302015781402588,"median":4.302015781402588},"width":{"min":1.5973904132843018,"max":1.8453454971313477,"mean":1.7213679552078247,"median":1.7213679552078247},"height":{"min":1.1991102695465088,"max":1.338835597038269,"mean":1.2689728736877441,"median":1.2689728736877441},"id":1,"name":"vehicle"}],"classifications":[{"volume":2,"observed":2,"speed":{"min":7.076876640319824,"max":7.224062442779541,"mean":7.150469779968262,"median":7.150469779968262,"85th":7.201984405517578,"15th":7.098954677581787},"occupancy":{"time":2054,"percent":6.846666666666666},"dwell":{"min":1154,"max":1219,"mean":1186,"median":1186},"headway":{"min":2253,"max":29729,"mean":15991,"median":15991},"gap":{"min":1682,"max":29311,"mean":15496,"median":15496},"length":{"min":4.2689127922058105,"max":4.335118770599365,"mean":4.302015781402588,"median":4.302015781402588},"width":{"min":1.5973904132843018,"max":1.8453454971313477,"mean":1.7213679552078247,"median":1.7213679552078247},"height":{"min":1.1991102695465088,"max":1.338835597038269,"mean":1.2689728736877441,"median":1.2689728736877441},"name":"car"}],"id":24,"name":"Crosswalk 1"},{"volume":7,"observed":7,"speed":{"min":3.0735933780670166,"max":9.633935928344727,"mean":5.383998394012451,"median":4.835076332092285,"85th":6.462350368499756,"15th":4.156278133392334},"occupancy":{"time":9697,"percent":32.32333333333333},"dwell":{"min":536,"max":2115,"mean":1488,"median":1614},"headway":{"min":2102,"max":23573,"mean":9566,"median":8008},"gap":{"min":1074,"max":23409,"mean":8847,"median":7572},"length":{"min":1.3386824131011963,"max":5.537214279174805,"mean":4.137563705444336,"median":4.27197790145874},"width":{"min":1.0640428066253662,"max":2.8081626892089844,"mean":1.7132989168167114,"median":1.5631153583526611},"height":{"min":0.46396404504776,"max":1.3677167892456055,"mean":1.0703951120376587,"median":1.1399837732315063},"types":[{"volume":5,"observed":5,"speed":{"min":4.276576519012451,"max":6.109951972961426,"mean":4.996091842651367,"median":4.835076332092285,"85th":5.6500678062438965,"15th":4.359856128692627},"occupancy":{"time":8908,"percent":29.69333333333333},"dwell":{"min":1573,"max":2115,"mean":1781,"median":1668},"headway":{"min":2102,"max":12812,"mean":6896,"median":6006},"gap":{"min":1074,"max":11359,"mean":5922,"median":5196},"length":{"min":3.85076642036438,"max":5.168470859527588,"mean":4.417409896850586,"median":4.27197790145874},"width":{"min":1.4517167806625366,"max":2.8081626892089844,"mean":1.8036071062088013,"median":1.5631153583526611},"height":{"min":0.9764110445976257,"max":1.2894614934921265,"mean":1.1322169303894043,"median":1.1399837732315063},"id":1,"name":"vehicle"},{"volume":2,"observed":2,"speed":{"min":3.0735933780670166,"max":9.633935928344727,"mean":6.353764533996582,"median":6.353764533996582,"85th":8.649884223937988,"15th":4.057644844055176},"occupancy":{"time":1508,"percent":5.026666666666666},"dwell":{"min":536,"max":972,"mean":754,"median":754},"headway":{"min":8908,"max":23573,"mean":16240,"median":16240},"gap":{"min":8908,"max":23409,"mean":16158,"median":16158},"length":{"min":1.3386824131011963,"max":5.537214279174805,"mean":3.437948226928711,"median":3.437948226928711},"width":{"min":1.0640428066253662,"max":1.9110143184661865,"mean":1.4875285625457764,"median":1.4875285625457764},"height":{"min":0.46396404504776,"max":1.3677167892456055,"mean":0.9158403873443604,"median":0.9158403873443604},"id":0,"name":"unclassified"}],"classifications":[{"volume":5,"observed":5,"speed":{"min":4.276576519012451,"max":6.109951972961426,"mean":4.996091842651367,"median":4.835076332092285,"85th":5.6500678062438965,"15th":4.359856128692627},"occupancy":{"time":8908,"percent":29.69333333333333},"dwell":{"min":1573,"max":2115,"mean":1781,"median":1668},"headway":{"min":2102,"max":12812,"mean":6896,"median":6006},"gap":{"min":1074,"max":11359,"mean":5922,"median":5196},"length":{"min":3.85076642036438,"max":5.168470859527588,"mean":4.417409896850586,"median":4.27197790145874},"width":{"min":1.4517167806625366,"max":2.8081626892089844,"mean":1.8036071062088013,"median":1.5631153583526611},"height":{"min":0.9764110445976257,"max":1.2894614934921265,"mean":1.1322169303894043,"median":1.1399837732315063},"name":"car"},{"volume":2,"observed":2,"speed":{"min":3.0735933780670166,"max":9.633935928344727,"mean":6.353764533996582,"median":6.353764533996582,"85th":8.649884223937988,"15th":4.057644844055176},"occupancy":{"time":1508,"percent":5.026666666666666},"dwell":{"min":536,"max":972,"mean":754,"median":754},"headway":{"min":8908,"max":23573,"mean":16240,"median":16240},"gap":{"min":8908,"max":23409,"mean":16158,"median":16158},"length":{"min":1.3386824131011963,"max":5.537214279174805,"mean":3.437948226928711,"median":3.437948226928711},"width":{"min":1.0640428066253662,"max":1.9110143184661865,"mean":1.4875285625457764,"median":1.4875285625457764},"height":{"min":0.46396404504776,"max":1.3677167892456055,"mean":0.9158403873443604,"median":0.9158403873443604},"name":"unknown"}],"id":26,"name":"Crosswalk 3"},{"volume":5,"observed":5,"speed":{"min":1.5523638725280762,"max":8.636550903320312,"mean":5.821658134460449,"median":6.602944374084473,"85th":7.785928249359131,"15th":3.6794958114624023},"occupancy":{"time":11127,"percent":37.09},"dwell":{"min":1287,"max":3561,"mean":2413,"median":2232},"headway":{"min":1151,"max":6807,"mean":3513,"median":3753},"gap":{"min":1151,"max":6408,"mean":3039,"median":2371},"length":{"min":3.85076642036438,"max":5.168470859527588,"mean":4.417409896850586,"median":4.27197790145874},"width":{"min":1.4517167806625366,"max":2.8081626892089844,"mean":1.8036071062088013,"median":1.5631153583526611},"height":{"min":0.9764110445976257,"max":1.2894614934921265,"mean":1.1322169303894043,"median":1.1399837732315063},"types":[{"volume":5,"observed":5,"speed":{"min":1.5523638725280762,"max":8.636550903320312,"mean":5.821658134460449,"median":6.602944374084473,"85th":7.785928249359131,"15th":3.6794958114624023},"occupancy":{"time":11127,"percent":37.09},"dwell":{"min":1287,"max":3561,"mean":2413,"median":2232},"headway":{"min":1151,"max":6807,"mean":3513,"median":3753},"gap":{"min":1151,"max":6408,"mean":3039,"median":2371},"length":{"min":3.85076642036438,"max":5.168470859527588,"mean":4.417409896850586,"median":4.27197790145874},"width":{"min":1.4517167806625366,"max":2.8081626892089844,"mean":1.8036071062088013,"median":1.5631153583526611},"height":{"min":0.9764110445976257,"max":1.2894614934921265,"mean":1.1322169303894043,"median":1.1399837732315063},"id":1,"name":"vehicle"}],"classifications":[{"volume":5,"observed":5,"speed":{"min":1.5523638725280762,"max":8.636550903320312,"mean":5.821658134460449,"median":6.602944374084473,"85th":7.785928249359131,"15th":3.6794958114624023},"occupancy":{"time":11127,"percent":37.09},"dwell":{"min":1287,"max":3561,"mean":2413,"median":2232},"headway":{"min":1151,"max":6807,"mean":3513,"median":3753},"gap":{"min":1151,"max":6408,"mean":3039,"median":2371},"length":{"min":3.85076642036438,"max":5.168470859527588,"mean":4.417409896850586,"median":4.27197790145874},"width":{"min":1.4517167806625366,"max":2.8081626892089844,"mean":1.8036071062088013,"median":1.5631153583526611},"height":{"min":0.9764110445976257,"max":1.2894614934921265,"mean":1.1322169303894043,"median":1.1399837732315063},"name":"car"}],"id":31,"name":"zone_16"},{"volume":9,"observed":9,"speed":{"min":1.4765090942382812,"max":6.1515607833862305,"mean":4.5119309425354,"median":5.2940521240234375,"85th":6.023303508758545,"15th":2.216790199279785},"occupancy":{"time":16538,"percent":55.126666666666665},"dwell":{"min":1052,"max":7233,"mean":2334,"median":1780},"headway":{"min":750,"max":32632,"mean":6917,"median":2452},"gap":{"min":0,"max":32138,"mean":5939,"median":2149},"length":{"min":1.6432113647460938,"max":4.4559760093688965,"mean":3.905646562576294,"median":4.087193489074707},"width":{"min":0.9863514304161072,"max":4.14466667175293,"mean":1.829662561416626,"median":1.6070406436920166},"height":{"min":1.292528748512268,"max":1.5084161758422852,"mean":1.421992301940918,"median":1.4336007833480835},"types":[{"volume":8,"observed":8,"speed":{"min":1.4765090942382812,"max":6.1515607833862305,"mean":4.857680797576904,"median":5.360457420349121,"85th":6.057115077972412,"15th":4.1202569007873535},"occupancy":{"time":16478,"percent":54.92666666666667},"dwell":{"min":1052,"max":7233,"mean":2303,"median":1656},"headway":{"min":750,"max":10210,"mean":3703,"median":2402},"gap":{"min":0,"max":7425,"mean":2664,"median":1895},"length":{"min":1.6432113647460938,"max":4.4559760093688965,"mean":3.857726573944092,"median":4.082297325134277},"width":{"min":0.9863514304161072,"max":4.14466667175293,"mean":1.8216782808303833,"median":1.5810110569000244},"height":{"min":1.292528748512268,"max":1.5084161758422852,"mean":1.4197120666503906,"median":1.4261951446533203},"id":1,"name":"vehicle"},{"volume":1,"observed":1,"speed":{"min":1.7459315061569214,"max":1.7459315061569214,"mean":1.7459315061569214,"median":1.7459315061569214,"85th":1.7459315061569214,"15th":1.7459315061569214},"occupancy":{"time":2585,"percent":8.616666666666667},"dwell":{"min":2585,"max":2585,"mean":2585,"median":2585},"headway":{"min":32632,"max":32632,"mean":32632,"median":32632},"gap":{"min":32138,"max":32138,"mean":32138,"median":32138},"length":{"min":4.289007186889648,"max":4.289007186889648,"mean":4.289007186889648,"median":4.289007186889648},"width":{"min":1.893536925315857,"max":1.893536925315857,"mean":1.893536925315857,"median":1.893536925315857},"height":{"min":1.4402340650558472,"max":1.4402340650558472,"mean":1.4402340650558472,"median":1.4402340650558472},"id":0,"name":"unclassified"}],"classifications":[{"volume":8,"observed":8,"speed":{"min":1.4765090942382812,"max":6.1515607833862305,"mean":4.857680797576904,"median":5.360457420349121,"85th":6.057115077972412,"15th":4.1202569007873535},"occupancy":{"time":16478,"percent":54.92666666666667},"dwell":{"min":1052,"max":7233,"mean":2303,"median":1656},"headway":{"min":750,"max":10210,"mean":3703,"median":2402},"gap":{"min":0,"max":7425,"mean":2664,"median":1895},"length":{"min":1.6432113647460938,"max":4.4559760093688965,"mean":3.857726573944092,"median":4.082297325134277},"width":{"min":0.9863514304161072,"max":4.14466667175293,"mean":1.8216782808303833,"median":1.5810110569000244},"height":{"min":1.292528748512268,"max":1.5084161758422852,"mean":1.4197120666503906,"median":1.4261951446533203},"name":"car"},{"volume":1,"observed":1,"speed":{"min":1.7459315061569214,"max":1.7459315061569214,"mean":1.7459315061569214,"median":1.7459315061569214,"85th":1.7459315061569214,"15th":1.7459315061569214},"occupancy":{"time":2585,"percent":8.616666666666667},"dwell":{"min":2585,"max":2585,"mean":2585,"median":2585},"headway":{"min":32632,"max":32632,"mean":32632,"median":32632},"gap":{"min":32138,"max":32138,"mean":32138,"median":32138},"length":{"min":4.289007186889648,"max":4.289007186889648,"mean":4.289007186889648,"median":4.289007186889648},"width":{"min":1.893536925315857,"max":1.893536925315857,"mean":1.893536925315857,"median":1.893536925315857},"height":{"min":1.4402340650558472,"max":1.4402340650558472,"mean":1.4402340650558472,"median":1.4402340650558472},"name":"unknown"}],"id":25,"name":"Crosswalk 2"},{"volume":1,"observed":1,"speed":{"min":2.9678874015808105,"max":2.9678874015808105,"mean":2.9678874015808105,"median":2.9678874015808105,"85th":2.9678874015808105,"15th":2.9678874015808105},"occupancy":{"time":19305,"percent":64.35},"dwell":{"min":25235,"max":25235,"mean":25235,"median":25235},"headway":{"min":52556,"max":52556,"mean":52556,"median":52556},"gap":{"min":52556,"max":52556,"mean":52556,"median":52556},"length":{"min":4.150646209716797,"max":4.150646209716797,"mean":4.150646209716797,"median":4.150646209716797},"width":{"min":1.0031802654266357,"max":1.0031802654266357,"mean":1.0031802654266357,"median":1.0031802654266357},"height":{"min":1.269127607345581,"max":1.269127607345581,"mean":1.269127607345581,"median":1.269127607345581},"types":[{"volume":1,"observed":1,"speed":{"min":2.9678874015808105,"max":2.9678874015808105,"mean":2.9678874015808105,"median":2.9678874015808105,"85th":2.9678874015808105,"15th":2.9678874015808105},"occupancy":{"time":19305,"percent":64.35},"dwell":{"min":25235,"max":25235,"mean":25235,"median":25235},"headway":{"min":52556,"max":52556,"mean":52556,"median":52556},"gap":{"min":52556,"max":52556,"mean":52556,"median":52556},"length":{"min":4.150646209716797,"max":4.150646209716797,"mean":4.150646209716797,"median":4.150646209716797},"width":{"min":1.0031802654266357,"max":1.0031802654266357,"mean":1.0031802654266357,"median":1.0031802654266357},"height":{"min":1.269127607345581,"max":1.269127607345581,"mean":1.269127607345581,"median":1.269127607345581},"id":1,"name":"vehicle"}],"classifications":[{"volume":1,"observed":1,"speed":{"min":2.9678874015808105,"max":2.9678874015808105,"mean":2.9678874015808105,"median":2.9678874015808105,"85th":2.9678874015808105,"15th":2.9678874015808105},"occupancy":{"time":19305,"percent":64.35},"dwell":{"min":25235,"max":25235,"mean":25235,"median":25235},"headway":{"min":52556,"max":52556,"mean":52556,"median":52556},"gap":{"min":52556,"max":52556,"mean":52556,"median":52556},"length":{"min":4.150646209716797,"max":4.150646209716797,"mean":4.150646209716797,"median":4.150646209716797},"width":{"min":1.0031802654266357,"max":1.0031802654266357,"mean":1.0031802654266357,"median":1.0031802654266357},"height":{"min":1.269127607345581,"max":1.269127607345581,"mean":1.269127607345581,"median":1.269127607345581},"name":"car"}],"id":38,"name":"zone_7"},{"volume":4,"observed":5,"speed":{"min":2.846961736679077,"max":6.222542762756348,"mean":5.032414436340332,"median":5.530076026916504,"85th":6.156837463378906,"15th":3.8084585666656494},"occupancy":{"time":29997,"percent":99.99},"dwell":{"min":916,"max":394655,"mean":99762,"median":1740},"headway":{"min":2752,"max":60916,"mean":19546,"median":7258},"gap":{"min":2106,"max":60228,"mean":19212,"median":7258},"length":{"min":4.018044948577881,"max":4.292270183563232,"mean":4.200151443481445,"median":4.245145797729492},"width":{"min":1.0089490413665771,"max":1.6070406436920166,"mean":1.4007222652435303,"median":1.4934495687484741},"height":{"min":1.2172675132751465,"max":1.5084161758422852,"mean":1.3882153034210205,"median":1.4135887622833252},"types":[{"volume":3,"observed":4,"speed":{"min":2.846961736679077,"max":6.076531410217285,"mean":4.63570499420166,"median":4.983621120452881,"85th":5.748658180236816,"15th":3.487959623336792},"occupancy":{"time":29998,"percent":99.99333333333334},"dwell":{"min":916,"max":394655,"mean":99762,"median":1740},"headway":{"min":2752,"max":60916,"mean":24492,"median":9810},"gap":{"min":2106,"max":60228,"mean":24048,"median":9810},"length":{"min":4.018044948577881,"max":4.292270183563232,"mean":4.185108184814453,"median":4.245009422302246},"width":{"min":1.0089490413665771,"max":1.6070406436920166,"mean":1.3814162015914917,"median":1.5282588005065918},"height":{"min":1.2172675132751465,"max":1.5084161758422852,"mean":1.4086936712265015,"median":1.5003974437713623},"id":1,"name":"vehicle"},{"volume":1,"observed":1,"speed":{"min":6.222542762756348,"max":6.222542762756348,"mean":6.222542762756348,"median":6.222542762756348,"85th":6.222542762756348,"15th":6.222542762756348},"occupancy":{"time":534,"percent":1.78},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":4706,"max":4706,"mean":4706,"median":4706},"gap":{"min":4706,"max":4706,"mean":4706,"median":4706},"length":{"min":4.24528169631958,"max":4.24528169631958,"mean":4.24528169631958,"median":4.24528169631958},"width":{"min":1.4586403369903564,"max":1.4586403369903564,"mean":1.4586403369903564,"median":1.4586403369903564},"height":{"min":1.3267799615859985,"max":1.3267799615859985,"mean":1.3267799615859985,"median":1.3267799615859985},"id":0,"name":"unclassified"}],"classifications":[{"volume":3,"observed":4,"speed":{"min":2.846961736679077,"max":6.076531410217285,"mean":4.63570499420166,"median":4.983621120452881,"85th":5.748658180236816,"15th":3.487959623336792},"occupancy":{"time":29998,"percent":99.99333333333334},"dwell":{"min":916,"max":394655,"mean":99762,"median":1740},"headway":{"min":2752,"max":60916,"mean":24492,"median":9810},"gap":{"min":2106,"max":60228,"mean":24048,"median":9810},"length":{"min":4.018044948577881,"max":4.292270183563232,"mean":4.185108184814453,"median":4.245009422302246},"width":{"min":1.0089490413665771,"max":1.6070406436920166,"mean":1.3814162015914917,"median":1.5282588005065918},"height":{"min":1.2172675132751465,"max":1.5084161758422852,"mean":1.4086936712265015,"median":1.5003974437713623},"name":"car"},{"volume":1,"observed":1,"speed":{"min":6.222542762756348,"max":6.222542762756348,"mean":6.222542762756348,"median":6.222542762756348,"85th":6.222542762756348,"15th":6.222542762756348},"occupancy":{"time":534,"percent":1.78},"dwell":{"min":0,"max":0,"mean":0,"median":0},"headway":{"min":4706,"max":4706,"mean":4706,"median":4706},"gap":{"min":4706,"max":4706,"mean":4706,"median":4706},"length":{"min":4.24528169631958,"max":4.24528169631958,"mean":4.24528169631958,"median":4.24528169631958},"width":{"min":1.4586403369903564,"max":1.4586403369903564,"mean":1.4586403369903564,"median":1.4586403369903564},"height":{"min":1.3267799615859985,"max":1.3267799615859985,"mean":1.3267799615859985,"median":1.3267799615859985},"name":"unknown"}],"id":29,"name":"zone_13"}]}}
GET /api/app/object-analytics/samples?start={iso8601}&end={iso8601}
GET /api/app/object-analytics/samples?start={iso8601}&end={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61start ISO8601 Date & Time | Start time of the range to search /api/app/object-analytics/samples?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End time of the range to search /api/app/object-analytics/samples?end=2025-06-16T12:15:30 |
q array | Request additional query information: /api/app/object-analytics/samples?q=next - return the timestamp and remaining time of when the next sample period will be generated |
GET /api/app/object-analytics/samples?at={iso8601}
GET /api/app/object-analytics/samples?at={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61at ISO8601 Date & Time | The date and time /api/app/object-analytics/samples?at=2025-06-16T12:15:30 |
q array | Request additional query information: /api/app/object-analytics/samples?q=next - return the timestamp and remaining time of when the next sample period will be generated |
GET /api/app/object-analytics/samples?after={iso8601}
GET /api/app/object-analytics/samples?after={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61after ISO8601 Date & Time | The date and time /api/app/object-analytics/samples?after=2025-06-16T12:15:30 |
limit number | Limit the result to this many samples. A limit of 0, or not specifying a limit, will return all samples after this time and date /api/app/object-analytics/samples?limit=2 |
q array | Request additional query information: /api/app/object-analytics/samples?q=next - return the timestamp and remaining time of when the next sample period will be generated |
GET /api/app/object-analytics/samples?before={iso8601}
GET /api/app/object-analytics/samples?before={iso8601} HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Content-Type: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61before ISO8601 Date & Time | The date and time /api/app/object-analytics/samples?before=2025-06-16T12:15:30 |
limit number | Limit the result to this many samples. If no limit is provided a limit of 1 is assumed. Limits cannot be less than 1. /api/app/object-analytics/samples?limit=2 |
q array | Request additional query information: /api/app/object-analytics/samples?q=next - return the timestamp and remaining time of when the next sample period will be generated |
GET /api/app/object-analytics/report/volume
GET /api/app/object-analytics/report/volume HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/volume?format=excel - generates a report as an excel file download /api/app/object-analytics/report/volume?format=csv - generates a report as a csv file download /api/app/object-analytics/report/volume?format=json - generates a report as a json output /api/app/object-analytics/report/volume?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/volume?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/volume?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/volume?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/volume?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/volume?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/volume?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/volume?bin=15,minutes - to set bin sizes to 15 minutes |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/speed
GET /api/app/object-analytics/report/speed HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/speed?format=excel - generates a report as an excel file download /api/app/object-analytics/report/speed?format=csv - generates a report as a csv file download /api/app/object-analytics/report/speed?format=json - generates a report as a json output /api/app/object-analytics/report/speed?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/speed?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/speed?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/speed?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/speed?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/speed?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/speed?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/speed?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is mean, possible values are: mean, median, min, max, 85th, 15th /api/app/object-analytics/report/speed?subtype=mean - fetch average speeds /api/app/object-analytics/report/speed?subtype=85th - fetch 85th percentile speeds /api/app/object-analytics/report/speed?subtype=max - fetch maximum encountered speeds |
unit[speed] string | Set which unit of measurement you want values to be in. Default is the Integrator-AI configured units. Possible values: mph, kph, ms /api/app/object-analytics/report/speed?unit[speed]=mph - to show the values in mph |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/width
GET /api/app/object-analytics/report/width HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/width?format=excel - generates a report as an excel file download /api/app/object-analytics/report/width?format=csv - generates a report as a csv file download /api/app/object-analytics/report/width?format=json - generates a report as a json output /api/app/object-analytics/report/width?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/width?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/width?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/width?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/width?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/width?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/width?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/width?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is mean, possible values are: mean, median, min, max /api/app/object-analytics/report/width?subtype=mean - fetch average widths /api/app/object-analytics/report/width?subtype=max - fetch maximum encountered widths |
unit[distance] string | Set which unit of measurement you want values to be in. Default is the Integrator-AI configured units. Possible values: ft, in, cm, mm, km, mi, yd /api/app/object-analytics/report/width?unit[distance]=ft - to show the values in ft |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/height
GET /api/app/object-analytics/report/height HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/height?format=excel - generates a report as an excel file download /api/app/object-analytics/report/height?format=csv - generates a report as a csv file download /api/app/object-analytics/report/height?format=json - generates a report as a json output /api/app/object-analytics/report/height?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/height?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/height?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/height?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/height?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/height?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/height?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/height?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is mean, possible values are: mean, median, min, max /api/app/object-analytics/report/height?subtype=mean - fetch average heights /api/app/object-analytics/report/height?subtype=max - fetch maximum encountered heights |
unit[distance] string | Set which unit of measurement you want values to be in. Default is the Integrator-AI configured units. Possible values: ft, in, cm, mm, km, mi, yd /api/app/object-analytics/report/height?unit[distance]=ft - to show the values in ft |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/length
GET /api/app/object-analytics/report/length HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/length?format=excel - generates a report as an excel file download /api/app/object-analytics/report/length?format=csv - generates a report as a csv file download /api/app/object-analytics/report/length?format=json - generates a report as a json output /api/app/object-analytics/report/length?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/length?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/length?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/length?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/length?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/length?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/length?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/length?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is mean, possible values are: mean, median, min, max /api/app/object-analytics/report/length?subtype=mean - fetch average lengths /api/app/object-analytics/report/length?subtype=max - fetch maximum encountered lengths |
unit[distance] string | Set which unit of measurement you want values to be in. Default is the Integrator-AI configured units. Possible values: ft, in, cm, mm, km, mi, yd /api/app/object-analytics/report/length?unit[distance]=ft - to show the values in ft |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/headway
GET /api/app/object-analytics/report/headway HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/headway?format=excel - generates a report as an excel file download /api/app/object-analytics/report/headway?format=csv - generates a report as a csv file download /api/app/object-analytics/report/headway?format=json - generates a report as a json output /api/app/object-analytics/report/headway?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/headway?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/headway?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/headway?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/headway?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/headway?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/headway?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/headway?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is mean, possible values are: mean, median, min, max /api/app/object-analytics/report/headway?subtype=mean - fetch average headway /api/app/object-analytics/report/headway?subtype=max - fetch maximum encountered headway |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/gap
GET /api/app/object-analytics/report/gap HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/gap?format=excel - generates a report as an excel file download /api/app/object-analytics/report/gap?format=csv - generates a report as a csv file download /api/app/object-analytics/report/gap?format=json - generates a report as a json output /api/app/object-analytics/report/gap?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/gap?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/gap?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/gap?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/gap?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/gap?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/gap?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/gap?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is mean, possible values are: mean, median, min, max /api/app/object-analytics/report/gap?subtype=mean - fetch average headway /api/app/object-analytics/report/gap?subtype=max - fetch maximum encountered headway |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/dwell
GET /api/app/object-analytics/report/dwell HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/dwell?format=excel - generates a report as an excel file download /api/app/object-analytics/report/dwell?format=csv - generates a report as a csv file download /api/app/object-analytics/report/dwell?format=json - generates a report as a json output /api/app/object-analytics/report/dwell?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/dwell?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/dwell?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/dwell?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/dwell?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/dwell?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/dwell?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/dwell?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is mean, possible values are: mean, median, min, max /api/app/object-analytics/report/dwell?subtype=mean - fetch average headway /api/app/object-analytics/report/dwell?subtype=max - fetch maximum encountered headway |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/occupancy
GET /api/app/object-analytics/report/occupancy HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/occupancy?format=excel - generates a report as an excel file download /api/app/object-analytics/report/occupancy?format=csv - generates a report as a csv file download /api/app/object-analytics/report/occupancy?format=json - generates a report as a json output /api/app/object-analytics/report/occupancy?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/occupancy?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/occupancy?end=2025-06-16T12:15:30 |
bin number,representation | The bin size, used to split the data up into smaller chunks. There are two parts to this value the size value and the representation. The size is numeric and represent can be one of the following: seconds, minutes, hours, days, months, years /api/app/object-analytics/report/occupancy?bin=1,year - to set bin sizes to 1 year /api/app/object-analytics/report/occupancy?bin=1,month - to set bin sizes to 1 month /api/app/object-analytics/report/occupancy?bin=1,hour - to set bin sizes to 1 hour /api/app/object-analytics/report/occupancy?bin=30,minutes - to set bin sizes to 30 minutes /api/app/object-analytics/report/occupancy?bin=15,minutes - to set bin sizes to 15 minutes |
subtype string | Which sub data type to target. Default is time, possible values are: time, percent /api/app/object-analytics/report/occupancy?subtype=time - fetch total occupancy times /api/app/object-analytics/report/occupancy?subtype=percent - fetch maximum occupancy as a percentage of the bin size. This does not work with bin sizes of month or year, but a future update will include these |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
GET /api/app/object-analytics/report/chronology
GET /api/app/object-analytics/report/chronology HTTP/1.1
Host: 127.0.0.1
Accept: application/json
Authorization: bearer 109b893ceb1c26e3e64e9abf7cdd2aa1c0d25f61
format string | Specifies the output format for the report. Defaults to json /api/app/object-analytics/report/chronology?format=excel - generates a report as an excel file download /api/app/object-analytics/report/chronology?format=csv - generates a report as a csv file download /api/app/object-analytics/report/chronology?format=json - generates a report as a json output /api/app/object-analytics/report/chronology?format=json.file - generates a report as a json file download |
start ISO8601 Date & Time | Start date and time for the selection range of the report /api/app/object-analytics/report/chronology?start=2025-06-16T12:15:30 |
end ISO8601 Date & Time | End date and time for the selection range of the report /api/app/object-analytics/report/chronology?end=2025-06-16T12:15:30 |
zones array[number] | A list of zones to include in the report. If you don't provide a list of zones, you will only get the aggregated data set. A maximum of 24 zones can be selected per report |
HTTP/1.1 200 OK
Content-Type: {depends on format parameter}
Edge Link (MQTT)
app/object-analytics/record/object/zone/$id [JSON]
When Object Analytics resolves an object's interaction with a zone (when the object egresses the zone), it will publish to this topic
$id | ID of the zone |
{"axles":0,"classification":"car","dwell":12044,"egress":{"position":[42.35591825418686,-83.06672620260879],"heading":1.029386,"timestamp":1765040435767},"gap":125953,"headway":126845,"id":[300,1765040419242],"ingress":{"position":[42.35585395060612,-83.06692575545092],"heading":1.029386,"timestamp":1765040423723},"lwh":[5.048340320587158,1.9778791666030884,1.8502358198165894],"speed":5.212520599365234,"type":"vehicle","zone":26}