Google Mobility: Working with Google ODRD, LMFS and Cloud Fleet Routing APIs

How to use the Google Mobility suite of APIs to build ride share and delivery applications.

Google Mobility: An introduction to Google ODRD, LMFS and Cloud Fleet Routing APIs

Google Mobility is the umbrella term for a group of advanced Google Maps Platform APIs and services designed for creating mobility solutions. In this series, I'll explain how you can use Mobility's most popular APIs to build your own logistics applications.

Part 1: Google Mobility: An introduction to Google ODRD, LMFS and Cloud Fleet Routing APIs (this article)
Part 2: Google ODRD: Routes Preferred computeRoutes API
Part 3: Google LMFS: Routes Preferred ComputeRouteMatrix API
Part 4: Google Cloud Fleet Routing: OptimizeTours API
Part 5: Google ODRD: Navigation SDK (coming soon)

Unlike Google Maps's standard pay as you go APIs, you need to sign up with a Google Cloud Partner to access Google Mobility. This is because Google Mobility bills per completed trip, and the responsibility for making sure that the number of completed trips is in line with acceptable API usage belongs to the Partner. The cost for each completed trip varies, ranging from USD$0.10 to USD$0.15, depending on your industry, usage volume, and API mix. You need to be a bona fide delivery company or last mile logistics software provider to sign up with a Partner, so if you are just looking to play with the APIs for fun, you're out of luck.

Google's Mobility APIs are broadly grouped into three categories:

On Demand Ride and Deliveries (ODRD)

ODRD APIs are used to build on ride share and delivery applications where requests are created "on demand" i.e. in real time e.g. Uber (ride share) and Doordash (food delivery). For example, the SearchVehicles API helps you match a new booking to the nearest available driver while the Places Autocomplete API lets customers correctly specify their pickup and drop off locations.

Dispatch routing software for on demand rides and deliveries can use Google Places Autocomplete API to automatically suggest addresses
Google ODRD's Places Autocomplete API suggests addresses based on partial text matches

Last Mile Fleet Solution (LMFS)

LMFS APIs are used in last mile delivery software that deal with deliveries scheduled ahead of time. For example, most courier companies plan routes the day before. Because each delivery has a specific place in a route, it's possible to let customers track the status of their deliveries and the ETA (Estimated Arrival Time) by monitoring the real time progress of the driver making the delivery. Google's Trip and Order Progress and Shipment Tracking APIs are perfect for this.

Last mile delivery software can use Google last mile fleet solution APIs for last mile tracking
Google LMFS's Trip and Order Progress API lets you track a driver's progress in real time

Cloud Fleet Routing

Cloud Fleet Routing is a standalone route and fleet optimization toolkit that competes with API-first route optimization providers such as Routific, LogisticsOS and GraphHopper as well as open source vehicle routing solvers like jsprit and OR Tools. Cloud Fleet Routing's OptimizeTours API finds the most cost effective (travel distance minimizing) way for a fleet of vehicles to complete all the jobs assigned to it. It helps logistics companies answer questions such as "How many vehicles do I need to serve all my customer deliveries tomorrow?" or "For each driver, in what order should I sequence his route?".

Google Cloud Fleet Routing API enables fleet optimization for cfr logistics systems
The Cloud Fleet Routing API matches jobs with drivers in the most cost effective way possible

Initially, ODRD, LMFS and Cloud Fleet Routing were built and marketed as separate products each with their own engineering, product management and sales teams. Google Maps was responsible for ODRD and LMFS while Google Cloud handled Cloud Fleet Routing. As of mid-2023, all three products have been combined under the Google Mobility banner and customers (working through their respective Google Maps Partners) can pick and choose which APIs they want to use.

Google Mobility APIs can be used in fleet mobility solutions for address context and validation, route planning and dispatch as well as driver routing and navigation
You can pick and choose which Mobility APIs to use for your fleet mobility solution

The best way to describe how Google APIs are used in fleet mobility solutions is to use the real world example of RouteBasic, a free route planner for small businesses that plan their own routes. RouteBasic (below) uses the Place Search API (1) to let drivers specify customer delivery locations and add them to a route, one at a time. Once a list of delivery addresses is compiled, RouteBasic calls the Cloud Fleet Routing API (2) to build the driver's route for the day and sequence his stops optimally. The route is shown on a Maps SDK base map (3) together with his stops. Each stop is numbered according to the order in which they are to be visited. Lastly, when a driver heads to a particular stop, he can use the [Navigate] button to start in-app turn by turn navigation powered by the Navigation SDK (4).

Fleet mobility solutions can use any combination of ODRD, LFMS and CFR APIs in their workflow
Google Mobility APIs used in a real world fleet mobility solution

What you'll learn in this course

By the end of this tutorial, you'll learn how to make calls and understand the strengths and limitations of four of the most important APIs in Google Mobility:

Routes Preferred returns driving directions, travel time (which includes real time traffic) and polylines for the fastest route between two points.

Compute Route Matrix returns travel times (including real time traffic) for up to 25 origin destination pairs.

Optimize Tours is a performant vehicle routing and pickup and delivery problem solver that uses real time traffic information to calculate optimal routes.

Navigation SDK is Google's in-app navigation product. It was previously restricted to large companies such as Uber and Go Jek that used it as part of their driver app.

👋 As always, if you have any questions or suggestions for me, please reach out or say hello on LinkedIn.

Next: Part 2: Google ODRD: RoutesPreferred API