Переход с устаревшей версии Directions API или Distance Matrix API

Разработчики из Европейской экономической зоны (ЕЭЗ)

В этом руководстве описывается, как перенести приложения, использующие Directions API или Distance Matrix API, на Routes API. Подробнее о Routes API…

Рекомендации по переносу платежных аккаунтов

Эти рекомендации применимы, если вы используете API достаточно активно, чтобы перейти на второй уровень цен. При переходе на более новую версию API вы также будете платить за другой SKU. Чтобы избежать дополнительных расходов в месяц перехода, рекомендуем переключиться на новые API как можно ближе к началу месяца. Это позволит вам перейти на наиболее выгодный тарифный план в месяц переноса. Информацию об уровнях цен можно найти на странице цен и в часто задаваемых вопросах о ценах.

Обновите конечные точки REST API

Обновите код, чтобы использовать новые конечные точки Routes API.

Из Directions API

Directions API https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
Routes API https://routes.googleapis.com/directions/v2:computeRoutes

Из Distance Matrix API

Distance Matrix API https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
Routes API https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix

Как преобразовать параметры URL для использования в теле запроса HTTPS

В Directions API и Distance Matrix API свойства конфигурации передаются в виде параметров URL в запросе HTTP GET. Например, для Directions API:

https://maps.googleapis.com/maps/api/directions/outputFormat?parameters

В Routes API параметры передаются в теле запроса или в заголовках в рамках запроса HTTP POST. Примеры:

Преобразование путевых точек, закодированных в виде ломаной линии, в путевые точки местоположения

Указывать путевые точки в виде закодированных ломаных линий можно в Directions API (устаревшая версия), чтобы уместить большое количество путевых точек в URL, длина которого не должна превышать 16 384 символа. В Routes API эта функция не нужна, поскольку путевые точки можно передавать в теле запроса REST или gRPC в виде координат широты и долготы. Примеры можно найти в разделе Пример HTTP-запроса документа Как рассчитать матрицу маршрутов или в разделе Как задать промежуточную путевую точку документа Как указать промежуточные путевые точки.

Преобразование параметров

В таблицах ниже перечислены параметры Directions API и Distance Matrix API, которые были переименованы или изменены, а также параметры, которые не поддерживаются в общедоступной версии. Если вы используете какие-либо из этих параметров, обновите код.

Конверсии на основе параметров запроса

Параметр сервиса Directions или Distance Matrix Параметр Routes API Примечания
alternatives computeAlternativeRoutes
arrival_time arrivalTime Доступно только в режиме TRANSIT и не может использоваться одновременно с departureTime.
avoid routeModifiers
departure_time departureTime Нельзя использовать одновременно с arrivalTime.
language languageCode Поддерживается только для Compute Routes.
mode travelMode

Добавлена поддержка TWO_WHEELER и TRANSIT.

region regionCode
traffic_model trafficModel Подробнее…
transit_mode "travelMode": "TRANSIT" В устаревшей версии Directions API каждый сегмент маршрута с одним и тем же способом передвижения (например, пешком или на общественном транспорте) считается одним шагом, а отдельные указания для этого способа передвижения – подшагами. В Routes API шаги всегда представляют собой одну инструкцию по навигации для всех видов транспорта. Каждая инструкция по навигации – это шаг. Если в маршруте несколько этапов с одним и тем же способом передвижения, Routes API предоставляет метаданные, содержащие сводку по этим этапам, в поле `stepsOverview`. Чтобы запросить эти метаданные, используйте маску поля `routes.legs.stepsOverview`. Подробнее…
transit_routing_preference transitRoutingPreference Подробнее…
units units Подробнее…
waypoints intermediates Удалена поддержка закодированных ломаных линий.
optimize=true для путевых точек "optimizeWaypointOrder": "true" Подробнее…

Конверсии на основе параметров ответа

Параметр сервиса Directions или Distance Matrix Параметр Routes API Примечания
copyrights

Не включено в ответ. При показе результатов поиска пользователям необходимо включить следующее заявление:

Powered by Google, ©YEAR Google

Пример:

Powered by Google, ©2022 Google

distance distanceMeters Расстояние можно указать только в метрах.
duration_in_traffic duration Удалено в Routes API. Используйте duration.
status Недоступно. Используйте коды ответов HTTP для ошибок, сообщаемых API. Подробнее о том, как обрабатывать ошибки запросов…
geocoded_waypoints geocoding_results Поддерживается только для Compute Routes. Содержит информацию о геокодировании только для путевых точек, указанных в виде адресов.
bounds viewport
legs.end_address Недоступно.

Для точной прокладки маршрутов используйте идентификаторы мест вместо координат. Идентификаторы мест содержат данные, которые привязывают маршрут к правильным точкам доступа.

  • Если вы начинаете с адреса: используйте автозаполнение мест или Geocoding API, чтобы получить идентификатор места.
  • Если вы начинаете с координат, попробуйте использовать поиск пунктов назначения, чтобы указать более точное местоположение. Простое получение адреса по координатам может быть сложным и привести к неправильной привязке. Routes API не преобразует координаты в адреса.
legs.start_address Недоступно.
overview_polyline ломаная линия
summary description
waypoint_order optimizedIntermediateWaypointIndex