Package google.maps.routes.v1

Índice

RoutesPreferred

Es la API de Routes Preferred.

ComputeCustomRoutes

rpc ComputeCustomRoutes(ComputeCustomRoutesRequest) returns (ComputeCustomRoutesResponse)

Dada una serie de puntos de referencia intermedios y de destino, y un objetivo de ruta, calcula la mejor ruta para el objetivo de ruta. También devuelve la ruta más rápida y la ruta más corta como rutas de referencia.

NOTA: Este método requiere que especifiques una máscara de campo de respuesta en la entrada. Puedes proporcionar la máscara de campo de respuesta con el parámetro de URL $fields o fields, o bien con el encabezado HTTP/gRPC X-Goog-FieldMask (consulta los parámetros de URL y encabezados disponibles). El valor es una lista de rutas de acceso a campos separadas por comas. Consulta esta documentación detallada sobre cómo construir las rutas de campos.

Por ejemplo, en este método:

  • Máscara de campo de todos los campos disponibles (para la inspección manual): X-Goog-FieldMask: *
  • Máscara de campo de distancias, duraciones, información de peajes y tokens de la ruta: X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo

Google desaconseja el uso de la máscara de campo de respuesta con comodín (*) o la especificación de la máscara de campo en el nivel superior (routes) por los siguientes motivos:

  • Seleccionar solo los campos que necesitas ayuda a nuestro servidor a ahorrar ciclos de procesamiento, lo que nos permite devolverte el resultado con una latencia más baja.
  • Seleccionar solo los campos que necesitas en tu trabajo de producción garantiza un rendimiento de latencia estable. Es posible que agreguemos más campos de respuesta en el futuro, y esos nuevos campos podrían requerir tiempo de procesamiento adicional. Si seleccionas todos los campos o todos los campos en el nivel superior, es posible que experimentes una disminución del rendimiento, ya que cualquier campo nuevo que agreguemos se incluirá automáticamente en la respuesta.
  • Si seleccionas solo los campos que necesitas, el tamaño de la respuesta será menor y, por lo tanto, la capacidad de procesamiento de la red será mayor.
Permisos de autorización

Requiere el siguiente permiso de OAuth:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

Para obtener más información, consulta la Descripción general de OAuth 2.0.

ComputeRouteMatrix

rpc ComputeRouteMatrix(ComputeRouteMatrixRequest) returns (RouteMatrixElement)

Toma una lista de orígenes y destinos, y devuelve una transmisión que contiene información de la ruta para cada combinación de origen y destino.

NOTA: Este método requiere que especifiques una máscara de campo de respuesta en la entrada. Puedes proporcionar la máscara de campo de respuesta con el parámetro de URL $fields o fields, o bien con el encabezado HTTP/gRPC X-Goog-FieldMask (consulta los parámetros de URL y encabezados disponibles). El valor es una lista de rutas de acceso a campos separadas por comas. Consulta esta documentación detallada sobre cómo construir las rutas de campos.

Por ejemplo, en este método:

  • Máscara de campo de todos los campos disponibles (para la inspección manual): X-Goog-FieldMask: *
  • Máscara de campo de las duraciones, las distancias, el estado, la condición y los índices de los elementos de la ruta (un ejemplo de configuración de producción): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Es fundamental que incluyas status en tu máscara de campo, ya que, de lo contrario, todos los mensajes parecerán correctos. Google desaconseja el uso de la máscara de campo de respuesta comodín (*) por los siguientes motivos:

  • Seleccionar solo los campos que necesitas ayuda a nuestro servidor a ahorrar ciclos de procesamiento, lo que nos permite devolverte el resultado con una latencia más baja.
  • Seleccionar solo los campos que necesitas en tu trabajo de producción garantiza un rendimiento de latencia estable. Es posible que agreguemos más campos de respuesta en el futuro, y esos nuevos campos podrían requerir tiempo de procesamiento adicional. Si seleccionas todos los campos o todos los campos en el nivel superior, es posible que experimentes una disminución del rendimiento, ya que cualquier campo nuevo que agreguemos se incluirá automáticamente en la respuesta.
  • Si seleccionas solo los campos que necesitas, el tamaño de la respuesta será menor y, por lo tanto, la capacidad de procesamiento de la red será mayor.
Permisos de autorización

Requiere el siguiente permiso de OAuth:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

Para obtener más información, consulta la Descripción general de OAuth 2.0.

ComputeRoutes

rpc ComputeRoutes(ComputeRoutesRequest) returns (ComputeRoutesResponse)

Devuelve la ruta principal junto con rutas alternativas opcionales, dado un conjunto de puntos de referencia intermedios y de destino.

NOTA: Este método requiere que especifiques una máscara de campo de respuesta en la entrada. Puedes proporcionar la máscara de campo de respuesta con los parámetros de URL $fields o fields, o bien con un encabezado HTTP/gRPC X-Goog-FieldMask (consulta los parámetros de URL y encabezados disponibles). El valor es una lista de rutas de acceso a campos separadas por comas. Consulta la documentación detallada sobre cómo construir las rutas de campos.

Por ejemplo, en este método:

  • Máscara de campo de todos los campos disponibles (para la inspección manual): X-Goog-FieldMask: *
  • Máscara de campo de la duración, la distancia y la polilínea a nivel de la ruta (un ejemplo de configuración de producción): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google desaconseja el uso de la máscara de campo de respuesta comodín (*) o la especificación de la máscara de campo en el nivel superior (routes) por los siguientes motivos:

  • Seleccionar solo los campos que necesitas ayuda a nuestro servidor a ahorrar ciclos de procesamiento, lo que nos permite devolverte el resultado con una latencia más baja.
  • Seleccionar solo los campos que necesitas en tu trabajo de producción garantiza un rendimiento de latencia estable. Es posible que agreguemos más campos de respuesta en el futuro, y esos nuevos campos podrían requerir tiempo de procesamiento adicional. Si seleccionas todos los campos o todos los campos en el nivel superior, es posible que experimentes una disminución del rendimiento, ya que cualquier campo nuevo que agreguemos se incluirá automáticamente en la respuesta.
  • Si seleccionas solo los campos que necesitas, el tamaño de la respuesta será menor y, por lo tanto, la capacidad de procesamiento de la red será mayor.
