Method: computeRoutes

Devuelve la ruta principal junto con rutas alternativas opcionales, según un conjunto de puntos de referencia intermedios y terminales.

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 con un encabezado HTTP/gRPC X-Goog-FieldMask (consulta los parámetros y encabezados de URL disponibles). El valor es una lista de rutas de campo separadas por comas. Consulta la documentación detallada sobre cómo construir las rutas de los 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 (*) ni 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 mostrarte el resultado con una latencia más baja.
  • Seleccionar solo los campos que necesitas para 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 campos nuevos podrían requerir tiempo de procesamiento adicional. Si seleccionas todos los campos o si lo haces en el nivel superior, es posible que experimentes una degradación del rendimiento, ya que los campos nuevos que agregues se incluirán automáticamente en la respuesta.
  • Seleccionar solo los campos que necesitas da como resultado un tamaño de respuesta más pequeño y, por lo tanto, una capacidad de procesamiento de red mayor.

Solicitud HTTP

POST https://routes.googleapis.com/directions/v2:computeRoutes

La URL usa la sintaxis de la transcodificación gRPC.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "arrivalTime": string,
  "computeAlternativeRoutes": boolean,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "languageCode": string,
  "regionCode": string,
  "units": enum (Units),
  "optimizeWaypointOrder": boolean,
  "requestedReferenceRoutes": [
    enum (ReferenceRoute)
  ],
  "extraComputations": [
    enum (ExtraComputation)
  ],
  "trafficModel": enum (TrafficModel),
  "transitPreferences": {
    object (TransitPreferences)
  }
}
Campos
origin

object (Waypoint)

Obligatorio. Punto de referencia de origen.

destination

object (Waypoint)

Obligatorio. Punto de referencia de destino.

intermediates[]

object (Waypoint)

Opcional. Un conjunto de puntos de referencia a lo largo de la ruta (sin incluir puntos de terminal), para parar en la ruta o pasar por ella. Se admiten hasta 25 puntos de referencia intermedios.

travelMode

enum (RouteTravelMode)

Opcional. Especifica el medio de transporte.

routingPreference

