Neste guia, descrevemos como migrar apps que usam a API Directions ou a API Distance Matrix para a API Routes. Para mais detalhes sobre a API Routes, consulte a visão geral do produto.
Práticas recomendadas de faturamento para migração
Esta orientação se aplica se o uso da API for alto o suficiente para passar para o segundo nível de preços. Ao migrar para uma versão mais recente de uma API, você também será cobrado por uma SKU diferente. Para evitar o aumento de custos durante o mês da transição, recomendamos mudar para as novas APIs em produção o mais próximo possível do início do mês. Isso garante que você alcance os níveis de preços mensais mais econômicos durante o mês da migração. Para informações sobre os níveis de preços, consulte a página de preços e as perguntas frequentes sobre preços.
Atualizar os endpoints de API REST
Atualize seu código para usar os novos endpoints da API Routes.
Da API Directions
| API Directions | https://maps.googleapis.com/maps/api/directions/outputFormat?parameters |
| API Routes | https://routes.googleapis.com/directions/v2:computeRoutes |
Da API Distance Matrix
| API Distance Matrix | https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters |
| API Routes | https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix |
Converter parâmetros de URL para usar um corpo de solicitação HTTPS
Com as APIs Directions e API Distance Matrix, você transmite propriedades de configuração como parâmetros de URL para uma solicitação HTTP GET. Por exemplo, para a API Directions:
https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
Com a API Routes, você transmite parâmetros em um corpo de solicitação ou em cabeçalhos como parte de uma solicitação HTTP POST. Para exemplos, veja:
Converter waypoints codificados por polilinhas em waypoints de local
A especificação de waypoints como polilinhas codificadas está disponível na API Directions (legada) para acomodar um grande número de waypoints no limite de 16.384 caracteres do URL. Esse recurso não é necessário na API Routes porque os waypoints podem ser transmitidos no corpo da solicitação REST ou gRPC como coordenadas de latitude/longitude. Para ver exemplos, consulte o exemplo de HTTP no documento Calcular uma matriz de rotas ou Definir um ponto de passagem intermediário no documento Especificar pontos de passagem intermediários.
Converter parâmetros
As tabelas a seguir listam os parâmetros na API Directions e na API Distance Matrix que foram renomeados ou modificados, ou que não são compatíveis com a versão em GA. Atualize seu código se estiver usando algum desses parâmetros.
Conversões de parâmetros de solicitação
| Parâmetro de rotas ou matriz de distância | Parâmetro da API Routes | Observações |
|---|---|---|
alternatives |
computeAlternativeRoutes |
|
arrival_time |
arrivalTime |
Disponível apenas no modo TRANSIT e não ao mesmo
tempo que departureTime. |
avoid |
routeModifiers |
|
departure_time |
departureTime |
Não pode ser usado ao mesmo tempo que arrivalTime. |
language |
languageCode |
Compatível apenas com rotas do Compute. |
mode |
travelMode |
Transmitido no corpo da solicitação JSON |
region |
regionCode |
|
traffic_model |
trafficModel |
Saiba mais |
transit_mode |
"travelMode": "TRANSIT" |
Na API Directions (legada), em um trajeto de transporte público, cada segmento de uma viagem com o mesmo modo de viagem (por exemplo, a pé ou transporte público) é considerado uma etapa, e as rotas individuais para esse modo de viagem estão em subetapas. Por outro lado, na API Routes, as etapas são sempre uma instrução de navegação em todos os tipos de viagem. Portanto, cada instrução de navegação é uma etapa. Para várias etapas em um modo de transporte, a API Routes fornece metadados que contêm um resumo das etapas desse modo de transporte em "stepsOverview". Para solicitar esses metadados, use a máscara de campo "routes.legs.stepsOverview". Saiba mais. |
transit_routing_preference |
transitRoutingPreference |
Saiba mais |
units |
units |
Saiba mais |
waypoints |
intermediates |
Remoção do suporte a polilinhas codificadas. |
optimize=true para waypoints |
"optimizeWaypointOrder": "true" |
Saiba mais |
Conversões de parâmetros de resposta
| Parâmetro de rotas ou matriz de distância | Parâmetro da API Routes | Observações |
|---|---|---|
copyrights |
Não incluído na resposta. Você precisa incluir a seguinte declaração ao exibir os resultados para os usuários:
Exemplo:
|
|
distance |
distanceMeters |
A distância só está disponível em metros. |
duration_in_traffic |
duration |
Removido na API Routes, use duration. |
status |
Indisponível. Use os códigos de resposta HTTP para erros informados pela API. Consulte Tratar erros de solicitação para mais informações. | |
geocoded_waypoints |
geocoding_results |
Compatível apenas com rotas do Compute. Contém informações de resposta de geocodificação apenas para waypoints especificados como endereços. |
bounds |
viewport |
|
legs.end_address |
Indisponível. | Use IDs de lugar em vez de coordenadas para rotas de alta precisão. Os IDs de lugar contêm dados que ajustam o trajeto para os pontos de acesso corretos.
|
legs.start_address |
Indisponível. | |
overview_polyline |
polyline | |
summary |
description |
|
waypoint_order |
optimizedIntermediateWaypointIndex |