Миграция с API Directions (устаревшая версия) или API матрицы расстояний (устаревшая версия)

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

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

Рекомендации по выставлению счетов при миграции

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

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

Обновите свой код, чтобы использовать новые конечные точки API маршрутизации.

Из API маршрутов

API для построения маршрутов https://maps.googleapis.com/maps/api/directions/ outputFormat ? parameters
API маршрутов https://routes.googleapis.com/directions/v2:computeRoutes

Из API матрицы расстояний

API матрицы расстояний https://maps.googleapis.com/maps/api/distancematrix/ outputFormat ? parameters
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

С помощью API маршрутов вы передаете параметры в теле запроса или в заголовках в рамках HTTP POST запроса. Примеры см.:

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

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

Преобразовать параметры

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

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

Параметр матрицы направлений или расстояний Параметр API маршрутов Примечания
alternatives computeAlternativeRoutes
arrival_time arrivalTime Доступно только в режиме TRANSIT и не одновременно с departureTime .
avoid routeModifiers
departure_time departureTime Не может использоваться одновременно с arrivalTime .
language languageCode Поддерживается только для вычислительных маршрутов.
mode travelMode

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

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

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

Параметр матрицы направлений или расстояний Параметр API маршрутов Примечания
copyrights

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

Powered by Google, © YEAR Google

Например:

Powered by Google, ©2022 Google

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

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

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