Skip to main content

Zone

Operational zones, their areas, and parking occupancy. Use these endpoints to render where riding, parking and reduced-speed rules apply, and to discover which zones the partner can access. Zone areas change rarely — cache them no more than once every 6 hours.

Operational zones

Get operational zones responds with every zone the partner can access.

{
"data": {
"id": "4EAC93B2-CB40-4FFD-B905-F4505E2E3BAD",
"type": "zone",
"attributes": {
"zones": [
{
"zoneId": "1",
"zoneName": "Stockholm",
"parkingMode": "free-floating",
"licenceVerificationRequired": false,
"speedConfig": { "maxSpeed": 25, "minRequiredRides": 3, "reducedSpeed": 11, "speedUnit": "km/h" }
}
]
}
}
}
FieldTypeDescription
zoneIdstringVoi's unique id of the operational zone.
zoneNamestringName of the city.
parkingModestringDefault parking mode — see below.
licenceVerificationRequiredbooleanWhether verifying the user's driving licence is required.
speedConfigobjectZone speed restrictions — see below.
isSleepingbooleanWhether the zone is in sleep mode (vehicles unavailable; no rentals can start).

Parking modesfree-floating (end the ride anywhere except No-parking and No-riding zones) or parking-spot (rides can only end inside a parking spot).

Speed configmaxSpeed and reducedSpeed (beginner's mode) are given in speedUnit (km/h or mph); minRequiredRides is the rides needed before a user can leave beginner's mode.

Zone areas

Get zone areas responds with the operational zone's areas as GeoJSON.

{
"data": {
"id": "1",
"type": "area",
"attributes": {
"areas": [
{
"id": "651d1341-775d-4e0a-a5d3-310add50ef7f",
"area_type": "no-parking",
"geometry": { "type": "MultiPolygon", "coordinates": [] }
}
]
}
}
}

Area types

Area typeDescription
operationsThe operational area where Voi operates.
no-parkingRentals cannot be ended here.
parking-spotA rental must be ended here.
slow-zoneThe vehicle's max speed is lowered.
no-ridingVehicles may stop (depending on configuration); the ride cannot end here.
incentiveUsers are incentivised to park here.
free-floatingRentals can end without restrictions (V2 endpoint only).

A zone uses either parking spots or free-floating — it has either no-parking or parking-spot areas, never both. All area behaviour is enforced by the system, but for a good user experience we recommend explaining the areas and their implications to the user.

Parking occupancy

Get parking occupancy returns the number of available spots per parking-spot area.

{ "data": [ { "id": "044bb70b-8ac6-605c-984f-2244776800a5", "occupancy": 8, "capacity": 10 } ] }
FieldTypeDescription
idstringSpecific parking-spot area id.
occupancyintegerNumber of parked vehicles in the area.
capacityintegerMaximum capacity of the area.