Drive Zones
Driving-distance service areas
StreetKit Drive Zones help teams apply driving-distance rules after a user selects an address.
What the feature does
Drive Zones classifies selected StreetKit addresses against configured origins and driving-distance rules. A customer can use the result for examples such as free delivery within 20 km, nearest branch messaging, local delivery fee tiers, and a coverage checker.
Display this wording anywhere a Drive Zones result is shown: Estimated driving distance based on OpenStreetMap road data at the time the zone index was built.
What it does not do
- Drive Zones are not live traffic, courier-certified, or NZ Post-certified results.
- Drive Zones do not guarantee delivery times or prove postal deliverability.
- Drive Zones do not include full routing data, customer secrets, payment data, or unrelated form payloads.
Data requirements
A Drive Zones build needs selected-address IDs and coordinates from a specific StreetKit address dataset, customer origins and rules, and compatible road-distance data. Generated results are tied to the matching address data version so stale or incompatible files can fail closed.
Keep full generated Drive Zones output and private customer configs out of Git.
Preparation summary
Drive Zones requires a compatible address dataset, agreed business rules, and reviewed OpenStreetMap attribution. For a shorter setup guide, see Drive Zones setup. For a customer-facing overview, read the Drive Zones page.
Example widget config
StreetKit.init({
input: "#address",
publicMode: true,
indexBaseUrl: "https://index.streetkit.smp.kiwi/public/v1",
deliveryZones: {
enabled: true,
mode: "precomputed_driving",
metaUrl: "https://example.com/streetkit-delivery/meta.json"
},
onSelect(address, context) {
console.log(address, context.delivery);
console.log(context.driveZones);
}
});
Example response
{
"driveZones": {
"available": true,
"mode": "precomputed_driving",
"status": "eligible",
"addressId": "linz:123456",
"zoneVersion": "v2026-05-09-delivery-001",
"addressDataVersion": "fixture-v1",
"distanceKm": 14.2,
"distanceMetres": 14200,
"origin": {
"id": "akl-warehouse",
"label": "Auckland warehouse",
"lat": -36.8978,
"lon": 174.8085
},
"matchedRule": {
"id": "free-delivery",
"label": "Free delivery",
"maxDistanceKm": 20,
"fee": 0
},
"message": "Free delivery is available for this example address.",
"disclaimer": "Estimated driving distance based on OpenStreetMap road data at the time the zone index was built.",
"attribution": {
"text": "Routing data © OpenStreetMap contributors, available under the Open Database License.",
"urls": [
"https://www.openstreetmap.org/copyright",
"https://osmfoundation.org/wiki/Licence/Licence_and_Legal_FAQ",
"https://project-osrm.org/"
]
}
}
}
Attribution and licensing notes
Routing data © OpenStreetMap contributors, available under the Open Database License. Include OpenStreetMap copyright and licence context wherever OSM-derived Drive Zones are documented or displayed.
Complete an ODbL/share-alike review before commercial distribution of OSM-derived Drive Zones datasets. Do not claim endorsement by OpenStreetMap or related routing-data projects.
Limitations
- Results reflect the OpenStreetMap road graph and customer rules at build time.
- OSM road data can be incomplete, stale, disconnected, or different from courier networks.
- Unrouteable, missing-coordinate, missing-data, and version-mismatch statuses should be handled as unknown or quote-required by the host site.
- Drive Zones data can reveal service-area strategy if shared publicly; use protected access for sensitive rules.
Future live routing path
Future StreetKit Route work would be a separate product path with its own pricing, quotas, fallback behavior, and privacy notes. Compare the delivery radius checker and routing distance pages before choosing an approach.