enum (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. Puedes especificar esta opción solo cuando travelMode es DRIVE o TWO_WHEELER; de lo contrario, la solicitud falla.

polylineQuality

enum (PolylineQuality)

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

polylineEncoding

enum (PolylineEncoding)

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

departureTime

string (Timestamp format)

Opcional. Hora de salida. Si no estableces este valor, el valor predeterminado será la hora en que realizaste la solicitud. NOTA: Solo puedes especificar un departureTime en el pasado cuando RouteTravelMode se establece en TRANSIT. Los viajes en transporte público están disponibles por hasta 7 días en el pasado o 100 días en el futuro.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

arrivalTime

string (Timestamp format)

Opcional. Indica la hora de llegada. NOTA: Solo se puede configurar cuando RouteTravelMode está configurado como TRANSIT. Puedes especificar departureTime o arrivalTime, pero no ambos. Los viajes en transporte público están disponibles por hasta 7 días en el pasado o 100 días en el futuro.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

computeAlternativeRoutes

boolean

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

routeModifiers

object (RouteModifiers)

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

languageCode

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 Unicode. Consulta Idiomas compatibles para obtener la lista de idiomas admitidos. Si no proporcionas este valor, el idioma de visualización se infiere de la ubicación de la solicitud de ruta.

regionCode

string

Opcional. Es el código de región, especificado como un valor ccTLD ("dominio de nivel superior") de dos caracteres. Para obtener más información, consulte Dominios de nivel superior con códigos de país.

units

enum (Units)

Opcional. Especifica las unidades de medida para los campos de visualización. Estos campos incluyen el campo instruction en NavigationInstruction. Las unidades de medida usadas para la ruta, el tramo, la distancia del paso y la duración no se ven afectadas por este valor. Si no proporcionas este valor, las unidades de visualización se infieren de la ubicación del primer origen.

optimizeWaypointOrder

boolean

Opcional. Si se configura como verdadera, el servicio intenta minimizar el costo total de la ruta reordenando los puntos de referencia intermedios especificados. La solicitud falla si alguno de los puntos de referencia intermedios es un punto de referencia via. Usa ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index para encontrar el nuevo orden. Si no se solicita ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index en el encabezado X-Goog-FieldMask, la solicitud falla. Si optimizeWaypointOrder se establece como falso, ComputeRoutesResponse.optimized_intermediate_waypoint_index estará vacío.

requestedReferenceRoutes[]

enum (ReferenceRoute)

Opcional. Especifica qué rutas de referencia se deben calcular como parte de la solicitud además de la ruta predeterminada. Una ruta de referencia es una ruta con un objetivo de cálculo de ruta diferente al de la ruta predeterminada. Por ejemplo, un cálculo de ruta de referencia de FUEL_EFFICIENT tiene en cuenta varios parámetros que generarían una ruta óptima con ahorro de combustible.

extraComputations[]

enum (ExtraComputation)

Opcional. Una lista de cálculos adicionales que se pueden usar para completar la solicitud. Nota: Estos cálculos adicionales pueden mostrar campos adicionales en la respuesta. Estos campos adicionales también se deben especificar en la máscara de campo que se mostrará en la respuesta.

trafficModel

enum (TrafficModel)

Opcional. Especifica las suposiciones que se deben usar cuando se calcula el tiempo en el tráfico. Esta configuración afecta el valor que se muestra en el campo de duración de Route y RouteLeg, que contiene el tiempo previsto en el tráfico según los promedios históricos. TrafficModel solo está disponible para solicitudes que establecen RoutingPreference en TRAFFIC_AWARE_OPTIMAL y RouteTravelMode en DRIVE. El valor predeterminado es BEST_GUESS si se solicita tráfico y no se especifica TrafficModel.

transitPreferences

object (TransitPreferences)

Opcional. Especifica las preferencias que influyen en la ruta que se muestra para las rutas TRANSIT. NOTA: Solo puedes especificar un transitPreferences cuando RouteTravelMode se establece en TRANSIT.

Cuerpo de la respuesta

v2.computeRoutes el mensaje de respuesta.

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

Representación JSON
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
Campos
routes[]

object (Route)

Contiene un array de rutas calculadas (hasta tres) cuando especificas compute_alternatives_routes y contiene 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.

fallbackInfo

object (FallbackInfo)

En algunos casos, cuando el servidor no puede procesar los resultados de la ruta con todas las preferencias de entrada, puede recurrir a una forma de procesamiento diferente. Cuando se usa el modo de resguardo, este campo contiene información detallada sobre la respuesta de resguardo. De lo contrario, este campo no se establece.

geocodingResults

object (GeocodingResults)

Contiene información de respuestas de geocodificación para puntos de referencia especificados como direcciones.

PolylineQuality

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

Enumeradores
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 de más puntos que OVERVIEW, a costa de un tamaño de respuesta mayor. Usa este valor cuando necesites más precisión.
OVERVIEW Especifica una polilínea de descripción general, que se compone de una pequeña cantidad de puntos. Usa este valor cuando muestres una descripción general de la ruta. El uso de esta opción tiene una latencia de solicitud más baja en comparación con el uso de la opción HIGH_QUALITY.

PolylineEncoding

Especifica el tipo preferido de polilínea que se debe mostrar.

Enumeradores
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ínea.
GEO_JSON_LINESTRING Especifica una polilínea con el formato LineString GeoJSON

ReferenceRoute

Una ruta de referencia compatible en ComputeRoutesRequest.

Enumeradores
REFERENCE_ROUTE_UNSPECIFIED No se usa. Las solicitudes que contienen este valor fallan.
FUEL_EFFICIENT Ruta con mayor ahorro de combustible. Se determina que las rutas etiquetadas con este valor están optimizadas en función de parámetros como el consumo de combustible.

ExtraComputation

Cálculos adicionales para realizar mientras se completa la solicitud.

Enumeradores
EXTRA_COMPUTATION_UNSPECIFIED No se usa. Las solicitudes que contengan este valor fallarán.
TOLLS Información sobre los peajes de las rutas.
FUEL_CONSUMPTION Consumo de combustible estimado de las rutas.
TRAFFIC_ON_POLYLINE Polilíneas adaptadas al tráfico para las rutas.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions se presenta como una cadena de texto HTML con formato. Este contenido se debe leer tal como está. Solo se puede mostrar. No lo analices de manera programática.

Ruta

Contiene una ruta compuesta por una serie de tramos de ruta conectados que unen los puntos de referencia intermedios, de inicio y de finalización.

Representación JSON
{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ],
  "localizedValues": {
    object (RouteLocalizedValues)
  },
  "routeToken": string
}
Campos
routeLabels[]

enum (RouteLabel)

