- Document ID
openrouteservice- Version
- 1.0.0 · Revision: 1
- Provider
- HeiGIT gGmbH (Heidelberg Institute for Geoinformation Technology)
- Service
- openrouteservice —
api.heigit.org - LastWagon component
- Basic truck routing, address search, autocomplete, reverse geocoding
- Status
- Final record — counsel reviewed 2026-08-21.
What LastWagon uses
| Endpoint | Used for |
|---|---|
/openrouteservice/v2/directions/driving-hgv/geojson | Basic truck route calculation |
/pelias/v1/search | Address lookup (the geocode of record) |
/pelias/v1/autocomplete | Address suggestions as you type |
/pelias/v1/reverse | Turning coordinates into an address label |
Routing requests carry the driver's truck profile — height, width, length, gross weight, axle load, axle count, vehicle type and hazardous-material class — and request roadaccessrestrictions extra information, which is how the app learns a route crosses a restricted road. That field is safety-relevant output and is never dropped.
Two request paths
- Through the LastWagon proxy (the default). The shared openrouteservice key is held server-side and never ships in the app. HeiGIT sees LastWagon's server address.
- Directly from the device, when the driver has entered their own key. HeiGIT sees the driver's address, and the driver's own allowance is used.
No build ships an openrouteservice key. A key was previously compiled into the APK as a BuildConfig field and was extractable from every published build; that is why the proxy exists.
Obligations
Attribution — required
The attribution openrouteservice requires wherever its content is displayed:
© openrouteservice.org by HeiGIT | Map data © OpenStreetMap contributors
LastWagon implementation: the exact string is a single constant, ORS_ATTRIBUTION in feature/routing/.../OrsApi.kt, displayed with route results, on the route planner, and beside resolved address fields. It is shown unconditionally rather than only when a response happens to carry its own attribution field, so a response without one cannot silently drop the credit.
Result licence
openrouteservice states that API results are made available under CC BY 4.0. The underlying data is OpenStreetMap, under ODbL — see openstreetmap.md.
API keys are personal
A driver's key is theirs, obtained from HeiGIT, subject to HeiGIT's terms, and carries their own allowance.
LastWagon implementation: stored in a private preferences file on the device, excluded from Android cloud backup and device transfer, never transmitted to LastWagon's servers, never logged. Clearing the field deletes it. The app must explain in the key-entry screen that the key belongs to the driver and is governed by HeiGIT's terms.
Service limits observed by LastWagon
openrouteservice publishes per-request limits, including a 6,000 km maximum route distance and 50 route waypoints. A coast-to-coast U.S. route sits inside that. Free-plan daily quotas apply per key.
LastWagon implementation: the proxy's own global daily budget is deliberately set below the free-tier daily quota so the proxy cannot exhaust the shared key, and per-install and per-IP limits sit under that. Rate limiting fails *open* by design — a driver mid-trip must not lose routing because a counter store is unavailable — which is why the upstream quota is the last line of defence.
Caching and redistribution
openrouteservice's published terms do not set an explicit result-caching period.
LastWagon implementation: LastWagon stores one calculated route on the device so the driver can review it and resume it, and stores no routing results server-side at all. It does not redistribute openrouteservice results, does not build a dataset from them, and does not resell access.
Sources
- https://openrouteservice.org · https://heigit.org
- Terms of service: https://account.heigit.org/info/tos (redirected from
https://openrouteservice.org/terms-of-service/) - Restrictions and per-request limits: https://openrouteservice.org/restrictions/
- Retrieved: 2026-08-20