Permisos de autorización

Requiere el siguiente permiso de OAuth:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

Para obtener más información, consulta la Descripción general de OAuth 2.0.

ComputeCustomRoutesRequest

Es el mensaje de solicitud de ComputeCustomRoutes.

Campos
origin

Waypoint

Obligatorio. Punto de referencia de origen.

destination

Waypoint

Obligatorio. Punto de referencia de destino.

intermediates[]

Waypoint

Opcional. Es un conjunto de puntos de referencia a lo largo de la ruta (sin incluir los puntos terminales) para detenerse o pasar por ellos. Se admiten hasta 25 puntos de referencia intermedios.

travel_mode

RouteTravelMode

Opcional. Especifica el medio de transporte. Solo se admiten DRIVE y "TWO_WHEELER".

routing_preference

RoutingPreference

Opcional. Especifica cómo calcular la ruta. El servidor intenta usar la preferencia de enrutamiento seleccionada para calcular la ruta. Si la preferencia de enrutamiento genera un error o una latencia demasiado larga, se devuelve un error. Solo puedes especificar esta opción cuando travel_mode es DRIVE o TWO_WHEELER; de lo contrario, la solicitud fallará.

polyline_quality

PolylineQuality

Opcional. Especifica tu preferencia por la calidad de la polilínea.

polyline_encoding

PolylineEncoding

Opcional. Especifica la codificación preferida para la polilínea.

departure_time

Timestamp

Opcional. Es la hora de salida. Si no estableces este valor, se usará de forma predeterminada la hora en la que realizaste la solicitud. Si estableces este valor en una fecha y hora que ya pasaron, la solicitud fallará.

route_modifiers

RouteModifiers

Opcional. Es un conjunto de condiciones que se deben cumplir y que afectan la forma en que se calculan las rutas.

route_objective

RouteObjective

Obligatorio. Es un objetivo de ruta para el que se realizará la optimización.

language_code

string

Opcional. El código de idioma BCP-47, como "en-US" o "sr-Latn". Para obtener más información, consulta Identificador de configuración regional de Unicode. Consulta Idiomas admitidos para obtener la lista de idiomas admitidos. Si no proporcionas este valor, el idioma de visualización se inferirá a partir de la ubicación de la solicitud de ruta.

units

Units

Opcional. Especifica las unidades de medida para los campos de visualización. Esto incluye el campo instruction en NavigationInstruction. Este valor no afecta las unidades de medida que se usan para la ruta, el tramo, la distancia del paso y la duración. Si no proporcionas este valor, las unidades de visualización se inferirán a partir de la ubicación de la solicitud.

ComputeCustomRoutesResponse

Es el mensaje de respuesta de ComputeCustomRoutes.

Campos
routes[]

CustomRoute

Son las rutas "mejores" para el objetivo de ruta de entrada.

fastest_route

CustomRoute

Es la ruta de referencia más rápida.

shortest_route

CustomRoute

Es la ruta de referencia más corta.

fallback_info

FallbackInfo

Es la información de resguardo para las rutas personalizadas.

FallbackInfo

Encapsula la información de resguardo para ComputeCustomRoutes. ComputeCustomRoutes realiza dos tipos de resguardo:

  1. Si no se puede calcular la ruta con el routing_preference solicitado por el cliente, se recurrirá a otro modo de enrutamiento. En este caso, fallback_routing_mode y routing_mode_fallback_reason se usan para comunicar el modo de enrutamiento de resguardo que se usó, así como el motivo del resguardo.

  2. Si no puede calcular una ruta "óptima" para el objetivo de ruta especificado por el cliente, es posible que recurra a otro objetivo. fallback_route_objective se usa para comunicar el objetivo de la ruta alternativa.

Campos
routing_mode

FallbackRoutingMode

Es el modo de enrutamiento que se usa para la respuesta. Si se activó la alternativa, es posible que el modo sea diferente de la preferencia de ruta establecida en la solicitud original del cliente.

routing_mode_reason

FallbackReason

Es el motivo por el que se usó la respuesta alternativa en lugar de la respuesta original. Este campo solo se completa cuando se activa el modo de resguardo y se devuelve la respuesta de resguardo.

route_objective

FallbackRouteObjective

Es el objetivo de la ruta que se usó para la respuesta. Si se activó la alternativa, el objetivo puede ser diferente del objetivo de la ruta proporcionado en la solicitud original del cliente.

FallbackRouteObjective

Es el RouteObjective que se usó para la respuesta.

Enums
FALLBACK_ROUTE_OBJECTIVE_UNSPECIFIED No se especificó el objetivo de la ruta de resguardo.
FALLBACK_RATECARD_WITHOUT_TOLL_PRICE_DATA Si el cliente solicita RateCard y establece include_tolls como verdadero, y Google no tiene datos de precios de peajes para la ruta, la API recurre a RateCard sin considerar el precio del peaje.

ComputeRouteMatrixRequest

Mensaje de solicitud de ComputeRouteMatrix

Campos
origins[]

RouteMatrixOrigin

Obligatorio. Es un array de orígenes que determina las filas de la matriz de respuesta. Se aplican varias restricciones de tamaño a la cardinalidad de los orígenes y los destinos:

  • En ningún caso, la cantidad de elementos (orígenes × destinos) debe ser superior a 625.
  • La cantidad de elementos (orígenes × destinos) no debe ser superior a 100 si routing_preference se establece en TRAFFIC_AWARE_OPTIMAL.
  • La cantidad de puntos de referencia (orígenes + destinos) especificada como place_id no debe ser superior a 50.
destinations[]

RouteMatrixDestination

Obligatorio. Es un array de destinos que determina las columnas de la matriz de respuesta.

travel_mode

RouteTravelMode

Opcional. Especifica el medio de transporte.

routing_preference

RoutingPreference

Opcional. Especifica cómo calcular la ruta. El servidor intenta usar la preferencia de enrutamiento seleccionada para calcular la ruta. Si la preferencia de enrutamiento genera un error o una latencia demasiado larga, se devuelve un error. Solo puedes especificar esta opción cuando travel_mode es DRIVE o TWO_WHEELER; de lo contrario, la solicitud fallará.

