La API de Routes ofrece un rendimiento mejorado para calcular instrucciones sobre cómo llegar, distancia y duración del viaje, lo que hace que valga la pena reemplazar las apps que usan la API de Directions y la API de Distance Matrix. La mayoría de las funciones de la API de Routes son retrocompatibles con la API de Directions y la API de Distance Matrix.
Usa esta guía para comprender las diferencias clave en la API de Routes en comparación con los productos que reemplaza, además de cómo controlar los cambios necesarios. Para obtener más detalles sobre otras funciones de la API de Routes, consulta la descripción general del producto.
Mejoras clave
En esta sección, se describen algunas de las mejoras que puedes esperar cuando uses la API de Routes en tus apps.
Aumento de los límites de solicitudes
| Compute Route Matrix de la API de Routes |
|
| API de Distance Matrix |
|
Respuestas más rápidas a las solicitudes
La función Compute Route Matrix ofrece las siguientes mejoras en la latencia:
- Recibir elementos de transmisión de la respuesta antes de que se haya calculado toda la matriz
- Usa máscaras de campo para personalizar los detalles de la respuesta y solicita solo los datos que necesitas. Esta práctica recomendada también ayuda a reducir los costos.
- Cálculos de rutas mejorados para el tráfico, de modo que puedas encontrar un equilibrio entre la calidad de los datos y el tiempo de respuesta.
Mejoras en el enrutamiento
La función de ruta de cálculo ofrece estas mejoras de enrutamiento:
- Información sobre peajes, además de la distancia y la hora estimada de llegada
- Rutas para vehículos de 2 ruedas
- Califica tus puntos de referencia de parada para garantizar la seguridad.
- Mayor precisión en la ETA estableciendo la dirección de viaje y el lado de la ruta para los puntos de referencia.
Solicita solo los datos que necesitas
Ahora puedes especificar qué campos deseas que se muestren, lo que reduce el tiempo de procesamiento y los cargos de facturación.
| API de Routes Compute Routes Compute Route Matrix |
Tus solicitudes deben usar una máscara de campo para especificar qué campos deseas que se devuelvan en la respuesta. El enmascaramiento de campos garantiza que no solicites
datos innecesarios, lo que evita tiempos de procesamiento y cargos de facturación
adicionales.
Para obtener más información, consulta Cómo elegir los campos que se devolverán. |
| API de Directions API de Distance Matrix |
Devuelve una lista predeterminada de campos, incluso si tu app no los necesita estrictamente. Esto puede generar cargos de facturación y tiempo de procesamiento innecesarios. |
Cálculos de rutas mejorados para el tráfico
La API de Routes admite tres preferencias de enrutamiento que puedes usar para equilibrar la latencia de respuesta y la calidad de los datos cuando solicitas información del tráfico.
Para obtener más información, consulta Configura la calidad en comparación con la latencia.
TRAFFIC_UNAWARE (predeterminado) |
Utiliza datos de tráfico promedio independientes del tiempo, no datos de tráfico en vivo, para calcular la ruta, lo que genera la latencia de respuesta más baja. Este parámetro de configuración equivale a cuando no se usa el tráfico en la API de Directions y en la API de Distance Matrix. |
TRAFFIC_AWARE (nuevo) |
Calidad del tráfico en vivo optimizada para el rendimiento y latencia reducida. A diferencia de TRAFFIC_AWARE_OPTIMAL, este parámetro de configuración aplica optimizaciones para reducir significativamente la latencia.
Este parámetro de configuración también es nuevo para la API de Routes y no tiene un equivalente en la API de Directions ni en la API de Distance Matrix.
|
TRAFFIC_AWARE_OPTIMAL |
Datos de tráfico integrales y de alta calidad Este parámetro de configuración produce
la latencia más alta y equivale al parámetro de configuración departure_time
en la API de Directions y
la API de Distance Matrix. Esta preferencia equivale al modo que usan maps.google.com y la app de Google Maps para dispositivos móviles. |
Comparación de cálculo de rutas
En la siguiente tabla, se comparan las opciones de enrutamiento entre la API de Routes y los servicios de la API de Directions y la API de Distance Matrix.
| Opción de tráfico | API de Routes | API de Directions API de Distance Matrix |
Latencia |
|---|---|---|---|
| Sin tráfico en tiempo real | TRAFFIC_UNAWARE |
No se configuró la propiedad departure_time |
Es la latencia más rápida de los tres modos. |
| Se aplicaron las condiciones del tráfico en vivo | TRAFFIC_AWARE |
Sin equivalente | Es un modo nuevo que agrega la API de Routes. Proporciona una latencia ligeramente mayor que Tiene una latencia mucho menor que |
| Se aplican datos de tráfico en vivo completos y de alta calidad | TRAFFIC_AWARE_OPTIMAL |
Conjunto de propiedades departure_time |
Equivalente al modo que usan maps.google.com y la app de Google Maps para dispositivos móviles. Para Compute Route Matrix, la cantidad de elementos en una solicitud (cantidad de orígenes × cantidad de destinos) no puede superar los 100. |
Diferencias clave
En esta sección, se explican las diferencias clave entre la API de Routes y los servicios que reemplaza, junto con las formas en que puedes abordar estas diferencias cuando migres desde estos servicios en tus apps existentes.
Llama a un servicio en lugar de dos
| API de Routes | Habilita solo un servicio en la consola de APIs para que tu app use Compute Routes y Compute Route Matrix.
Para obtener más información, consulta Configuración en la Consola de APIs de Google. |
| API de Directions API de Distance Matrix |
Habilita dos servicios: la API de Directions y la API de Distance Matrix como servicios independientes en la consola de APIs. |
Usa solicitudes de HTTPS POST
| API de Routes | Pasa parámetros en el cuerpo de la solicitud o en los encabezados como parte de una solicitud HTTP POST. Para ver ejemplos, consulta lo siguiente: - Calcula una ruta - Calcula una matriz de rutas |
| API de Directions API de Distance Matrix |
Pasa parámetros de URL con una solicitud HTTP GET. |
Diferencias en la respuesta de ETA
La API de Routes devuelve la ETA y usa la propiedad de respuesta duration de manera diferente a los servicios de la API de Directions y la API de Distance Matrix, como se muestra en la siguiente tabla.
| Tipo de ETA | API de Routes | API de Directions API de Distance Matrix |
|---|---|---|
| Hora de llegada estimada independiente del tiempo y sin información de tráfico. | Se establece con
|
Corresponde a que
|
| Hora de llegada estimada que tiene en cuenta el tráfico en tiempo real. | Se establece con
|
Se establece con
|
Puntos de referencia de polilínea
Con este servicio, ya no necesitas convertir tus coordenadas de latitud y longitud en puntos de referencia de polilínea, ya que admite un cuerpo de solicitud POST y, por lo tanto, ya no se ve afectado por los límites de cadenas de URL. Algunos usuarios de la API de Distance Matrix solucionaron el problema de los límites de solicitudes convirtiendo los puntos de latitud y longitud en puntos de referencia de polilíneas.
Direcciones con formato (geocodificación inversa)
La API de Routes no proporciona direcciones con formato en la respuesta. Para obtener direcciones con formato, usa la API de Geocoding, que se creó para este caso de uso y proporciona resultados de mayor calidad.
Medios de transporte disponibles
Al igual que con la API de Directions, la API de Routes usa DRIVE como el modo predeterminado cuando una solicitud de ruta no especifica un modo de viaje. Sin embargo, cuando una solicitud especifica un medio de transporte para una ruta, la API de Routes no devuelve un array de medios de transporte disponibles como opciones alternativas para la solicitud. Si tu caso de uso depende de esta función, presenta un problema en el que se describa cómo la usas para que podamos hacer un seguimiento.
XML como formato de respuesta
La API de Routes no proporciona XML como formato de respuesta. Puedes encontrar varios convertidores de JSON a XML en línea que deberían adaptarse a tus necesidades.