¿Por qué migrar a la API de Routes?

Desarrolladores del Espacio Económico Europeo (EEE)

La API de Routes ofrece un rendimiento mejorado para calcular instrucciones sobre cómo llegar, distancia y tiempo de 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 compatibles con versiones anteriores de 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

API de Routes Compute Route Matrix
  • Máximo de 625 elementos, a menos que especifiques TRAFFIC_AWARE_OPTIMAL.
  • Se permite un máximo de 100 elementos con TRAFFIC_AWARE_OPTIMAL. Consulta Preferencias de enrutamiento mejoradas.
  • Se pueden usar hasta 50 puntos de referencia (orígenes y destinos) con un ID de lugar.
API de Distance Matrix
  • Máximo de 25 orígenes o 25 destinos por solicitud.
  • Máximo de 100 elementos (cantidad de orígenes × cantidad de destinos) por solicitud del servidor.

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 elegir entre la calidad de los datos y el tiempo de respuesta.

Mejoras en el enrutamiento

La función de ruta de procesamiento ofrece estas mejoras de enrutamiento:

  • Información sobre peajes, además de la distancia y la ETA
  • Rutas para vehículos de 2 ruedas.
  • Califica tus paradas para garantizar la seguridad.
  • Mayor precisión en la ETA, ya que se establecen 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 tiempo real, 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 es equivalente al parámetro de configuración departure_time en la API de Directions y la API de Distance Matrix.
Esta preferencia es equivalente al modo que usan maps.google.com y la app de Google Maps para dispositivos móviles.

Comparación del 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 estableció 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 agregó la API de Routes. Proporciona una latencia ligeramente mayor que TRAFFIC_UNAWARE con un pequeño costo en la calidad de la ETA.

Tiene una latencia mucho menor que TRAFFIC_AWARE_OPTIMAL.

Se aplican datos de tráfico en vivo integrales y de alta calidad TRAFFIC_AWARE_OPTIMAL Conjunto de propiedades departure_time

Equivale 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 Google API Console.
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 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 los siguientes vínculos:
- Cómo calcular una ruta
- Cómo calcular 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
Es una ETA independiente del tiempo y que no tiene en cuenta el tráfico.

Se establece con TRAFFIC_UNAWARE.

  • Es la ETA que se incluye en la propiedad de respuesta duration.
  • Las propiedades de respuesta duration y staticDuration contienen el mismo valor.

Corresponde a que departure_time no se configuró en la solicitud.

  • Es la ETA que se incluye en la propiedad de respuesta duration.
  • No se devuelve la propiedad de respuesta duration_in_traffic.
Hora de llegada estimada que tiene en cuenta el tráfico en tiempo real.

Se establece con TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL.

  • La ETA que tiene en cuenta el tráfico en tiempo real se incluye en la propiedad de respuesta duration.
  • La propiedad de respuesta staticDuration contiene la duración del viaje a través de la ruta sin tener en cuenta las condiciones de tráfico.
  • Ya no se devuelve la propiedad duration_in_traffic.

Se configura con departure_time en la solicitud.

  • La ETA que tiene en cuenta el tráfico en tiempo real se incluye en la propiedad de respuesta duration_in_traffic.

Puntos de referencia de polilínea

Ya no es necesario que conviertas tus coordenadas de latitud y longitud en waypoints de polilínea con este servicio, 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.