departure_time

Timestamp

Opcional. Es la hora de salida. Si no estableces este valor, se usará de forma predeterminada la hora en la que realizaste la solicitud. Si estableces este valor en una fecha y hora que ya pasaron, la solicitud fallará.

ComputeRoutesRequest

Mensaje de solicitud de ComputeRoutes.

Campos
origin

Waypoint

Obligatorio. Punto de referencia de origen.

destination

Waypoint

Obligatorio. Punto de referencia de destino.

intermediates[]

Waypoint

Opcional. Es un conjunto de puntos de referencia a lo largo de la ruta (sin incluir los puntos terminales) para detenerse o pasar por ellos. Se admiten hasta 25 puntos de referencia intermedios.

travel_mode

RouteTravelMode

Opcional. Especifica el medio de transporte.

routing_preference

RoutingPreference

Opcional. Especifica cómo calcular la ruta. El servidor intenta usar la preferencia de enrutamiento seleccionada para calcular la ruta. Si la preferencia de enrutamiento genera un error o una latencia demasiado larga, se muestra un error. Solo puedes especificar esta opción cuando travel_mode es DRIVE o TWO_WHEELER; de lo contrario, la solicitud fallará.

polyline_quality

PolylineQuality

Opcional. Especifica tu preferencia por la calidad de la polilínea.

polyline_encoding

PolylineEncoding

Opcional. Especifica la codificación preferida para la polilínea.

departure_time

Timestamp

Opcional. Es la hora de salida. Si no estableces este valor, se usará de forma predeterminada la hora en la que realizaste la solicitud. Si estableces este valor en una fecha y hora que ya pasaron, la solicitud fallará.

compute_alternative_routes

bool

Opcional. Especifica si se deben calcular rutas alternativas además de la ruta. No se muestran rutas alternativas para las solicitudes que tienen puntos de referencia intermedios.

route_modifiers

RouteModifiers

Opcional. Es un conjunto de condiciones que se deben cumplir y que afectan la forma en que se calculan las rutas.

language_code

string

Opcional. El código de idioma BCP-47, como "en-US" o "sr-Latn". Para obtener más información, consulta Identificador de configuración regional de Unicode. Consulta Idiomas admitidos para obtener la lista de idiomas admitidos. Si no proporcionas este valor, el idioma de visualización se inferirá a partir de la ubicación de la solicitud de ruta.

units

Units

Opcional. Especifica las unidades de medida para los campos de visualización. Esto incluye el campo instruction en NavigationInstruction. Este valor no afecta las unidades de medida que se usan para la ruta, el tramo, la distancia del paso y la duración. Si no proporcionas este valor, las unidades de visualización se inferirán a partir de la ubicación de la solicitud.

optimize_waypoint_order

bool

Si optimizeWaypointOrder se establece como verdadero, se intentará reordenar los puntos intermedios especificados para minimizar el costo general de la ruta. Si alguno de los puntos de referencia intermedios es un punto de referencia de ruta, la solicitud falla. Usa ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index para encontrar el nuevo orden. Si no se solicita routes.optimized_intermediate_waypoint_index en el encabezado X-Goog-FieldMask, la solicitud falla. Si optimize_waypoint_order se establece como falso, ComputeRoutesResponse.optimized_intermediate_waypoint_index está vacío.

ComputeRoutesResponse

Es el mensaje de respuesta de ComputeRoutes.

Campos
routes[]

Route

Contiene un array de rutas calculadas (hasta tres) cuando especificas compute_alternatives_routes y solo una ruta cuando no lo haces. Cuando este array contiene varias entradas, la primera es la ruta más recomendada. Si el array está vacío, significa que no se pudo encontrar ninguna ruta.

fallback_info

FallbackInfo

En algunos casos, cuando el servidor no puede calcular los resultados de la ruta con todas las preferencias de entrada, es posible que recurra a otra forma de cálculo. Cuando se usa el modo de respaldo, este campo contiene información detallada sobre la respuesta de respaldo. De lo contrario, este campo no se establece.

CustomRoute

Encapsula una ruta personalizada calculada en función del objetivo de la ruta especificado por el cliente. CustomRoute contiene una ruta y un token de ruta, que se pueden pasar al NavSDK para reconstruir la ruta personalizada para la navegación paso a paso.

Campos
route

Route

Es la ruta que se considera "mejor" para el objetivo de la ruta de entrada.

token

string

Es un token de ruta codificado en Base64 seguro para la Web que se puede pasar al SDK de Nav, lo que permite que el SDK de Nav reconstruya la ruta durante la navegación y, en caso de cambio de ruta, respete la intención original cuando se llama a RoutesPreferred ComputeCustomRoutes. Los clientes deben tratar este token como un objeto binario grande opaco.

FallbackInfo

Es información relacionada con cómo y por qué se usó un resultado de resguardo. Si se configura este campo, significa que el servidor usó un modo de enrutamiento diferente del modo que preferías como alternativa.

Campos
routing_mode

FallbackRoutingMode

Es el modo de enrutamiento que se usa para la respuesta. Si se activó la alternativa, es posible que el modo sea diferente de la preferencia de ruta establecida en la solicitud original del cliente.

reason

FallbackReason

Es el motivo por el que se usó la respuesta alternativa en lugar de la respuesta original. Este campo solo se completa cuando se activa el modo de resguardo y se devuelve la respuesta de resguardo.

FallbackReason

Son los motivos para usar la respuesta alternativa.

Enums
FALLBACK_REASON_UNSPECIFIED No se especificó ningún motivo de resguardo.
SERVER_ERROR Se produjo un error del servidor mientras se calculaban las rutas con tu modo de ruta preferido, pero pudimos mostrar un resultado calculado con un modo alternativo.
LATENCY_EXCEEDED No pudimos terminar el cálculo con tu modo de ruta preferido a tiempo, pero pudimos mostrarte un resultado calculado con un modo alternativo.

FallbackRoutingMode

Es el modo de ruta real que se usó para la respuesta de resguardo devuelta.

Enums
FALLBACK_ROUTING_MODE_UNSPECIFIED No se usa.
FALLBACK_TRAFFIC_UNAWARE Indica que se usó el modo de enrutamiento TRAFFIC_UNAWARE para calcular la respuesta.
FALLBACK_TRAFFIC_AWARE Indica que se usó el modo de enrutamiento TRAFFIC_AWARE para calcular la respuesta.

