-
-
Platform Overview Platform Overview
High-precision data and advanced tooling in one place
-
Maps & Data Maps & Data
Build high-quality maps using fresh location data
Maps & Data-
Map Data Map Data
Create fresh, accurate maps and layer global information
-
Dynamic Map Content Dynamic Map Content
Explore industry-leading map content
-
Maps for ADAS & HAD Maps for ADAS & HAD
Help vehicles see beyond sensors with location data sources
-
-
Services Services
Browse our extensive range of services and APIs
Services-
Routing Routing
Make journey planning easier with our routing portfolio
-
Geocoding & Search Geocoding & Search
Translate addresses into accurate geocoordinates
-
Map Rendering Map Rendering
Highly customizable graphics and real-time map data
-
Positioning Positioning
Pinpoint devices and assets locations with precision
-
-
Tools Tools
Build solutions with our flexible developer tools and applications
Tools-
HERE Studio HERE Studio
Visualize, style and edit location data
-
HERE Workspace HERE Workspace
Create location-centric products and services in one space
-
HERE Marketplace HERE Marketplace
Source, buy, sell and trade location assets
-
HERE SDK HERE SDK
Build advanced location-enabled applications
-
HERE Live Sense SDK HERE Live Sense SDK
Enhance driver awareness by using AI
-
HERE Anonymizer HERE Anonymizer
Maximize location data while supporting regulatory compliance
-
-
Capabilities Capabilities
Everything you need for your location-related use case
Capabilities-
Visualize Data Visualize Data
Identify complex trends and patterns
-
Generate Insights Generate Insights
Transform location data into compelling stories
-
Build Applications Build Applications
Create feature-rich products designed for business
-
Develop Services Develop Services
Produce tailored service experiences
-
Make Maps Make Maps
Create and use custom digital maps
-
-
-
-
By Market By MarketBy Market
-
Automated Driving Automated Driving
-
Connected Driving Connected Driving
-
Fleet Management Fleet Management
-
Supply Chain Supply Chain
-
Urban Mobility Urban Mobility
-
Infrastructure Planning Infrastructure Planning
-
Public Safety Public Safety
-
-
By Applications By ApplicationsBy Applications
-
HERE Last Mile HERE Last Mile
Optimize your last mile deliveries
-
HERE Asset Tracking HERE Asset Tracking
Track assets in real-time with our end-to-end solution
-
HERE Navigation HERE Navigation
Use our off-the shelf navigation system
-
HERE WeGo HERE WeGo
Enjoy your journey with our new navigation app
-
-
-
-
Partner with HERE Partner with HERE
-
Partner Network Partner Network
-
-
Pricing Pricing
-
-
Documentation Documentation
-
Tutorials Tutorials
-
Code Examples Code Examples
-
Knowledge Base Knowledge Base
-
Developer Blog Developer Blog
-
-
-
About us About us
-
Events Events
-
News News
-
Press Releases Press Releases
-
Careers Careers
-
Sustainability Sustainability
-
Leadership Leadership
-
Investors Investors
-
HERE360 Blog HERE360 Blog
-
Oh the places you'll go (and how you get there...)

