Products/Mobility
hybrid6 platforms6 source families
Move with confidence

Routes & Navigation

Routes, matrices, optimization, map matching, predictive ETAs, and turn-by-turn navigation.

Start building Get credentials

Plan and operate journeys for cars, bikes, trucks, pedestrians, and fleets. Choose between single-shot route calculations and a stateful navigation session that continuously responds to progress, traffic, deviations, incidents, and destination changes.

Capabilities

Multi-profile routing and alternativesProduction guidance, platform support, examples, and operational considerations included.01
Distance and time matricesProduction guidance, platform support, examples, and operational considerations included.02
Trip and vehicle-route optimizationProduction guidance, platform support, examples, and operational considerations included.03
Map matching and snap-to-roadProduction guidance, platform support, examples, and operational considerations included.04
Predictive routes and refreshed ETAsProduction guidance, platform support, examples, and operational considerations included.05
Online and offline turn-by-turn navigationProduction guidance, platform support, examples, and operational considerations included.06

Available platforms

Keep business identifiers and server-side policy portable; use the native surface where device integration or long-lived state matters.

Restricted static key (current) or legacy OAuth, plus SDK entitlement

Current core REST routing uses the restricted static-key query contract; legacy OAuth requires its issued host/path generation. Route calls are stateless, while navigation requires an entitled, lifecycle-aware SDK session.

  • Use separate projects for development, staging, and production.
  • Apply the narrowest domain, IP, platform, product, and resource scopes available.
  • Never ship a server secret in a browser bundle, mobile binary, prompt, or public repository.

Quickstart

Replace placeholders with credentials from the developer console. Examples include the lifecycle and failure-handling context that short snippets usually omit.

Routes & Navigation quickstart
val route = MapplsDirections.builder()
  .origin("MMI000")
  .destination("MMI001")
  .profile(DirectionsCriteria.PROFILE_DRIVING)
  .resource(DirectionsCriteria.RESOURCE_ROUTE)
  .steps(true)
  .build()

route.enqueueCall(object : Callback<DirectionsResponse> {
  override fun onResponse(call: Call<DirectionsResponse>, response: Response<DirectionsResponse>) {
    val primaryRoute = response.body()?.routes()?.firstOrNull()
  }
  override fun onFailure(call: Call<DirectionsResponse>, error: Throwable) = Unit
})
Before productionRestrict and rotate credentialsHandle timeouts and typed errorsAdd tracing without logging secretsTest quota and degraded-mode behavior

A complete navigation session

Treat navigation as a durable state machine, not a route polyline with voice prompts.

1
State · draft

Plan

Resolve origin, stops, vehicle profile, constraints, and alternatives.

2
State · ready

Preview

Present ETA, distance, tolls, incidents, and route trade-offs.

route.calculated
3
State · navigating

Start

Acquire location, initialize guidance, and begin progress tracking.

navigation.started
4
State · navigating

Respond

Refresh progress, reroute on deviation, and surface traffic events safely.

route.updated
5
State · completed

Arrive

Confirm arrival, stop sensors, persist trip summary, and release the session.

navigation.arrived

Operate the complete lifecycle

These blueprints name every state, actor, command, event, invariant, durable record, retry boundary, failure recovery, source contract, and operational signal.

Browse all stateful journey blueprints

Source repositories

Reference content is reconciled against these public and private source families. Version, authentication generation, and maturity are recorded before content is promoted.

Browse all 40 related integration guides