Ubicación

Encapsula una ubicación (un punto geográfico y una orientación opcional).

Campos
lat_lng

LatLng

Son las coordenadas geográficas de la parada.

heading

Int32Value

Es el rumbo de la brújula asociado con la dirección del flujo de tráfico. Este valor especifica el lado de la ruta que se debe usar para la recogida y la entrega. Los valores de dirección pueden ser de 0 a 360, donde 0 especifica una dirección hacia el norte, 90 especifica una dirección hacia el este, y así sucesivamente. Solo puedes usar este campo para los modos de viaje DRIVE y TWO_WHEELER.

Maneuver

Es un conjunto de valores que especifican la acción de navegación que se debe realizar en el paso actual (por ejemplo, girar a la izquierda, incorporarse o seguir recto).

Enums
MANEUVER_UNSPECIFIED No se usa.
TURN_SLIGHT_LEFT Gira levemente hacia la izquierda.
TURN_SHARP_LEFT Gira bruscamente a la izquierda.
UTURN_LEFT Gira en U a la izquierda.
TURN_LEFT Gira a la izquierda.
TURN_SLIGHT_RIGHT Gira levemente a la derecha.
TURN_SHARP_RIGHT Gira bruscamente a la derecha.
UTURN_RIGHT Da la vuelta en U a la derecha.
TURN_RIGHT Gira a la derecha.
STRAIGHT Sigue recto.
RAMP_LEFT Toma la rampa de la izquierda.
RAMP_RIGHT Toma la rampa de la derecha.
MERGE Incorporarse al tráfico
FORK_LEFT Toma el camino de la izquierda.
FORK_RIGHT Toma el camino de la derecha.
FERRY Toma el ferri.
FERRY_TRAIN Toma el tren que te lleva al ferri.
ROUNDABOUT_LEFT Gira a la izquierda en la rotonda.
ROUNDABOUT_RIGHT Gira a la derecha en la rotonda.
DEPART Maniobra inicial.
NAME_CHANGE Se usa para indicar un cambio de nombre de la calle.
DESTINATION Se usa para indicar la llegada a un destino.
Campos
maneuver

Maneuver

Encapsula las instrucciones de navegación para el paso actual (por ejemplo, girar a la izquierda, incorporarse o seguir recto). Este campo determina qué ícono se mostrará.

instructions

string

Instrucciones para navegar por este paso.

Polilínea

Encapsula una polilínea codificada.

Campos
Campo de unión polyline_type. Encapsula el tipo de polilínea. El valor predeterminado es encoded_polyline. polyline_type puede ser solo uno de los parámetros siguientes:
encoded_polyline

string

Es la codificación de cadena de la polilínea con el algoritmo de codificación de polilíneas.

geo_json_linestring

Struct

Especifica una polilínea con el formato LineString de GeoJSON.

PolylineEncoding

Especifica el tipo de polilínea preferido que se devolverá.

Enums
POLYLINE_ENCODING_UNSPECIFIED No se especificó ninguna preferencia de tipo de polilínea. La configuración predeterminada es ENCODED_POLYLINE.
ENCODED_POLYLINE Especifica una polilínea codificada con el algoritmo de codificación de polilíneas.
GEO_JSON_LINESTRING Especifica una polilínea con el formato LineString de GeoJSON.

PolylineQuality

Es un conjunto de valores que especifican la calidad de la polilínea.

Enums
POLYLINE_QUALITY_UNSPECIFIED No se especificó ninguna preferencia de calidad de polilínea. La configuración predeterminada es OVERVIEW.
HIGH_QUALITY Especifica una polilínea de alta calidad, que se compone con más puntos que OVERVIEW, a costa de un mayor tamaño de la respuesta. Usa este valor cuando necesites más precisión.
OVERVIEW Especifica una polilínea de resumen, que se compone con una pequeña cantidad de puntos. Usa este valor cuando muestres un resumen de la ruta. Usar esta opción tiene una latencia de solicitud más baja en comparación con la opción HIGH_QUALITY.

Enruta

Encapsula una ruta, que consta de una serie de tramos de ruta conectados que unen los puntos de referencia intermedios, de inicio y de destino.

Campos
legs[]

RouteLeg

Es una colección de tramos (segmentos de ruta entre puntos de referencia) que componen la ruta. Cada tramo corresponde al viaje entre dos puntos de referencia que no son de via. Por ejemplo, una ruta sin puntos de referencia intermedios tiene solo un tramo. Una ruta que incluye un punto de referencia intermedio que no es via tiene dos tramos. Una ruta que incluye un punto de referencia intermedio via tiene un tramo. El orden de los tramos coincide con el orden de los puntos de referencia de origin a intermediates y a destination.

distance_meters

int32

Es la distancia de viaje de la ruta, en metros.

duration

Duration

Es el tiempo necesario para recorrer la ruta. Si estableces routing_preference en TRAFFIC_UNAWARE, este valor será el mismo que static_duration. Si configuras routing_preference como TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, este valor se calcula teniendo en cuenta las condiciones del tráfico.

static_duration

Duration

Es la duración del viaje por la ruta sin tener en cuenta las condiciones de tráfico.

polyline

Polyline

Es la polilínea general de la ruta. Esta polilínea es la polilínea combinada de todos los legs.

description

string

Es una descripción de la ruta.

warnings[]

string

Es un array de advertencias que se muestran cuando se visualiza la ruta.

viewport

Viewport

Es el cuadro delimitador del viewport de la polilínea.

travel_advisory

RouteTravelAdvisory

Es información adicional sobre la ruta.

optimized_intermediate_waypoint_index[]

int32

Si ComputeRoutesRequest.optimize_waypoint_order se establece como verdadero, este campo contiene el orden optimizado de los puntos de referencia intermedios. De lo contrario, este campo está vacío. Por ejemplo, supongamos que la entrada es Origen: LA; Intermedias: Dallas, Bangor, Phoenix; Destino: Nueva York; y el orden optimizado de los puntos de ruta intermedios es: Phoenix, Dallas, Bangor. En ese caso, este campo contendrá los valores [2, 0, 1]. El índice comienza con 0 para el primer punto de ruta intermedio.

