ORS NEWS: more frequent updates, new GPX response, snapping tolerance

Updating the ORS routing graph… frequently!

We’re very happy to announce two more important core features for our services:

  1. Weekly OSM planet.pbf update!
  2. md5 checksum included in response!

How old is the OpenStreetMap planet file which was used to build the openrouteservice road network? This is a question many of you have asked over the past. To this end, we finally added one very simple feature to the API response, namely the specific md5 checksum of the planet file which was used. You will find it in the information block – here a simple example:

"info": {
"attribution": "openrouteservice.org | OpenStreetMap contributors",
"osm_file_md5_hash": "3cf93f78507dd63f479e558854b55acb",
"engine": {
"version": "4.4.0",
"build_date": "2018-01-19T13:50:52Z"

ORS now responds in gpx!

Probably all of you have had the requirement of transforming formats into other formats. There are many ways to do so but every time it’s one more step of work. And honestly, this can become quite annoying. To this end, we have decided to extend the API’s capabilities. Our first feature in this direction is enabling the response format to be in GPX. This suggestion came from one of our many users who wanted to save the APIs route response directly to a TomTom navigation device. Quite handy! To give you an example, try this URL with your api_key:


Control the Snapping Tolerance

One interesting requirement which we have been asked again and again by the openrouteservice community is to implement means of control in regards to the snapping tolerance to the underlying street network. Sounds complicated but it isn’t. Well, by default our engine will look for the next street segment within a 50 kilometer radius. You might have noticed this behaviour on openrouteservice.org – add a waypoint that doesn’t necessarily lie on the road – which yet can be used to compute a route. This can now be controlled by you by using the radiuses parameter in your request (please be aware that this list length must correspond to the number of waypoints)!

Let’s give this a try by setting radiuses to 500 meters for each waypoint – perfect, it will find a route:


And now we will decrease to 50 meters, aha, it will respond with 
“Cannot find point 1: 50.720223,10.890477 within a radius of 50.0 meters”!


Happy routing!