Por que migrar para a API Routes?

A API Routes oferece um desempenho melhor no cálculo de rotas, distância e tempo de viagem. Com isso, vale a pena substituir os apps que atualmente usam as APIs Directions e Distance Matrix. A maioria das funcionalidades da API Routes é compatível com versões anteriores da API Directions e da API Distance Matrix.

Use este guia para entender as principais diferenças na API Routes em comparação com os produtos que ela substitui e como lidar com as mudanças necessárias. Para mais detalhes sobre outros recursos da API Routes, consulte a visão geral do produto.

Principais melhorias

Esta seção aborda algumas das melhorias que você pode esperar ao usar a API Routes nos seus apps.

Limites de solicitação aumentados

API Routes
  • Máximo de 625 elementos, a menos que você especifique TRAFFIC_AWARE_OPTIMAL.
  • Máximo de 100 elementos com TRAFFIC_AWARE_OPTIMAL. Consulte Preferências de roteamento aprimoradas.
  • Máximo de 50 waypoints (origens + destinos) usando um ID de lugar.
API Distance Matrix
  • Máximo de 25 origens ou 25 destinos por solicitação.
  • Máximo de 100 elementos (número de origens × número de destinos) por solicitação do lado do servidor.

Respostas de solicitação mais rápidas

O recurso de matriz de rota de computação oferece as seguintes melhorias de latência:

  • Receber elementos de streaming da resposta antes do cálculo da matriz inteira.
  • Use máscaras de campo para personalizar os detalhes da resposta, solicitando apenas os dados necessários, uma prática recomendada que também ajuda a reduzir custos.
  • Cálculos de rota aprimorados para o tráfego, para que você possa comparar a qualidade dos dados e o tempo de resposta.

Melhorias no roteamento

O recurso Compute Routes oferece estas melhorias de roteamento:

  • Informações sobre pedágios, além de distância e HEC.
  • Trajetos de veículos de duas rodas.
  • Qualifique os waypoints das paradas por motivos de segurança.
  • Maior precisão do HEC, definindo a direção da viagem e o lado da via para waypoints.

Solicite apenas os dados necessários

Agora especifique quais campos retornar, reduzindo o tempo de processamento e as cobranças de faturamento.

API Routes Suas solicitações precisam usar uma máscara de campo para especificar quais campos você quer retornar na resposta. O mascaramento de campo garante que você não solicite dados desnecessários, o que evita tempo de processamento desnecessário e cobranças de faturamento.
Para mais informações, consulte Escolher os campos a serem retornados.
API Directions
API Distance Matrix
Retorna uma lista padrão de campos, mesmo que o app não precise deles estritamente. Isso pode resultar em tempo de processamento e cobranças de faturamento desnecessários.

Cálculos de rota aprimorados para o tráfego

A API Routes oferece suporte a três preferências de roteamento que podem ser usadas para equilibrar a latência de resposta e a qualidade de dados ao solicitar informações de tráfego.

Para mais informações, consulte Configurar qualidade x latência.

TRAFFIC_UNAWARE
(padrão)
Usa dados médios de tráfego independentes, e não dados de tráfego em tempo real, para calcular a rota, resultando na menor latência de resposta. Essa configuração é equivalente a quando o tráfego não é usado na API Directions e na API Distance Matrix.
TRAFFIC_AWARE
(novo)
Qualidade do tráfego em tempo real com desempenho otimizado para menor latência. Diferente de TRAFFIC_AWARE_OPTIMAL, essa configuração aplica otimizações para reduzir significativamente a latência. Essa configuração também é nova para a API Routes, sem equivalente na API Directions ou na API Distance Matrix.
TRAFFIC_AWARE_OPTIMAL Dados de tráfego abrangentes e de alta qualidade. Essa configuração produz a latência mais alta e é equivalente à configuração departure_time na API Directions e na API Distance Matrix.
Essa preferência é equivalente ao modo usado pelo maps.google.com e pelo app Google Maps para dispositivos móveis.

Comparação da computação de rota

A tabela a seguir compara as opções de trajeto entre a API Routes, a API Directions e a API Distance Matrix.