RouteLeg

Encapsula un tramo entre puntos de referencia que no son via.

Campos
distance_meters

int32

Es la distancia de viaje del tramo de la ruta, en metros.

duration

Duration

Es el tiempo necesario para recorrer la etapa. Si route_preference se establece en TRAFFIC_UNAWARE, este valor es el mismo que static_duration. Si route_preference es TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, este valor se calcula teniendo en cuenta las condiciones del tráfico.

static_duration

Duration

Es la duración del viaje a través del tramo, calculada sin tener en cuenta las condiciones del tráfico.

polyline

Polyline

Es la polilínea general de este tramo. Esto incluye la polilínea de cada step.

start_location

Location

Es la ubicación de inicio de este tramo. Puede ser diferente del origin proporcionado. Por ejemplo, cuando el origin proporcionado no está cerca de una ruta, este es un punto en la ruta.

end_location

Location

Es la ubicación final de este tramo. Puede ser diferente del destination proporcionado. Por ejemplo, cuando el destination proporcionado no está cerca de una ruta, este es un punto en la ruta.

steps[]

RouteLegStep

Es un array de pasos que denotan segmentos dentro de esta etapa. Cada paso representa una instrucción de navegación.

travel_advisory

RouteLegTravelAdvisory

Encapsula la información adicional sobre la que se debe informar al usuario, como posibles restricciones de zona de tráfico, etcétera, en un tramo de la ruta.

RouteLegStep

Encapsula un segmento de un RouteLeg. Un paso corresponde a una sola instrucción de navegación. Los tramos de la ruta se componen de pasos.

Campos
distance_meters

int32

Es la distancia de viaje de este paso, en metros. En algunas circunstancias, es posible que este campo no tenga un valor.

static_duration

Duration

Es la duración del viaje en este paso sin tener en cuenta las condiciones de tráfico. En algunas circunstancias, es posible que este campo no tenga un valor.

polyline

Polyline

Es la polilínea asociada a este paso.

start_location

Location

Es la ubicación de inicio de este paso.

end_location

Location

Es la ubicación final de este paso.

navigation_instruction

NavigationInstruction

Instrucciones de navegación.

travel_advisory

RouteLegStepTravelAdvisory

Encapsula la información adicional sobre la que se debe informar al usuario, como la posible restricción de zona de tráfico en un paso de la ruta.

RouteLegStepTravelAdvisory

Encapsula la información adicional sobre la que se debe informar al usuario, como la posible restricción de zona de tráfico en un paso de la ruta.

Campos
speed_reading_intervals[]

SpeedReadingInterval

NOTA: Este campo no se completa actualmente.

RouteLegTravelAdvisory

Encapsula la información adicional sobre la que se debe informar al usuario, como posibles restricciones de zona de tráfico, etcétera, en un tramo de la ruta.

Campos
toll_info

TollInfo

Encapsula información sobre los peajes en la RouteLeg específica. Este campo solo se completa si esperamos que haya peajes en la RouteLeg. Si se configura este campo, pero no se completa el subcampo estimated_price, esperamos que la ruta contenga peajes, pero no conocemos un precio estimado. Si este campo no existe, no hay peaje en RouteLeg.

speed_reading_intervals[]

SpeedReadingInterval

Intervalos de lectura rápida que detallan la densidad del tráfico. Se aplica en el caso de las preferencias de ruta TRAFFIC_AWARE y TRAFFIC_AWARE_OPTIMAL. Los intervalos abarcan toda la polilínea del RouteLeg sin superponerse. El punto de inicio de un intervalo especificado es el mismo que el punto de finalización del intervalo anterior.

Ejemplo:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speed_reading_intervals: [A,C), [C,D), [D,G).

RouteMatrixDestination

Un solo destino para ComputeRouteMatrixRequest

Campos
waypoint

Waypoint

Obligatorio. Punto de referencia de destino

RouteMatrixElement

Encapsula la información de la ruta calculada para un par de origen y destino en la API de ComputeRouteMatrix. Este .proto se puede transmitir al cliente.

Campos
origin_index

int32

Índice basado en cero del origen en la solicitud.

destination_index

int32

Índice basado en cero del destino en la solicitud.

status

Status

Es el código de estado de error para este elemento.

condition

RouteMatrixElementCondition

Indica si se encontró la ruta o no. Independiente del estado.

distance_meters

int32

Es la distancia de viaje de la ruta, en metros.

duration

Duration

Es el tiempo necesario para recorrer la ruta. Si estableces routing_preference en TRAFFIC_UNAWARE, este valor será el mismo que static_duration. Si configuras routing_preference como TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, este valor se calcula teniendo en cuenta las condiciones del tráfico.

static_duration

Duration

Es la duración del viaje por la ruta sin tener en cuenta las condiciones de tráfico.

travel_advisory

RouteTravelAdvisory

Es información adicional sobre la ruta. Por ejemplo, información sobre restricciones y peajes

fallback_info

FallbackInfo

En algunos casos, cuando el servidor no puede calcular la ruta con las preferencias determinadas para este par de origen y destino en particular, es posible que recurra a un modo de cálculo diferente. Cuando se usa el modo de respaldo, este campo contiene información detallada sobre la respuesta de respaldo. De lo contrario, este campo no se establece.

RouteMatrixElementCondition

Es la condición de la ruta que se devuelve.

Enums
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED Solo se usa cuando el status del elemento no es correcto.
ROUTE_EXISTS Se encontró una ruta y se completó la información correspondiente para el elemento.
ROUTE_NOT_FOUND No se pudo encontrar ninguna ruta. Los campos que contienen información de la ruta, como distance_meters o duration, no se completarán en el elemento.

RouteMatrixOrigin

Un solo origen para ComputeRouteMatrixRequest

Campos
waypoint

Waypoint

Obligatorio. Punto de ruta de origen

route_modifiers

RouteModifiers

Opcional. Modificadores para cada ruta que toma este lugar como origen

RouteModifiers

Encapsula un conjunto de condiciones opcionales que se deben satisfacer cuando se calculan las rutas.

Campos
avoid_tolls

bool

