Este producto se encuentra en estado heredado. A partir de octubre de 2026, ya no se podrá habilitar la API de Directions (heredada) para los proyectos nuevos de Google Cloud. Los proyectos existentes siguen siendo totalmente compatibles. Para obtener funciones nuevas y un mejor rendimiento, migra a la API de Routes.
Solicitudes de ejemplo
La siguiente solicitud devuelve la ruta en auto desde Toronto, Ontario, hasta Montreal, Quebec.
URL
https://maps.googleapis.com/maps/api/directions/json?destination=Montreal &origin=Toronto &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&key=YOUR_API_KEY'
Si cambias los parámetros mode y avoid,
puedes modificar la solicitud inicial para que devuelva instrucciones sobre cómo llegar
en un viaje panorámico en bicicleta que evite las autopistas principales.
URL
https://maps.googleapis.com/maps/api/directions/json ?avoid=highways &destination=Montreal &mode=bicycling &origin=Toronto &key=YOUR_API_KEYYOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&avoid=highways&mode=bicycling&key=YOUR_API_KEY'YOUR_API_KEY'
En la siguiente solicitud, se buscan instrucciones sobre cómo llegar en transporte público de Brooklyn, Nueva York, a Queens, Nueva York. La solicitud no especifica un parámetro departure_time, por lo que la hora de salida se establece de forma predeterminada en la hora actual:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Queens &mode=transit &origin=Brooklyn &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Brooklyn&destination=Queens&mode=transit&keyYOUR_API_KEY'
La siguiente solicitud de transporte público incluye una hora de salida específica.
Nota: En este ejemplo, la hora de salida se especifica como el 30 de julio de 2012 a las 9:45 a.m. Para evitar un error, debes cambiar el parámetro a una hora futura antes de enviar la solicitud.
URL
https://maps.googleapis.com/maps/api/directions/json ?departure_time=1343641500 &destination=Queens &mode=transit &origin=Brooklyn &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Brooklyn&destination=Queens&mode=transit&departure_time=1343641500&key=YOUR_API_KEY'
En la siguiente solicitud, se usan Plus Codes para devolver una ruta en auto de H8MW+WP a GCG2+3M en Calcuta, India.
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=GCG2%2B3M%20Kolkata%20India &origin=H8MW%2BWP%20Kolkata%20India &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=H8MW%2BWP%20Kolkata%20India&destination=GCG2%2B3M%20Kolkata%20India&key=YOUR_API_KEY'
La siguiente solicitud devuelve una ruta en auto desde Glasgow, Reino Unido, hasta Perth, Reino Unido, con IDs de lugar.
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=place_id%3AChIJA01I-8YVhkgRGJb0fW4UX7Y &origin=place_id%3AChIJ685WIFYViEgRHlHvBbiD5nE &keyYOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=place_id%3AChIJ685WIFYViEgRHlHvBbiD5nE&destination=place_id%3AChIJA01I-8YVhkgRGJb0fW4UX7Y&key=YOUR_API_KEY'
Medios de transporte
Cuando calculas instrucciones sobre cómo llegar, puedes especificar el mode de transporte que se usará. De forma predeterminada,
las instrucciones sobre cómo llegar se calculan como instrucciones para driving. Se admiten los siguientes medios de transporte:
driving(predeterminado) indica la ruta en auto estándar por la red de rutas.walkingsolicita instrucciones sobre cómo llegar a un lugar a pie por rutas peatonales y veredas (cuando estén disponibles).bicyclingsolicita la ruta en bicicleta por ciclovías y calles preferidas (cuando estén disponibles).transitsolicita instrucciones sobre cómo llegar a un lugar por medio de rutas de transporte público (cuando estén disponibles). Si configuras el modo comotransit, puedes especificar de manera opcional undeparture_timeo unarrival_time. Si no se especifica ninguna hora, el valor predeterminado dedeparture_timees ahora (es decir, la hora de salida predeterminada es la hora actual). También puedes incluir untransit_modeo untransit_routing_preferencede manera opcional.
Nota: Es posible que las rutas a pie y en bicicleta no incluyan rutas peatonales o para bicicletas claras, por lo que estas rutas devolverán warnings en el resultado que debes mostrar al usuario.
Información sobre el tráfico
La información sobre el tráfico se usa cuando se aplican todas las condiciones siguientes (las cuales son necesarias para recibir el campo
duration_in_traffic en la respuesta de Directions):
- El parámetro
modede viaje esdrivingo no se especifica (drivinges el modo de viaje predeterminado). - La solicitud incluye un parámetro
departure_timeválido.departure_timese puede establecer en la hora actual o en un horario futuro. No puede ser un horario pasado. - La solicitud no incluye puntos de referencia de parada. En el caso de que incluya puntos de referencia, agrégale el prefijo
via:a cada uno para influir sobre la ruta, pero evitar las paradas. Por ejemplo:&waypoints=via:San Francisco|via:Mountain View|...
De manera opcional, puedes incluir el parámetro
traffic_model en tu solicitud para especificar las suposiciones que se usarán cuando se calcule el tiempo en el tráfico.
La siguiente URL inicia una solicitud de Directions para un viaje de Boston, Massachusetts, a Concord, Massachusetts, pasando por Charlestown y Lexington. La solicitud incluye una hora de salida, lo que cumple con todos los requisitos para devolver el campo duration_in_traffic en la respuesta de Directions.
URL
https://maps.googleapis.com/maps/api/directions/json ?departure_time=now &destination=Concord%2C%20MA &origin=Boston%2C%20MA &waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Boston%2C%20MA&destination=Concord%2C%20MA&waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA&departure_time=now&key=YOUR_API_KEY'
Hitos
Cuando calculas rutas con la API de Directions (heredada), puedes especificar puntos de referencia para que se devuelva una ruta que incluya pasos o paradas en ubicaciones intermedias. Puedes agregar puntos de referencia a las rutas en auto, a pie o en bicicleta, pero no a las rutas en transporte público.
Especifica las ubicaciones en el parámetro waypoints.
Puedes proporcionar una o más ubicaciones separadas por el carácter de barra vertical (| o %7C) en forma de ID de lugar, dirección o coordenadas de latitud y longitud. De forma predeterminada, el servicio Directions calcula una ruta con los puntos de referencia en el orden
en que se proporcionan. La prioridad para analizar el valor del punto de referencia es el ID de lugar, las coordenadas de latitud y longitud, y, luego, la dirección.
- Si pasas un ID de lugar, debes agregarle el prefijo
place_id:. Puedes recuperar los IDs de lugar de la API de Geocoding y la API de Places (incluido Place Autocomplete). Para ver un ejemplo que use IDs de lugar de Place Autocomplete, consulta el artículo Place Autocomplete y Directions. Para obtener más información sobre los IDs de lugar, consulta la descripción general de los IDs de lugar.Para mayor eficiencia y precisión, usa IDs de lugar siempre que sea posible. Estos IDs son explícitos de forma única, como un par de valores de latitud y longitud, y proporcionan beneficios de geocodificación para la ruta, como puntos de acceso y variables de tráfico. A diferencia de una dirección, los IDs no requieren que el servicio realice una búsqueda ni una solicitud intermedia de Place Details. Por lo tanto, el rendimiento es mejor.
- Si pasas coordenadas de latitud y longitud, los valores se envían directamente al servidor de frontend
para calcular las rutas sin geocodificación. Los puntos se ajustan a las rutas y es posible que no proporcionen
la precisión que necesita tu app. Usa coordenadas cuando tengas la certeza de que los valores especifican realmente los
puntos que tu app necesita para la ruta, sin tener en cuenta los posibles puntos de acceso ni los detalles de geocodificación
adicionales. Asegúrate de que los valores de latitud y longitud estén separados por una coma (
%2C) y no por un espacio (%20). - Si pasas una dirección, el servicio de Directions geocodificará la cadena y la convertirá en coordenadas de latitud y longitud para calcular las instrucciones sobre cómo llegar. Si el valor de la dirección es ambiguo, puede provocar una búsqueda para eliminar la ambigüedad de direcciones similares. Por ejemplo, "1st Street" podría ser un valor completo o parcial para "1st street NE" o "1st St SE". Este resultado puede ser diferente del que devuelve la API de Geocoding. Puedes evitar posibles interpretaciones erróneas con los IDs de lugar. Consulta Soluciona problemas relacionados con los resultados de mi solicitud de ruta.
Como alternativa, puedes proporcionar un conjunto de puntos codificados con el algoritmo de polilínea codificada. Verás que un conjunto codificado es útil para una gran cantidad de puntos de referencia, ya que la URL es significativamente más corta. Todos los servicios web tienen un límite de 16,384 caracteres para las URLs.
- Las polilíneas codificadas deben tener el prefijo
enc:y estar seguidas de dos puntos (:). Por ejemplo:waypoints=enc:gfo}EtohhU:. - También puedes incluir varias polilíneas codificadas, separadas por el carácter de barra vertical (
|). Por ejemplo,waypoints=via:enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:| via:enc:udymA{~bxM:.
La siguiente URL inicia una solicitud de Directions para un viaje entre Boston, MA y Concord, MA, con paradas en Charlestown y Lexington, en ese orden. En el ejemplo, se usan las siguientes direcciones:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Concord%2C%20MA &origin=Boston%2C%20MA &waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Boston%2C%20MA&destination=Concord%2C%20MA&waypoints=via%3ACharlestown%2CMA%7Cvia%3ALexington%2CMA&key=YOUR_API_KEY'
Influye en las rutas con puntos de parada y de paso
Para cada punto de referencia de la solicitud, la respuesta de instrucciones sobre cómo llegar agrega una entrada al array legs para proporcionar los detalles de las paradas en ese tramo del viaje.
Si deseas influir en la ruta con puntos de referencia sin agregar una parada, agrega el prefijo via: al punto de referencia. Los puntos de referencia con el prefijo via: no agregarán una entrada al array legs, pero trazarán la ruta del viaje a través del punto de referencia.
La siguiente URL modifica la solicitud anterior para que el viaje se enrute por Lexington sin detenerse:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Concord%2C%20MA &origin=Boston%2C%20MA &waypoints=Charlestown%2CMA%7Cvia%3ALexington%2CMA &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Boston%2C%20MA&destination=Concord%2C%20MA&waypoints=Charlestown%2CMA%7Cvia%3ALexington%2CMA&key=YOUR_API_KEY'
El prefijo via: es más eficaz cuando se crean rutas en respuesta a que el usuario arrastra los puntos de referencia en el mapa. Esto permite que el usuario vea cómo se verá la ruta final en tiempo real y ayuda a garantizar que los puntos de referencia se coloquen en ubicaciones a las que pueda acceder la API de Directions (heredada).
La siguiente URL solicita waypoints usando coordenadas de latitud y longitud:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Perth%2C%20AU &origin=Sydney%2C%20AU &waypoints=via%3A-37.81223%2C144.96254%7Cvia%3A-34.92788%2C138.60008 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Sydney%2C%20AU&destination=Perth%2C%20AU&waypoints=via%3A-37.81223%2C144.96254%7Cvia%3A-34.92788%2C138.60008&key=YOUR_API_KEY'
Aquí te mostramos la misma solicitud, con una polilínea codificada:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Perth%2C%20AU &origin=Sydney%2C%20AU &waypoints=via%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Sydney%2C%20AU&destination=Perth%2C%20AU&waypoints=via%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A&key=YOUR_API_KEY'
Ten en cuenta que puedes mezclar libremente un especificador via: con modificadores de ubicación.
Por ejemplo:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Perth%2C%20AU &origin=Sydney%2C%20AU &waypoints=side_of_road%3Avia%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Sydney%2C%20AU&destination=Perth%2C%20AU&waypoints=side_of_road%3Avia%3Aenc%3AlexeF%7B~wsZejrPjtye%40%3A&key=YOUR_API_KEY'
Optimiza tus waypoints
De forma predeterminada, el servicio Directions calcula una ruta a través de los puntos de referencia proporcionados en su respectivo orden. De manera opcional, puedes pasar optimize:true como el primer argumento en el parámetro waypoints para permitir que el servicio Directions optimice la ruta proporcionada reordenando los puntos de referencia de una forma más eficiente. (Esta optimización es una aplicación del problema del viajante). El tiempo de viaje es el factor principal que se optimiza, pero también se pueden considerar otros factores, como la distancia, la cantidad de giros y muchos más, para decidir cuál es la ruta más eficiente. Todos los puntos de referencia deben ser paradas para que el servicio Directions optimice la ruta.
Si le indicas al servicio Directions que optimice el orden de los puntos de referencia, dicho orden se mostrará en el campo waypoint_order en el objeto routes.
El campo waypoint_order
devuelve valores basados en cero.
En el siguiente ejemplo, se calcula un viaje por ruta desde Adelaida, Australia Meridional, hasta cada una de las principales regiones vinícolas de Australia Meridional con la optimización de rutas.
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Adelaide%2C%20SA &origin=Adelaide%2C%20SA &waypoints=optimize%3Atrue%7CBarossa%20Valley%2C%20SA%7CClare%2C%20SA%7CConnawarra%2C%20SA%7CMcLaren%20Vale%2C%20SA &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Adelaide%2C%20SA&destination=Adelaide%2C%20SA&waypoints=optimize%3Atrue%7CBarossa%20Valley%2C%20SA%7CClare%2C%20SA%7CConnawarra%2C%20SA%7CMcLaren%20Vale%2C%20SA&key=YOUR_API_KEY'
La inspección de la ruta calculada indicará que el cálculo usa puntos de referencia en el siguiente orden:
"waypoint_order": [ 3, 2, 0, 1 ]
Restricciones
Pueden calcularse indicaciones de modo que se ajusten a ciertas restricciones. Las restricciones
se indican mediante el uso del parámetro avoid y un argumento para ese
parámetro que indica la restricción que se debe evitar. Se admiten las siguientes restricciones:
avoid=tollsavoid=highwaysavoid=ferries
Es posible solicitar una ruta que evite cualquier combinación de peajes, autopistas y transbordadores pasando ambas restricciones al parámetro avoid. Por ejemplo:
avoid=tolls|highways|ferries.
Nota: La adición de restricciones no impide que se muestren rutas que incluyan la característica restringida, sino que sesga el resultado hacia rutas más favorables.
Sistemas de unidades
Los resultados orientativos contienen campos text dentro de distance que se pueden mostrar al usuario para indicar la distancia de un "paso" en particular de la ruta. De forma predeterminada, este texto usa el sistema de unidades
del país o la región de origen.
Por ejemplo, para una ruta de
"Chicago, IL" a "Toronto, ONT" los resultados se mostrarán en millas, mientras que
para la ruta inversa se mostrarán en kilómetros. Para
anular este sistema de unidades, configura una unidad explícitamente en el
parámetro units de la solicitud con uno de los siguientes
valores:
metricespecifica el uso del sistema métrico. Las distancias textuales se devuelven en kilómetros y metros.imperialespecifica el uso del sistema imperial (inglés). Las distancias textuales se devuelven en millas y pies.
Nota: Esta configuración del sistema de unidades solo afecta el text que se muestra en los campos distance. Los campos distance también contienen values,
que siempre se expresan en metros.
Personalización de regiones
Puedes configurar el servicio Directions para que muestre resultados de una
región específica con el parámetro region. Este parámetro toma un argumento ccTLD (dominio de nivel superior con código de país) de dos caracteres que especifica la preferencia de región. La mayoría de los códigos de ccTLD son idénticos a los códigos ISO 3166-1 alfa-2, con algunas excepciones notables.
Por ejemplo, el ccTLD del Reino Unido es "uk" (.co.uk), mientras que su código ISO 3166-1 es "gb" (técnicamente para la entidad "Reino Unido de Gran Bretaña e Irlanda del Norte"). Consulta los detalles de cobertura de Google Maps Platform para conocer las regiones admitidas.
Puedes utilizar cualquier dominio en el que la aplicación principal de Google Maps haya lanzado rutas en auto.
Por ejemplo, una solicitud de instrucciones sobre cómo llegar de "Toledo" a "Madrid" devuelve resultados adecuados cuando region se establece en es y, luego, "Toledo" se interpreta como la ciudad española:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Madrid &origin=Toledo ®ion=es &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toledo&destination=Madrid®ion=es&key=YOUR_API_KEY'
JSON
{ "geocoded_waypoints": [ { "geocoder_status": "OK", "place_id": "ChIJ8f21C60Lag0R_q11auhbf8Y", "types": ["locality", "political"], }, { "geocoder_status": "OK", "place_id": "ChIJgTwKgJcpQg0RaSKMYcHeNsQ", "types": ["locality", "political"], }, ], "routes": [ { "bounds": { "northeast": { "lat": 40.4165207, "lng": -3.7026134 }, "southwest": { "lat": 39.862808, "lng": -4.029406799999999 }, }, "copyrights": "Map data ©2022 Inst. Geogr. Nacional", "legs": [ { "distance": { "text": "74.3 km", "value": 74327 }, "duration": { "text": "57 mins", "value": 3446 }, "end_address": "Madrid, Spain", "end_location": { "lat": 40.4165207, "lng": -3.705076 }, "start_address": "Toledo, Spain", "start_location": { "lat": 39.862808, "lng": -4.0273727 }, "steps": [ { "distance": { "text": "0.6 km", "value": 615 }, "duration": { "text": "2 mins", "value": 106 }, "end_location": { "lat": 39.8681019, "lng": -4.029378299999999 }, "html_instructions": "Head <b>northwest</b> on <b>Av. de la Reconquista</b> toward <b>C. de la Diputación</b>", "polyline": { "points": "quhrF`rqWCBQJUJm@PQFg@Ni@JeBh@}@XaD|@{@Vk@Ns@RUFoA^u@R_AXwA`@WHMBG@C?E?GAC?IC", }, "start_location": { "lat": 39.862808, "lng": -4.0273727 }, "travel_mode": "DRIVING", }, // Additional steps omitted for brevity ], "traffic_speed_entry": [], "via_waypoint": [], }, ], "overview_polyline": { "points": "quhrF`rqWcHzBaNzDeG~A][?k@lA{Dr@mBR]HmA[WQDWE[g@mAeE... (truncated for brevity)", }, "summary": "A-42", "warnings": [], "waypoint_order": [], }, ], "status": "OK", }
XML
<DirectionsResponse> <status>OK</status> <route> <summary>A-42</summary> <leg> <step> <travel_mode>DRIVING</travel_mode> <start_location> <lat>39.8628080</lat> <lng>-4.0273727</lng> </start_location> <end_location> <lat>39.8681019</lat> <lng>-4.0293783</lng> </end_location> <polyline> <points>quhrF`rqWCBQJUJm@PQFg@Ni@JeBh@}@XaD|@{@Vk@Ns@RUFoA^u@R_AXwA`@WHMBG@C?E?GAC?IC</points> </polyline> <duration> <value>106</value> <text>2 mins</text> </duration> <html_instructions>Head <b>northwest</b> on <b>Av. de la Reconquista</b> toward <b>C. de la Diputación</b></html_instructions> <distance> <value>615</value> <text>0.6 km</text> </distance> </step> <!-- Additional steps omitted for brevity --> <duration> <value>3446</value> <text>57 mins</text> </duration> <distance> <value>74327</value> <text>74.3 km</text> </distance> <start_location> <lat>39.8628080</lat> <lng>-4.0273727</lng> </start_location> <end_location> <lat>40.4165207</lat> <lng>-3.7050760</lng> </end_location> <start_address>Toledo, Spain</start_address> <end_address>Madrid, Spain</end_address> </leg> <copyrights>Map data ©2022 Inst. Geogr. Nacional</copyrights> <overview_polyline> <points>quhrF`rqWcHzBaNzDeG~A][?k@lA{Dr@mBR]HmA[WQDWE[g@mAeE... (truncated for brevity)</points> </overview_polyline> <bounds> <southwest> <lat>39.8628080</lat> <lng>-4.0294068</lng> </southwest> <northeast> <lat>40.4165207</lat> <lng>-3.7026134</lng> </northeast> </bounds> </route> <geocoded_waypoint> <geocoder_status>OK</geocoder_status> <type>locality</type> <type>political</type> <place_id>ChIJ8f21C60Lag0R_q11auhbf8Y</place_id> </geocoded_waypoint> <geocoded_waypoint> <geocoder_status>OK</geocoder_status> <type>locality</type> <type>political</type> <place_id>ChIJgTwKgJcpQg0RaSKMYcHeNsQ</place_id> </geocoded_waypoint> </DirectionsResponse>
Una solicitud de instrucciones sobre cómo llegar de "Toledo" a "Madrid" enviada sin un parámetro region no devuelve resultados, ya que "Toledo" se interpreta como la ciudad de Ohio y no como la de España:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=Madrid &origin=Toledo &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=Toledo&destination=Madrid&key=YOUR_API_KEY'
JSON
{ "geocoded_waypoints": [ { "geocoder_status": "OK", "place_id": "ChIJeU4e_C2HO4gRRcM6RZ_IPHw", "types": ["locality", "political"], }, { "geocoder_status": "OK", "place_id": "ChIJgTwKgJcpQg0RaSKMYcHeNsQ", "types": ["locality", "political"], }, ], "routes": [], "status": "ZERO_RESULTS", }
XML
<DirectionsResponse> <status>ZERO_RESULTS</status> <geocoded_waypoint> <geocoder_status>OK</geocoder_status> <type>locality</type> <type>political</type> <place_id>ChIJeU4e_C2HO4gRRcM6RZ_IPHw</place_id> </geocoded_waypoint> <geocoded_waypoint> <geocoder_status>OK</geocoder_status> <type>locality</type> <type>political</type> <place_id>ChIJgTwKgJcpQg0RaSKMYcHeNsQ</place_id> </geocoded_waypoint> </DirectionsResponse>
Modificadores de ubicación
Puedes usar modificadores de ubicación para indicar cómo los conductores deberían acercarse a una ubicación en particular. Para ello, usa el parámetro side_of_road para especificar qué lado de la ruta usar o especifica un rumbo para indicar la dirección correcta del viaje. Estos modificadores se pueden mezclar libremente con el modificador via: para puntos de referencia intermedios.
Especifica que las rutas deben pasar por un lado particular de la ruta
Cuando especificas un punto de referencia, puedes solicitar que la ruta pase por el lado de la ruta hacia el que se inclina el punto de referencia con el prefijo side_of_road:. Por ejemplo, esta solicitud de instrucciones sobre cómo llegar devolverá una ruta larga para que el vehículo termine en el lado de la ruta hacia el que se sesgó el punto de referencia:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=side_of_road%3A37.7663444%2C-122.4412006 &origin=37.7680296%2C-122.4375126 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=37.7680296%2C-122.4375126&destination=side_of_road%3A37.7663444%2C-122.4412006&key=YOUR_API_KEY'
Cuando usas side_of_road: con polilíneas codificadas, el parámetro se aplica a cada ubicación de la polilínea.
El modificador side_of_road: solo se puede usar con las siguientes restricciones:
- El parámetro
modede viaje esdrivingo no se especifica (drivinges el modo de viaje predeterminado).
Especifica que las rutas deben tener un rumbo particular
Cuando especificas un punto de referencia, puedes solicitar que la ruta pase por él en un rumbo determinado. Este rumbo se especifica
con el prefijo heading=X:, en el que X es un valor entero de grados
entre 0 (inclusive) y 360 (exclusive). Un rumbo de 0 indica el norte, 90 indica el este, y así sucesivamente en el sentido de las manecillas del reloj. Por ejemplo, en esta solicitud de instrucciones sobre cómo llegar, la ruta va hacia el este desde el origen y, luego, hace un giro en U:
URL
https://maps.googleapis.com/maps/api/directions/json ?destination=37.773245%2C-122.469502 &origin=heading%3D90%3A37.773279%2C-122.468780 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/directions/json?origin=heading%3D90%3A37.773279%2C-122.468780&destination=37.773245%2C-122.469502&key=YOUR_API_KEY'
El modificador heading=X: solo se puede usar con las siguientes restricciones:
- El parámetro
modede viaje esdriving,bicyclingo no se especifica (drivinges el modo de viaje predeterminado). - El modificador
side_of_roadno se especifica para la misma ubicación. - La ubicación se especifica con un valor de latitud y longitud. No puedes usar
headingcon direcciones, IDs de lugar ni polilíneas codificadas.