Las etiquetas de Route que son útiles para identificar propiedades específicas de la ruta para compararlas con otras.

legs[]

object (RouteLeg)

Conjunto de tramos (segmentos de trayectos entre puntos de referencia) que conforman la ruta. Cada tramo corresponde al viaje entre dos Waypoints que no son via. Por ejemplo, una ruta sin puntos de referencia intermedios tiene solo un segmento. Una ruta que incluye un punto de referencia intermedio que no es via tiene dos segmentos. Una ruta que incluye un punto de referencia intermedio via tiene un segmento. El orden de los segmentos coincide con el orden de los puntos de referencia desde origin hasta intermediates y destination.

distanceMeters

integer

La distancia de viaje de la ruta en metros.

duration

string (Duration format)

Indica la cantidad de tiempo necesario para navegar por la ruta. Si configuras routingPreference como TRAFFIC_UNAWARE, este valor es el mismo que staticDuration. Si estableces routingPreference como TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, este valor se calcula teniendo en cuenta las condiciones del tráfico.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

staticDuration

string (Duration format)

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

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

polyline

object (Polyline)

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

description

string

Es una descripción de la ruta.

warnings[]

string

Array de advertencias que se mostrarán cuando se muestre la ruta.

viewport

object (Viewport)

El cuadro de límite del viewport de la polilínea.

travelAdvisory

object (RouteTravelAdvisory)

Información adicional sobre la ruta.

optimizedIntermediateWaypointIndex[]

integer

Si configuras optimizeWaypointOrder como verdadero, este campo contiene el orden optimizado de los puntos de referencia intermedios. De lo contrario, este campo estará vacío. Por ejemplo, si proporcionas una entrada de Origen: LA; Puntos de referencia intermedios: Dallas, Bangor, Phoenix; Destino: Nueva York, y el orden de puntos de referencia intermedio optimizado es Phoenix, Dallas, Bangor, este campo contiene los valores [2, 0, 1]. El índice comienza con 0 para el primer punto de referencia intermedio proporcionado en la entrada.

localizedValues

object (RouteLocalizedValues)

Representaciones de texto de propiedades de Route

routeToken

string

Es un token de ruta seguro para la Web y codificado en Base64 que se puede pasar al SDK de Navigation. Este le permite reconstruir la ruta durante la navegación y, en caso de una redirección, respetar la intención original cuando creaste la ruta llamando a v2.computeRoutes. Los clientes deben tratar este token como un BLOB opaco. No compares su valor entre solicitudes, ya que este token puede cambiar incluso si se devolvió exactamente la misma ruta. NOTA: Route.route_token solo está disponible para solicitudes que tienen configurada ComputeRoutesRequest.routing_preference como TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL. Route.route_token no es compatible con las solicitudes que tienen puntos de referencia de Via.

RouteLabel

Las etiquetas de Route que son útiles para identificar propiedades específicas de la ruta para compararlas con otras.

Enumeradores
ROUTE_LABEL_UNSPECIFIED Predeterminado: sin usar.
DEFAULT_ROUTE La “mejor” ruta predeterminada que se muestra para el cálculo de la ruta.
DEFAULT_ROUTE_ALTERNATE Una alternativa a la “mejor” ruta predeterminada. Se mostrarán rutas como esta cuando se especifique computeAlternativeRoutes.
FUEL_EFFICIENT Ruta con mayor ahorro de combustible. Se determina que las rutas etiquetadas con este valor están optimizadas en función de los parámetros Eco, como el consumo de combustible.

RouteLeg

Contiene un segmento entre puntos de referencia que no son via.

Representación JSON
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegLocalizedValues)
  },
  "stepsOverview": {
    object (StepsOverview)
  }
}
Campos
distanceMeters

integer

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

duration

string (Duration format)

Es la cantidad de tiempo necesario para navegar por el tramo. Si route_preference se establece como TRAFFIC_UNAWARE, este valor es el mismo que staticDuration. Si el route_preference es TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, este valor se calcula teniendo en cuenta las condiciones del tráfico.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

staticDuration

string (Duration format)

Es la duración del viaje a través del tramo, que se calcula sin considerar las condiciones del tráfico.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

polyline

object (Polyline)

Es la polilínea general de este segmento que incluye la polilínea de cada step.

startLocation

object (Location)

Es la ubicación inicial de este segmento. Esta ubicación puede ser diferente de la origin proporcionada. Por ejemplo, cuando el origin proporcionado no está cerca de una ruta, se trata de un punto en la ruta.