Cuando se establece como verdadero, se evitan las rutas con peaje cuando es razonable, y se da preferencia a las rutas que no contienen peajes. Solo se aplica a los modos de viaje DRIVE y TWO_WHEELER.

avoid_highways

bool

Cuando se establece en verdadero, evita las autopistas cuando es razonable y prioriza las rutas que no las incluyen. Solo se aplica a los modos de viaje DRIVE y TWO_WHEELER.

avoid_ferries

bool

Cuando se establece en verdadero, evita los ferries cuando es razonable y prioriza las rutas que no los incluyen. Solo se aplica a los modos de viaje DRIVE y TWO_WHEELER.

avoid_indoor

bool

Cuando se establece como verdadero, evita la navegación en interiores cuando es razonable y da preferencia a las rutas que no contienen navegación en interiores. Solo se aplica al modo de viaje WALK.

vehicle_info

VehicleInfo

Especifica la información del vehículo.

toll_passes[]

TollPass

Encapsula información sobre los pases de peaje. Si se proporcionan telepeajes, la API intenta devolver el precio del telepeaje. Si no se proporcionan telepeajes, la API los trata como desconocidos y trata de devolver el precio en efectivo. Solo se aplica a los modos de viaje DRIVE y TWO_WHEELER.

RouteObjective

Encapsula un objetivo para optimizar con ComputeCustomRoutes.

Campos
Campo de unión objective. Es el objetivo de la ruta. objective puede ser solo uno de los parámetros siguientes:
rate_card

RateCard

Es el objetivo RateCard.

RateCard

Encapsula un objetivo de ruta RateCard.

Campos
cost_per_minute

MonetaryCost

Opcional. Es el costo por minuto.

cost_per_km

MonetaryCost

Opcional. Es el costo por kilómetro.

include_tolls

bool

Opcional. Indica si se debe incluir el costo de peaje en el costo general.

MonetaryCost

Encapsula el costo que se usa en la tarjeta de tarifas.

Campos
value

double

Obligatorio. Es el valor del costo en la moneda local que se infiere de la solicitud.

RouteTravelAdvisory

Encapsula la información adicional sobre la que se debe informar al usuario, como una posible restricción de zona de tráfico, etcétera.

Campos
toll_info

TollInfo

Encapsula información sobre los peajes en la ruta. Este campo solo se completa si esperamos que haya peajes en la ruta. Si se configura este campo, pero no se completa el subcampo estimated_price, esperamos que la ruta contenga peajes, pero no conocemos un precio estimado. Si este campo no está configurado, se espera que no haya peajes en la ruta.

speed_reading_intervals[]

SpeedReadingInterval

Intervalos de lectura rápida que detallan la densidad del tráfico. Se aplica en el caso de las preferencias de ruta TRAFFIC_AWARE y TRAFFIC_AWARE_OPTIMAL. Los intervalos abarcan toda la polilínea de la ruta sin superponerse. El punto de inicio de un intervalo especificado es el mismo que el punto de finalización del intervalo anterior.

Ejemplo:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speed_reading_intervals: [A,C), [C,D), [D,G).

RouteTravelMode

Es un conjunto de valores que se usan para especificar el medio de transporte.

Enums
TRAVEL_MODE_UNSPECIFIED No se especificó ningún medio de transporte. La configuración predeterminada es DRIVE.
DRIVE Viajar en automóvil
BICYCLE Viajar en bicicleta
WALK Viajar a pie
TWO_WHEELER Vehículo motorizado de dos ruedas. Por ejemplo, motocicleta. Ten en cuenta que esto difiere del modo de viaje BICYCLE, que abarca el modo de transporte impulsado por humanos.
TAXI

Viajar en taxi autorizado, lo que puede permitir que el vehículo circule por los carriles designados para taxis en algunas áreas

El modo TAXI es una función experimental. Si el cliente solicita una ruta en TAXI en una ciudad en la que no hay datos de carriles exclusivos para taxis, se devuelve una ruta en AUTO.

RoutingPreference

Es un conjunto de valores que especifican los factores que se deben tener en cuenta al calcular la ruta.

Enums
ROUTING_PREFERENCE_UNSPECIFIED No se especificó ninguna preferencia de ruta. Margen aproximado predeterminado: TRAFFIC_AWARE
TRAFFIC_UNAWARE Calcula rutas sin tener en cuenta las condiciones del tráfico en tiempo real. Es adecuado cuando las condiciones del tráfico no importan o no son aplicables. Usar este valor produce la latencia más baja. Nota: En el caso de RouteTravelMode DRIVE y TWO_WHEELER, la ruta y la duración elegidas se basan en la red de rutas y las condiciones de tráfico promedio, independientemente del tiempo. Como resultado, las rutas pueden incluir caminos que se encuentren cerrados temporalmente. Los resultados de una solicitud determinada pueden variar con el tiempo debido a cambios en la red de rutas, actualizaciones de las condiciones de tráfico promedio y la naturaleza distribuida del servicio. Los resultados también pueden variar entre rutas casi equivalentes en cualquier momento o con cualquier frecuencia.
TRAFFIC_AWARE Calcula rutas teniendo en cuenta las condiciones de tráfico. A diferencia de TRAFFIC_AWARE_OPTIMAL, se aplican algunas optimizaciones para reducir significativamente la latencia.
TRAFFIC_AWARE_OPTIMAL Calcula las rutas teniendo en cuenta las condiciones del tráfico, sin aplicar la mayoría de las optimizaciones de rendimiento. Usar este valor produce la latencia más alta.

SpeedReadingInterval

Es un indicador de la densidad del tráfico en un tramo contiguo de una polilínea o una ruta. Dado un camino con puntos P_0, P_1, …, P_N (índice basado en cero), SpeedReadingInterval define un intervalo y describe su tráfico con las siguientes categorías.

Campos
start_polyline_point_index

int32

Es el índice de inicio de este intervalo en la polilínea. En JSON, cuando el índice es 0, parece que el campo no está completado.

end_polyline_point_index

int32

Es el índice final de este intervalo en la polilínea. En JSON, cuando el índice es 0, parece que el campo no está completado.

speed

Speed

Velocidad del tráfico en este intervalo.

Velocidad

