Civimatica Developers

Data model

The objects the API returns and how they relate.

Everything the API returns is derived from measurements taken by Civimatica edge devices and processed by Civimatica models. You receive answers and state, never raw imagery.

Geography

  • Corridor — a stretch of street we measure, e.g. a delivery route or a monitored boulevard. Identified by crd_... IDs.
  • Segment — a part of a corridor with its own street state, seg_....
  • Kerb zone — a contiguous stretch of kerb with parking or stopping spaces, kz_.... Expressed as GeoJSON when geometry is returned.

Objects

StreetState

The current model-produced state of a segment:

  • occupancy — free and total spaces, overall state
  • flow — vehicle and pedestrian rates, flow class (free_flow, moderate, congested)
  • movement — dominant movement classes (vehicle, pedestrian, cyclist, heavy_vehicle)
  • condition_flags — active condition types on the segment

Occupancy

Per kerb zone: free_spaces, total_spaces, a state of free, occupied, or partially_occupied, plus confidence and observed_at.

Condition

A detected street condition — pothole, surface_damage, obstruction, signage, or other — with severity, location, confidence, and detected_at.

Event

Something that happened on a corridor: arrival, departure, occupancy_change, or flow_anomaly, with an event-specific data payload.

Device

A provisioned edge device: status (provisioning, active, offline, retired), the model_version it runs, location, and last_seen_at.

Identifiers

IDs are prefixed by type: crd_ corridor, seg_ segment, kz_ kerb zone, cnd_ condition, evt_ event, dev_ device, ds_ dataset. Filter parameters accept these IDs directly.

Time

All timestamps are ISO 8601 UTC. observed_at is when the state was measured; detected_at/occurred_at is when the detection or event happened on the street, not when it was written to the API.

On this page