Por que migrar para a API Routes?

A API Routes melhora a performance do cálculo de rotas, distância e tempo de viagem. Por isso, vale a pena substituir os apps que usam as APIs Directions e Distance Matrix. A maioria das funcionalidades da API Routes é compatível com versões anteriores das APIs Directions e 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 maiores de solicitação

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 a solicitações 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 de toda a matriz.
  • 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 seu custo.
  • Cálculos de rotas aprimorados para trânsito para que você possa escolher a qualidade dos dados e o tempo de resposta.

Melhorias no roteamento

O recurso Compute Route oferece estas melhorias de roteamento:

  • Informações de pedágio, além da distância e do HEC.
  • Trajetos de veículos com duas rodas.
  • Qualifique seus waypoints com parada para fins de segurança.
  • Maior precisão do HEC definindo a direção do deslocamento e o lado da via para waypoints.

Solicitar apenas os dados necessários

Agora você especifica quais campos devem ser retornados, 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 e cobranças de faturamento desnecessários.
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 rotas aprimorados para tráfego

A API Routes oferece suporte a três preferências de roteamento que podem ser usadas para equilibrar a latência da resposta e a qualidade dos 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ânsito independentes do tempo, não dados de trânsito em tempo real, para calcular o trajeto, resultando em uma 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 de tráfego em tempo real com desempenho otimizado para latência reduzida. Ao contrário 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ânsito abrangentes e de alta qualidade. Essa configuração produz a maior latência e é equivalente à configuração departure_time nas APIs Directions e Distance Matrix.
Essa preferência é equivalente ao modo usado pelo site maps.google.com e pelo app Google Maps para dispositivos móveis.

Comparação do cálculo de rotas

A tabela a seguir compara as opções de trajetos 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 A propriedade departure_time não foi 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 HEC.

Ele tem uma latência muito menor do que TRAFFIC_AWARE_OPTIMAL.

Aplicados dados abrangentes de trânsito em tempo real de alta qualidade TRAFFIC_AWARE_OPTIMAL Propriedade departure_time definida

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

No 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 a Compute Route Matrix.
Para mais informações, consulte Configuração no Console de APIs do Google.
API Directions
API Distance Matrix
Ative dois serviços: a API Directions e a API Distance Matrix como serviços separados no Console de APIs.

Usa solicitações HTTPS POST

API Routes Transmita parâmetros no corpo da solicitação ou nos cabeçalhos 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 de resposta do HEC

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

Tipo de HEC API Routes API Directions
API Distance Matrix
HEC independente de tempo e sem conhecimento do trânsito.

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 que não está sendo definido na solicitação.

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

Defina usando TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL.

  • O HEC que considera o trânsito em tempo real está incluído na propriedade de resposta duration.
  • A propriedade de resposta staticDuration contém a duração dos percursos no trajeto sem considerar as condições de trânsito.
  • A propriedade duration_in_traffic não é mais retornada.

Definido usando departure_time na solicitação.

  • O HEC que considera o trânsito em tempo real está incluído na propriedade de resposta duration_in_traffic.

Pontos de referência de polilinha

Não é mais necessário converter as 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 do URL. Alguns usuários da API Distance Matrix resolveram o problema dos limites de solicitação convertendo pontos de latitude/longitude em waypoints de polilinha.

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 a 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. Se o caso de uso depende desse recurso, registre um problema descrevendo como ele é usado para que possamos fazer o acompanhamento.

XML como formato de resposta

A API Routes não fornece XML como formato de resposta. Há vários conversores de JSON para XML on-line adequados aos seus objetivos.