Es la clasificación de la velocidad de la polilínea según los datos de tráfico.

Enums
SPEED_UNSPECIFIED Valor predeterminado Este valor no se usa.
NORMAL Velocidad normal, no se detectó ninguna ralentización.
SLOW Se detectó una desaceleración, pero no se formó un embotellamiento.
TRAFFIC_JAM Se detectó un embotellamiento.

TollInfo

Encapsula la información de peajes en un Route o en un RouteLeg.

Campos
estimated_price[]

Money

Es el importe monetario de los peajes para el Route o el RouteLeg correspondiente. Esta lista contiene un importe de dinero para cada moneda que se espera que cobren las estaciones de peaje. Por lo general, esta lista contiene solo un elemento para las rutas con peajes en una sola moneda. En el caso de los viajes internacionales, es posible que esta lista contenga varios elementos para reflejar los peajes en diferentes monedas.

TollPass

Lista de telepeajes de todo el mundo que admitimos.

Enums
TOLL_PASS_UNSPECIFIED No se usa. Si se usa este valor, la solicitud fallará.
AU_ETOLL_TAG Uno de los muchos proveedores de telepeaje de Sídney. https://www.myetoll.com.au
AU_EWAY_TAG Uno de los muchos proveedores de telepeaje de Sídney. https://www.tollpay.com.au/
AU_LINKT Telepeaje para toda Australia. Consulta más detalles en https://www.linkt.com.au/.
AR_TELEPASE Telepeaje de Argentina. Consulta más detalles en https://telepase.com.ar
BR_AUTO_EXPRESO Telepeaje de Brasil. Consulta más detalles en https://www.autoexpreso.com.
BR_CONECTCAR Telepeaje de Brasil. Consulta más detalles en https://conectcar.com.
BR_MOVE_MAIS Telepeaje de Brasil. Consulta más detalles en https://movemais.com.
BR_PASSA_RAPIDO Telepeaje de Brasil. Consulta más detalles en https://pasorapido.gob.do/
BR_SEM_PARAR Telepeaje de Brasil. Consulta los detalles adicionales en https://www.semparar.com.br.
BR_TAGGY Telepeaje de Brasil. Consulta más detalles en https://taggy.com.br.
BR_VELOE Telepeaje de Brasil. Consulta los detalles adicionales en https://veloe.com.br/site/onde-usar.
CA_US_AKWASASNE_SEAWAY_CORPORATE_CARD Cruce fronterizo de Canadá a Estados Unidos.
CA_US_AKWASASNE_SEAWAY_TRANSIT_CARD Cruce fronterizo de Canadá a Estados Unidos.
CA_US_BLUE_WATER_EDGE_PASS Cruce fronterizo de Ontario, Canadá a Michigan, Estados Unidos.
CA_US_CONNEXION Cruce fronterizo de Ontario, Canadá a Michigan, Estados Unidos.
CA_US_NEXUS_CARD Cruce fronterizo de Canadá a Estados Unidos.
ID_E_TOLL Indonesia Es una tarjeta electrónica proporcionada por varios bancos que se usa para pagar peajes. Todas las tarjetas electrónicas a través de bancos se cobran de la misma manera, por lo que solo se necesita un valor de enumeración. p.ej., Bank Mandiri https://www.bankmandiri.co.id/e-money, BCA https://www.bca.co.id/flazz, BNI https://www.bni.co.id/id-id/ebanking/tapcash
IN_FASTAG India.
IN_LOCAL_HP_PLATE_EXEMPT India, exención de placas estatales de HP.
JP_ETC Japón ETC. Sistema inalámbrico electrónico para cobrar peajes. https://www.go-etc.jp/
JP_ETC2 Japón ETC2.0. Nueva versión de ETC con mayor descuento y comunicación bidireccional entre los dispositivos de los vehículos y las antenas en la ruta. https://www.go-etc.jp/etc2/index.html
MX_IAVE México https://iave.capufe.gob.mx/#/
MX_PASE México https://www.pase.com.mx
MX_QUICKPASS México: https://operadoravial.com/quick-pass/
MX_SISTEMA_TELEPEAJE_CHIHUAHUA México http://appsh.chihuahua.gob.mx/transparencia/?doc=/ingresos/TelepeajeFormato4.pdf
MX_TAG_IAVE México
MX_TAG_TELEVIA Empresa de telepeaje de México. Es uno de los tantos que operan en la Ciudad de México. Consulta más detalles en https://www.televia.com.mx.
MX_TELEVIA Empresa de telepeaje de México. Una de las muchas que operan en Ciudad de México. https://www.televia.com.mx
MX_VIAPASS Telepeaje de México. Consulta más detalles en https://www.viapass.com.mx/viapass/web_home.aspx.
US_AL_FREEDOM_PASS AL, EE.UU.
US_AK_ANTON_ANDERSON_TUNNEL_BOOK_OF_10_TICKETS AK, EE.UU.
US_CA_FASTRAK CA, EE.UU.
US_CA_FASTRAK_CAV_STICKER Indica que el conductor tiene un pase de FasTrak además de la calcomanía de vehículo de aire limpio (CAV) emitida por el DMV. https://www.bayareafastrak.org/en/guide/doINeedFlex.shtml
US_CO_EXPRESSTOLL CO, EE.UU.
US_CO_GO_PASS CO, EE.UU.
US_DE_EZPASSDE DE, EE.UU.
US_FL_BOB_SIKES_TOLL_BRIDGE_PASS FL, EE.UU.
US_FL_DUNES_COMMUNITY_DEVELOPMENT_DISTRICT_EXPRESSCARD FL, EE.UU.
US_FL_EPASS FL, EE.UU.
US_FL_GIBA_TOLL_PASS FL, EE.UU.
US_FL_LEEWAY FL, EE.UU.
US_FL_SUNPASS FL, EE.UU.
US_FL_SUNPASS_PRO FL, EE.UU.
US_IL_EZPASSIL IL, EE.UU.
US_IL_IPASS IL, EE.UU.
US_IN_EZPASSIN India y EE.UU.
US_KS_BESTPASS_HORIZON KS, EE.UU.
US_KS_KTAG KS, EE.UU.
US_KS_NATIONALPASS KS, EE.UU.
US_KS_PREPASS_ELITEPASS KS, EE.UU.
US_LA_GEAUXPASS LA, EE.UU.
US_LA_TOLL_TAG LA, EE.UU.
US_MA_EZPASSMA MA, EE.UU.
US_MD_EZPASSMD MD, EE.UU.
US_ME_EZPASSME ME, EE.UU.
US_MI_AMBASSADOR_BRIDGE_PREMIER_COMMUTER_CARD MI, EE.UU.
US_MI_BCPASS MI, EE.UU.
US_MI_GROSSE_ILE_TOLL_BRIDGE_PASS_TAG MI, EE.UU.
US_MI_IQ_PROX_CARD