endLocation

object (Location)

Es la ubicación final de esta etapa. Esta ubicación puede ser diferente de la destination proporcionada. Por ejemplo, cuando el destination proporcionado no está cerca de una ruta, se trata de un punto en la ruta.

steps[]

object (RouteLegStep)

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

travelAdvisory

object (RouteLegTravelAdvisory)

Contiene la información adicional que se debe informar al usuario, como posibles restricciones en una zona de tráfico, en un tramo de la ruta.

localizedValues

object (RouteLegLocalizedValues)

Representaciones de texto de propiedades de RouteLeg

stepsOverview

object (StepsOverview)

Información general sobre los pasos en este RouteLeg. Este campo solo se completa para las rutas de TRANSIT.

Polilínea

Encapsula una polilínea codificada.

Representación JSON
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
Campos
Campo de unión polyline_type. Encapsula el tipo de polilínea. El valor predeterminado es encoded_polyline. Las direcciones (polyline_type) solo pueden ser una de las siguientes opciones:
encodedPolyline

string

La codificación de cadenas de la polilínea con el algoritmo de codificación de polilínea

geoJsonLinestring

object (Struct format)

Especifica una polilínea con el formato GeoJSON LineString.

RouteLegStep

Contiene un segmento de un RouteLeg. Un paso corresponde a una sola instrucción de navegación. Los tramos de la ruta constan de escalones.

Representación JSON
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegStepLocalizedValues)
  },
  "transitDetails": {
    object (RouteLegStepTransitDetails)
  },
  "travelMode": enum (RouteTravelMode)
}
Campos
distanceMeters

integer

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

staticDuration

string (Duration format)

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

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

polyline

object (Polyline)

La polilínea asociada con este paso.

startLocation

object (Location)

Es la ubicación de inicio de este paso.

endLocation

object (Location)

Es la ubicación final de este paso.

navigationInstruction

object (NavigationInstruction)

Instrucciones de navegación.

travelAdvisory

object (RouteLegStepTravelAdvisory)

Contiene la información adicional que se debe informar al usuario, como posibles restricciones en una zona de tráfico, sobre un paso de una etapa.

localizedValues

object (RouteLegStepLocalizedValues)

Representaciones de texto de propiedades de RouteLegStep

transitDetails

object (RouteLegStepTransitDetails)

Son los detalles relacionados con este paso si el medio de transporte es TRANSIT.

travelMode

enum (RouteTravelMode)

Indica el medio de transporte utilizado para este paso.

Maneuver

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

Enumeradores
MANEUVER_UNSPECIFIED No se usa.
TURN_SLIGHT_LEFT Gira levemente a la izquierda.
TURN_SHARP_LEFT Gira totalmente a la izquierda.
UTURN_LEFT Haz un giro en U a la izquierda.
TURN_LEFT Gira a la izquierda.
TURN_SLIGHT_RIGHT Gira levemente a la derecha.
TURN_SHARP_RIGHT Gira pronunciadamente a la derecha.
UTURN_RIGHT Haz un giro en U hacia la derecha.
TURN_RIGHT Gira a la derecha.
STRAIGHT Sigue derecho.
RAMP_LEFT Toma la rampa de la izquierda.
RAMP_RIGHT Toma la rampa de la derecha.
MERGE Incorpore en el tráfico.
FORK_LEFT Toma la bifurcación izquierda.
FORK_RIGHT Usa el tenedor correcto.
FERRY Toma el transbordador.
FERRY_TRAIN Toma el tren que te lleva al ferri.
ROUNDABOUT_LEFT Dobla a la izquierda en la rotonda.
ROUNDABOUT_RIGHT Dobla a la derecha en la rotonda.
DEPART Maniobra inicial.
NAME_CHANGE Se usa para indicar un cambio en el nombre de la calle.

RouteLegStepTravelAdvisory

Contiene la información adicional sobre la que se debe informar al usuario, como posibles restricciones en una zona de tráfico para un paso de una etapa.

Representación JSON
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campos
speedReadingIntervals[]

object (SpeedReadingInterval)

NOTA: Este campo no está propagado por el momento.

RouteLegStepLocalizedValues

Representaciones de texto de ciertas propiedades.

