GET /api/v1/cities/{slug}/parking-onstreet
On-street parking per city (Tier A, keyless)
Managed on-street parking per city from the city's open thematic data. Returns totals (segment_count = street sections with their own parking rule, total_spaces, zone_count, accessible_bay_count/accessible_spaces, loading_zone_count/loading_spaces) plus three aggregates: by_regulation (per rule group), by_street (alphabetical) and zones (per parking management area with measure, status, enforcement, opened). Plus accessible_bays and loading_zones, each with lat/lon. Raw segments are deliberately not served. Master data, NO occupancy. Currently: Munich (WFS of the mobility department, DL-DE/BY 2.0). Partial coverage: toggle off -> 200 source_status="disabled"; city not covered -> 200 source_status="not_covered" (with covered_cities); covered city without data -> 200 source_status="no_data". Broken upstream fields never cause 500.
Parameters
| Name | In | Required | Type | Example | Description |
|---|---|---|---|---|---|
slug | path | yes | string |
Code samples
curl "https://infranode.dev/api/v1/cities/hamburg/parking-onstreet"const res = await fetch("https://infranode.dev/api/v1/cities/hamburg/parking-onstreet");
const data = await res.json();
console.log(data);import httpx
res = httpx.get("https://infranode.dev/api/v1/cities/hamburg/parking-onstreet")
res.raise_for_status()
print(res.json())