MI, EE.UU. Se dejó de usar porque este tipo de pase ya no existe.

US_MI_IQ_TAG MI, EE.UU.
US_MI_MACKINAC_BRIDGE_MAC_PASS MI, EE.UU.
US_MI_NEXPRESS_TOLL MI, EE.UU.
US_MN_EZPASSMN MN, EE.UU.
US_NC_EZPASSNC NC, EE.UU.
US_NC_PEACH_PASS NC, EE.UU.
US_NC_QUICK_PASS NC, EE.UU.
US_NH_EZPASSNH NH, EE.UU.
US_NJ_DOWNBEACH_EXPRESS_PASS NJ, EE.UU.
US_NJ_EZPASSNJ NJ, EE.UU.
US_NY_EXPRESSPASS NY, EE.UU.
US_NY_EZPASSNY NY, EE.UU.
US_OH_EZPASSOH OH, EE.UU.
US_PA_EZPASSPA PA, EE.UU.
US_RI_EZPASSRI RI, EE.UU.
US_SC_PALPASS SC, EE.UU.
US_TX_AVI_TAG TX, EE.UU.
US_TX_BANCPASS TX, EE.UU.
US_TX_DEL_RIO_PASS TX, EE.UU.
US_TX_EFAST_PASS TX, EE.UU.
US_TX_EAGLE_PASS_EXPRESS_CARD TX, EE.UU.
US_TX_EPTOLL TX, EE.UU.
US_TX_EZ_CROSS TX, EE.UU.
US_TX_EZTAG TX, EE.UU.
US_TX_FUEGO_TAG TX, EE.UU.
US_TX_LAREDO_TRADE_TAG TX, EE.UU.
US_TX_PLUSPASS TX, EE.UU.
US_TX_TOLLTAG TX, EE.UU.
US_TX_TXTAG TX, EE.UU.
US_TX_XPRESS_CARD TX, EE.UU.
US_UT_ADAMS_AVE_PARKWAY_EXPRESSCARD UT, EE.UU.
US_VA_EZPASSVA VA, EE.UU.
US_WA_BREEZEBY WA, EE.UU.
US_WA_GOOD_TO_GO WA, EE.UU.
US_WV_EZPASSWV WV, EE.UU.
US_WV_MEMORIAL_BRIDGE_TICKETS WV, EE.UU.
US_WV_MOV_PASS WV, EE.UU.
US_WV_NEWELL_TOLL_BRIDGE_TICKET WV, EE.UU.

Unidades

Es un conjunto de valores que especifican la unidad de medida que se usa en la pantalla.

Enums
UNITS_UNSPECIFIED No se especificaron las unidades de medida. El valor predeterminado es la unidad de medida que se infiere de la solicitud.
METRIC Unidades de medida métricas.
IMPERIAL Unidades de medida imperiales (en inglés).

VehicleEmissionType

Es un conjunto de valores que describen el tipo de emisión del vehículo. Solo se aplica al modo de viaje DRIVE.

Enums
VEHICLE_EMISSION_TYPE_UNSPECIFIED No se especificó ningún tipo de emisión. El valor predeterminado es GASOLINE.
GASOLINE Vehículo a gasolina
ELECTRIC Vehículo eléctrico
HYBRID Vehículo híbrido (como gasolina y electricidad)

VehicleInfo

Encapsula la información del vehículo, como el tipo de emisión.

Campos
emission_type

VehicleEmissionType

Describe el tipo de emisión del vehículo. Solo se aplica al DRIVE RouteTravelMode.

Punto de referencia

Encapsula un punto de referencia. Los puntos de referencia marcan el inicio y el final de una ruta, y también incluyen las paradas intermedias a lo largo de ella.

Campos
via

bool

Marca este punto de referencia como un hito en lugar de una parada. Para cada punto de referencia que no sea de ruta en la solicitud, la respuesta agrega una entrada al array legs para proporcionar los detalles de las paradas en ese tramo del viaje. Establece este valor como verdadero cuando quieras que la ruta pase por este punto de referencia sin detenerse. Los puntos de referencia intermedios no hacen que se agregue una entrada al array legs, pero sí dirigen el viaje a través del punto de referencia. Solo puedes establecer este valor en los puntos de ruta intermedios. La solicitud falla si configuras este campo en los puntos de referencia terminales. Si ComputeRoutesRequest.optimize_waypoint_order se establece como verdadero, este campo no se puede establecer como verdadero; de lo contrario, la solicitud fallará.

vehicle_stopover

bool

Indica que el punto de referencia está destinado a que los vehículos se detengan, con la intención de recoger o dejar pasajeros. Cuando configuras este valor, la ruta calculada no incluirá puntos de referencia que no sean de tipo via en rutas aptas para recoger y dejar pasajeros. Esta opción solo funciona para los modos de viaje DRIVE y TWO_WHEELER, y cuando location_type es location.

side_of_road

bool

Indica que la ubicación de este punto de referencia está destinada a que el vehículo se detenga en un lado específico de la ruta. Cuando estableces este valor, la ruta pasará por la ubicación para que el vehículo pueda detenerse al costado de la ruta hacia el que se inclina la ubicación desde el centro de la ruta. Esta opción solo funciona para los modos de viaje "DRIVE" y "TWO_WHEELER".

Campo de unión location_type. Son las diferentes formas de representar una ubicación. location_type puede ser solo uno de los parámetros siguientes:
location

Location

Es un punto especificado con coordenadas geográficas, que incluye un encabezado opcional.

place_id

string

Es el ID de lugar del PDI asociado con el punto de ruta.