ComputeCustomRoutesResponse

ComputeCustomRoutes response message.

JSON representation
{
  "routes": [
    {
      object (CustomRoute)
    }
  ],
  "fastestRoute": {
    object (CustomRoute)
  },
  "shortestRoute": {
    object (CustomRoute)
  },
  "fallbackInfo": {
    object (FallbackInfo)
  }
}
Fields
routes[]

object (CustomRoute)

The ‘best’ routes for the input route objective.

fastestRoute

object (CustomRoute)

The fastest reference route.

shortestRoute

object (CustomRoute)

The shortest reference route.

fallbackInfo

object (FallbackInfo)

Fallback info for custom routes.

CustomRoute

Encapsulates a custom route computed based on the route objective specified by the customer. CustomRoute contains a route and a route token, which can be passed to NavSDK to reconstruct the custom route for turn by turn navigation.

JSON representation
{
  "route": {
    object (Route)
  },
  "token": string
}
Fields
route

object (Route)

The route considered 'best' for the input route objective.

token

string

Web-safe base64 encoded route token that can be passed to NavSDK, which allows NavSDK to reconstruct the route during navigation, and in the event of rerouting honor the original intention when RoutesPreferred ComputeCustomRoutes is called. Customers should treat this token as an opaque blob.

FallbackInfo

Encapsulates fallback info for ComputeCustomRoutes. ComputeCustomRoutes performs two types of fallbacks:

  1. If it cannot compute the route using the routingPreference requested by the customer, it will fallback to another routing mode. In this case fallback_routing_mode and routing_mode_fallback_reason are used to communicate the fallback routing mode used, as well as the reason for fallback.

  2. If it cannot compute a 'best' route for the route objective specified by the customer, it might fallback to another objective. fallback_route_objective is used to communicate the fallback route objective.

JSON representation
{
  "routingMode": enum (FallbackRoutingMode),
  "routingModeReason": enum (FallbackReason),
  "routeObjective": enum (FallbackRouteObjective)
}
Fields
routingMode

enum (FallbackRoutingMode)

Routing mode used for the response. If fallback was triggered, the mode may be different from routing preference set in the original client request.

routingModeReason

enum (FallbackReason)

The reason why fallback response was used instead of the original response. This field is only populated when the fallback mode is triggered and the fallback response is returned.

routeObjective

enum (FallbackRouteObjective)

The route objective used for the response. If fallback was triggered, the objective may be different from the route objective provided in the original client request.