Representación JSON
{
  "distance": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Campos
distance

object (LocalizedText)

Distancia de viaje representada en forma de texto.

staticDuration

object (LocalizedText)

Es la duración sin tener en cuenta las condiciones del tráfico, representada con formato de texto.

RouteLegStepTransitDetails

Información adicional para el RouteLegStep relacionado con las rutas TRANSIT.

Representación JSON
{
  "stopDetails": {
    object (TransitStopDetails)
  },
  "localizedValues": {
    object (TransitDetailsLocalizedValues)
  },
  "headsign": string,
  "headway": string,
  "transitLine": {
    object (TransitLine)
  },
  "stopCount": integer,
  "tripShortText": string
}
Campos
stopDetails

object (TransitStopDetails)

Información sobre las paradas de llegada y salida del paso.

localizedValues

object (TransitDetailsLocalizedValues)

Representaciones de texto de propiedades de RouteLegStepTransitDetails

headsign

string

Especifica la dirección hacia la cual viajar en esta línea, según lo marcado en el vehículo o en la parada de salida. A menudo, la dirección es la estación terminal.

headway

string (Duration format)

Especifica la hora prevista como un período entre salidas desde la misma parada en este momento. Por ejemplo, con un valor de 600 en segundos entre viajes, se espera una espera de diez minutos en caso de perder un autobús.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

transitLine

object (TransitLine)

Información sobre la línea de transporte público que se usa en este paso.

stopCount

integer

La cantidad de paradas desde la salida hasta la llegada. Este recuento incluye la parada de llegada, pero excluye la parada de salida. Por ejemplo, si tu ruta sale de la parada A, pasa por las paradas B y C y llega a la parada D, stopCount devolverá 3.

tripShortText

string

Es el texto que aparece en los horarios y carteles para identificar un viaje en transporte público para los pasajeros. El texto debe identificar de manera exclusiva un viaje durante un día de servicio. Por ejemplo, "538" es el tripShortText del tren de Amtrak que sale de San José, California, a las 15:10 los días de semana hacia Sacramento, California.

TransitStopDetails

Detalles acerca de las paradas del transporte público del RouteLegStep

Representación JSON
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
Campos
arrivalStop

object (TransitStop)

Información sobre la parada de llegada del paso.

arrivalTime

string (Timestamp format)

Es la hora estimada de llegada del paso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

departureStop

object (TransitStop)

Información sobre la parada de salida del paso.

departureTime

string (Timestamp format)

La hora estimada de salida del paso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

TransitStop

Información sobre una parada de transporte público.

Representación JSON
{
  "name": string,
  "location": {
    object (Location)
  }
}
Campos
name

string

El nombre de la parada de transporte público.

location

object (Location)

Es la ubicación de la parada expresada en coordenadas de latitud y longitud.

TransitDetailsLocalizedValues

Descripciones localizadas de los valores de RouteTransitDetails.

Representación JSON
{
  "arrivalTime": {
    object (LocalizedTime)
  },
  "departureTime": {
    object (LocalizedTime)
  }
}
Campos
arrivalTime

object (LocalizedTime)

La hora en su representación de texto con formato y en la zona horaria correspondiente.

departureTime

object (LocalizedTime)

La hora en su representación de texto con formato y en la zona horaria correspondiente.

LocalizedTime

Descripción localizada del tiempo.

Representación JSON
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
Campos
time

object (LocalizedText)

La hora especificada como cadena en una zona horaria determinada.

timeZone

string

Contiene la zona horaria. El valor es el nombre de la zona horaria como se define en la base de datos de zonas horarias de IANA, p.ej., "America/New_York".

TransitLine

Contiene información acerca de la línea de transporte público que se usa en este paso.

Representación JSON
{
  "agencies": [
    {
      object (TransitAgency)
    }
  ],
  "name": string,
  "uri": string,
  "color": string,
  "iconUri": string,
  "nameShort": string,
  "textColor": string,
  "vehicle": {
    object (TransitVehicle)
  }
}
Campos
agencies[]

object (TransitAgency)

Es la empresa (o empresas) de transporte público que opera esta línea de transporte público.

name

string

El nombre completo de esta línea de transporte público, por ejemplo, “Local 8 Avenue”.

uri

string

Es el URI de esta línea de transporte público proporcionado por la empresa de transporte público.

color

string

El color que se usa comúnmente en la señalización de esta línea. Se representa en hexadecimal.

iconUri

string

El URI para el ícono asociado con esta línea.

nameShort

string

Es el nombre corto de esta línea de transporte público. Normalmente, será un número de línea, como "M7" o "355".

textColor

string

El color que se usa comúnmente en el texto de la señalización para esta línea. Se representa en hexadecimal.

vehicle

object (TransitVehicle)

Es el tipo de vehículo que opera en esta línea de transporte público.

TransitAgency

Una empresa de transporte público que opera una línea de transporte público.

Representación JSON
{
  "name": string,
  "phoneNumber": string,
  "uri": string
}
Campos
name

string

Es el nombre de esta empresa de transporte público.

phoneNumber

string

Es el número de teléfono con formato específico para la configuración regional de la empresa de transporte público.

uri

string

Es el URI de la empresa de transporte público.

TransitVehicle

Información sobre un vehículo utilizado en rutas de transporte público.

Representación JSON
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
Campos
name

object (LocalizedText)

El nombre de este vehículo en mayúsculas.

type

enum (TransitVehicleType)

El tipo de vehículo que se usa

iconUri

string

El URI de un ícono asociado a este tipo de vehículo.

localIconUri

string

Es el URI del ícono asociado con este tipo de vehículo, según la señalización de transporte local.

TransitVehicleType

El tipo de vehículos para las rutas de transporte público.

Enumeradores
TRANSIT_VEHICLE_TYPE_UNSPECIFIED No se utiliza.
BUS Autobús
CABLE_CAR Un vehículo que funciona con un cable y generalmente sobre el suelo; Los teleféricos pueden ser del tipo GONDOLA_LIFT.
COMMUTER_TRAIN Ferrocarril suburbano
FERRY Ferry
FUNICULAR Un vehículo que sube por una pendiente pronunciada a través de un cable; Un funicular normalmente consta de dos coches; cada uno actúa como contrapeso del otro.
GONDOLA_LIFT Un funicular aéreo
HEAVY_RAIL Ferrocarril metropolitano
HIGH_SPEED_TRAIN Tren de alta velocidad
INTERCITY_BUS Autobús interurbano
LONG_DISTANCE_TRAIN Tren de larga distancia.
METRO_RAIL Transporte en tren ligero
MONORAIL Monorriel
OTHER Todos los demás vehículos
RAIL Ferrocarril
SHARE_TAXI El transporte “share taxi” es una clase de autobús que puede dejar y recoger pasajeros en cualquier punto de su recorrido.
SUBWAY Tren ligero subterráneo
TRAM Tren ligero sobre el suelo
TROLLEYBUS Trolebús

RouteLegTravelAdvisory

Contiene la información adicional sobre la que se debe informar al usuario sobre un paso de la etapa, como posibles restricciones en la zona de tráfico.

Representación JSON
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campos
tollInfo

object (TollInfo)

Contiene información sobre los peajes de un RouteLeg específico. Este campo solo se completa si se prevé que haya peajes en el RouteLeg. Si se establece este campo, pero el subcampo estimadoPrice no está propagado, se espera que la ruta contenga peajes, pero no conocemos el precio estimado. Si no existe este campo, no habrá peaje en el RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalos de lectura de velocidad que detallan la densidad del tráfico Se aplica en el caso de las preferencias de enrutamiento de TRAFFIC_AWARE y TRAFFIC_AWARE_OPTIMAL. Los intervalos cubren toda la polilínea de RouteLeg sin superposición. El punto de inicio de un intervalo especificado es el mismo que el punto final del intervalo anterior.

Ejemplo:

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

RouteLegLocalizedValues

Representaciones de texto de ciertas propiedades.

Representación JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Campos
distance

object (LocalizedText)

Distancia de viaje representada en forma de texto.

duration

object (LocalizedText)

Es la duración en la que se consideran las condiciones del tráfico, representadas en formato de texto. Nota: Si no solicitaste información sobre el tráfico, este valor será el mismo que el de dynamicDuration.

staticDuration

object (LocalizedText)

Es la duración sin tener en cuenta las condiciones del tráfico, representada con formato de texto.

StepsOverview

Proporciona información general sobre una lista de RouteLegStep.

Representación JSON
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
Campos
multiModalSegments[]

object (MultiModalSegment)

Se resumió la información sobre diferentes segmentos multimodales de RouteLeg.steps. Este campo no se completa si la RouteLeg no contiene ningún segmento multimodal en los pasos.

MultiModalSegment

Proporciona información resumida sobre diferentes segmentos multimodales de RouteLeg.steps. Un segmento multimodal se define como una o más RouteLegStep contiguas que tienen el mismo RouteTravelMode. Este campo no se completa si la RouteLeg no contiene ningún segmento multimodal en los pasos.

Representación JSON
{
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelMode": enum (RouteTravelMode),
  "stepStartIndex": integer,
  "stepEndIndex": integer
}
Campos
navigationInstruction

object (NavigationInstruction)

NavigationInstruction para el segmento multimodal.

travelMode

enum (RouteTravelMode)

Indica el medio de transporte del segmento multimodal.

stepStartIndex

integer

El índice RouteLegStep correspondiente que es el inicio de un segmento multimodal.

stepEndIndex

integer

El índice RouteLegStep correspondiente que es el final de un segmento multimodal.

Viewport

Un viewport de latitud y longitud, representado por dos puntos low y high opuestos en diagonal. Un viewport se considera una región cerrada, es decir, incluye su límite. Los límites de latitud deben oscilar entre -90 y 90 grados inclusive, y los límites de longitud deben oscilar entre -180 y 180 grados inclusive. Varios casos incluyen los siguientes:

  • Si low = high, el viewport consta de ese solo punto.

  • Si low.longitude > high.longitude, el intervalo de longitud se invierte (el viewport cruza la línea de longitud de 180 grados).

  • Si low.longitude = -180 grados y high.longitude = 180 grados, el viewport incluye todas las longitudes.

  • Si low.longitude = 180 grados y high.longitude = -180 grados, el rango de longitud está vacío.

  • Si low.latitude > high.latitude, el rango de latitud está vacío.

Tanto low como high se deben completar, y el cuadro representado no puede estar vacío (como se especifica en las definiciones anteriores). Si el viewport está vacío, se producirá un error.

Por ejemplo, este viewport abarca por completo la ciudad de Nueva York:

{ "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } }

Representación JSON
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
Campos
low

object (LatLng)

Obligatorio. Es el punto inferior del viewport.

high

object (LatLng)

Obligatorio. Es el punto superior del viewport.

RouteLocalizedValues

Representaciones de texto de ciertas propiedades.

Representación JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  },
  "transitFare": {
    object (LocalizedText)
  }
}
Campos
distance