We've discussed various aspects of our routing APIs here in the past, as well as news about new features such as our new electric vehicle routing support. With the additions, updates, and other changes to our platform over the past few months, we thought it would be nice to provide an overview of the various type of routing features available to developers. Instead of taking an "API first" approach, instead we'll break it down by feature and explain the APIs that back them up. Ready? Let's get started!
How do I drive from one point to another?
The simplest of all requests - how to drive from one point to another. This makes use of the basic HERE routing API. You provide a starting and end location and that's it.
You can ask for a summary back which will cover the time and distance travelled, or you can ask for more detailed information which can include turn by turn directions.
Here's an example of the most basic routing: Calculate a Route
What if I want to drive from one point to another at a certain time?
Building on the last example, you can also ask for a route at a particular time. In this case, HERE uses historical traffic data to estimate how other vehicles will impact your route.
We've got a specific example of this for you: Begin Route At Different Times
What if I want to go from one point to another and not take (just) a car?
Our routing API supports multimodal transportation. From cars, scooters, or trucks, to journeys by bike and on foot. This can get rather complex and our API handles it all. Take bicycle routing as an example. Our API will literally handle knowing that when you bike uphill, you go slower. It will even recognize that a route may be quicker if you walk your bike the wrong way on a one-way road.
Going from one point to another and stopping along the way?
Another typical routing problem is going from your origin to a destination and then stopping somewhere, perhaps multiple somewheres. Our routing API supports providing "waypoints" which define places to stop along the route.
Yep, we've got an example of that: Route Via Intermediate Waypoint
Note that a more advanced use case would be a route with multiple waypoints that you need to get to in the "best" order in terms of time or distance, or to perhaps make deliveries and pickups. For that we've got tour planning, we'll talk a bit more about that later.
Trucks are special, right?
Absolutely. Trucks may have to use different routes based on their size, weight, and possibly hazardous materials. Our routing API lets you specify the characteristics of your truck and then plans it's route to abide by legal rules regulating where the truck can drive. It even handles cases where a truck can't physically make certain tight turns.
Here's more about truck routing: Truck Routing
What about public transit?
Another interesting use case is including public transit as part of your route. This is where Intermodal routing comes into play. It lets you add routes that may mix public transit, taxis, walking, and more.
Surprise surprise, but we've got a demo and example of this as well : Calculate a Park and Ride Route
Can I skip the toll roads?
Another aspect of routing is avoiding certain things, such as toll roads, tunnels, or ferries. You may even want to avoid a geographic region, like a city. In our routing APIs, we call this avoidance. When requesting a route, you can ask for things to avoid. What's great is that if you ask to avoid a particular factor, but it's impossible to get to the destination, the API will at least attempt to minimize that factor for you. This is much better than returning no route at all.
Unfortunately we don't have a demo of that. Wait, of course we do: Avoidance
Can routing handle electric vehicles?
Absolutely. Announced a few short weeks ago, our routing API has deep support for managing electric vehicle (EV) routing needs. You can specify various indicators (how much your vehicle is charged, how long it takes to recharge), and the routing API will handle including charging stops along the way.
EV routing has a good introduction in the developer guide and our blog recently shared an introduction to the feature. You can also test this feature out using our powerful online tool. This will be especially helpful when it comes to configuring the various parameters required to use EV vehicles in the API.
What if I don't know where I want to go, just how far I can go?
You're talking about "isoline" routing, which is routing that determines exactly how far you can go in a certain amount of time or within a given distance. This may be easier if shown graphically. In the image below, you can see where a car can travel starting in Berlin and driving for three thousand meters. In this case the result was based on the time the API was called, but you can absolutely specify different times to see the impact of traffic (for time-based isoline routing anyway).
What if I manage a fleet of vehicles and have to plan routes for all of them?
For large scale routing, we offer matrix routing, which lets you plan routes for up to ten thousand origin and destinations. As you can imagine, this requires a lot of work and therefore the API can be used in both synchronous and asynchronous modes, letting you create a request and then poll for updates later.
We've got a number of different use cases with examples for you to dig further.
My driver took a long time to deliver a package, what can I do?
Here's an interesting use case. You've got a planned route for a truck from one point to another and it's supposed to take a certain amount of time. You discover later that the truck actually took twice as much time as anticipated. Was a route diversion to blame? If you tracked the vehicle's actual route, you can use the route matching API to compare routes and get deep analytics. This can do things like finding speeding violations and missed waypoints.
I've got to make multiple stops, what's the best route?
For one of our final, and most complex use cases, we come to tour planning. At a high level, tour planning takes in a set of inputs that cover the types of vehicles in a fleet, their capacities, and a set of jobs with requirements involving deliveries, pick ups, and times. The API can take this input and in return, give you a "best" plan to use your fleet to meet the needs of the jobs.
If you want to see more about this API, we recently published an article that gives a somewhat gentle introduction to the service: Working with Tour Planning
Routing - Going Deeper
We hope this review of the routing features gives you an idea of both the breadth and depth of our routing options. Be sure to sign up today for a freemium account and start building today!
Have your say
Sign up for our newsletter
Why sign up:
- Latest offers and discounts
- Tailored content delivered weekly
- Exclusive events
- One click to unsubscribe