Opção de trânsito API Routes API Directions
API Distance Matrix
Latência
Sem trânsito em tempo real TRAFFIC_UNAWARE departure_time propriedade não definida Latência mais rápida dos três modos.
Condições de trânsito em tempo real aplicadas TRAFFIC_AWARE Não há equivalente

Novo modo adicionado pela API Routes. Ele fornece uma latência um pouco maior do que TRAFFIC_UNAWARE com um pequeno custo de qualidade de ETA.

Ele tem uma latência muito menor que TRAFFIC_AWARE_OPTIMAL.

Aplicação de dados abrangentes de tráfego em tempo real e de alta qualidade TRAFFIC_AWARE_OPTIMAL A propriedade departure_time foi definida

Equivalente ao modo usado pelo maps.google.com e pelo app Google Maps para dispositivos móveis.

Na Compute Route Matrix, o número de elementos em uma solicitação (número de origens × número de destinos) não pode exceder 100.

Principais diferenças

Esta seção aborda as principais diferenças entre a API Routes e os serviços que ela substitui, além de maneiras de lidar com essas diferenças ao migrar desses serviços nos seus apps existentes.

Chamar um serviço em vez de dois

API Routes Ative apenas um serviço no Console de APIs para que seu app use o Compute Routes e o Compute Route Matrix.
Para mais informações, consulte Configurar no Console de APIs do Google.
API Directions
API Distance Matrix
Ative dois serviços: API Directions e API Distance Matrix como serviços separados no Console de APIs.

Usa solicitações HTTPS POST

API Routes Transmita parâmetros no corpo ou nos cabeçalhos da solicitação como parte de uma solicitação HTTP POST.
Para exemplos, consulte:
- Calcular uma rota
- Calcular uma matriz de rotas
API Directions
API Distance Matrix
Transmita parâmetros de URL usando uma solicitação HTTP GET.

Diferenças nas respostas de ETAs

A API Routes retorna o HEC e usa a propriedade de resposta duration de maneira diferente dos serviços da API Directions e API Distance Matrix, como mostrado na tabela abaixo.

Tipo de HEC API Routes API Directions
API Distance Matrix
HEC independente do horário e sem reconhecimento de tráfego.

Defina usando TRAFFIC_UNAWARE.

  • O HEC contido na propriedade de resposta duration.
  • As propriedades de resposta duration e staticDuration contêm o mesmo valor.

Corresponde a departure_time não definido na solicitação.

  • O HEC contido na propriedade de resposta duration.
  • A propriedade de resposta duration_in_traffic não é retornada.
Um HEC que considera o tráfego em tempo real.

Defina usando TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL.

  • O ETA considerando o tráfego em tempo real está contido na propriedade de resposta duration.
  • A propriedade de resposta staticDuration contém a duração do trajeto sem levar em consideração as condições de trânsito.
  • A propriedade duration_in_traffic não é mais retornada.

Defina usando departure_time na solicitação.

  • O ETA considerando o tráfego em tempo real está contido na propriedade de resposta duration_in_traffic.

waypoints da polilinha

Você não precisa mais converter suas coordenadas de latitude/longitude em waypoints de polilinha com esse serviço, que é compatível com um corpo de solicitação POST e, portanto, não é mais afetado pelos limites de strings de URL. Alguns usuários da API Distance Matrix resolveram o problema de limites de solicitação convertendo pontos de latitude/longitude em waypoints nas polilinhas.

Endereços formatados (geocodificação inversa)

A API Routes não fornece endereços formatados na resposta. Para conseguir endereços formatados, use a API Geocoding, que foi criada para esse caso de uso e oferece resultados de maior qualidade.

Meios de transporte disponíveis

Assim como na API Directions, a API Routes usa DRIVE como modo padrão quando uma solicitação de trajeto não especifica um meio de transporte. No entanto, quando uma solicitação especifica um meio de transporte para um trajeto, a API Routes não retorna uma matriz de meios de transporte disponíveis como opções alternativas para a solicitação. Caso seu caso de uso dependa desse recurso, registre um problema descrevendo como você usa o recurso para que possamos fazer um acompanhamento.

XML como formato de resposta

A API Routes não fornece XML como formato de resposta. Você pode encontrar diversos conversores de JSON para XML on-line que podem ser adequados aos seus objetivos.