object (LocalizedText)

Distancia de viaje representada en forma de texto.

duration

object (LocalizedText)

Es la duración en la que se tienen en cuenta las condiciones del tráfico, representada en forma de texto. Nota: Si no solicitaste información sobre el tráfico, este valor será el mismo que el de staticDuration.

staticDuration

object (LocalizedText)

Es la duración sin tener en cuenta las condiciones del tráfico, representada con formato de texto.

transitFare

object (LocalizedText)

Tarifa de transporte público representada en forma de texto

GeocodingResults

Contiene GeocodedWaypoints para los puntos de referencia intermedios, de origen y de destino. Solo se completa para los puntos de referencia de direcciones.

Representación JSON
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
Campos
origin

object (GeocodedWaypoint)

Punto de referencia geocodificado de origen.

destination

object (GeocodedWaypoint)

Punto de referencia geocodificado de destino.

intermediates[]

object (GeocodedWaypoint)

Una lista de waypoints intermedios geocodificados, cada uno de los cuales contiene un campo de índice que corresponde a la posición basada en cero del punto de referencia en el orden en que se especificaron en la solicitud.

GeocodedWaypoint

Detalles sobre las ubicaciones utilizadas como puntos de referencia. Solo se completa para los puntos de referencia de direcciones. Incluye información detallada sobre los resultados de geocodificación para determinar a qué dirección se realizó la geocodificación.

Representación JSON
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
Campos
geocoderStatus

object (Status)

Indica el código de estado que se genera a partir de la operación de geocodificación.

type[]

string

Los tipos del resultado, con formato de cero o más etiquetas de tipo. Tipos admitidos: Tipos de dirección y tipos de componentes de dirección.

partialMatch

boolean

Indica que el geocodificador no devolvió una coincidencia exacta para la solicitud original, aunque sí pudo establecer una coincidencia parcial para la dirección solicitada. Te recomendamos que examines la solicitud original para comprobar que no haya errores ortográficos y que la dirección no esté incompleta.

placeId

string

Es el ID de lugar de este resultado.

intermediateWaypointRequestIndex

integer

El índice del punto de referencia intermedio correspondiente en la solicitud. Solo se completa si el punto de referencia correspondiente es un punto de referencia intermedio.