Зачем переходить на Routes API?

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

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

Ключевые улучшения

В этом разделе описаны некоторые улучшения, которые можно ожидать при использовании Routes API в ваших приложениях.

Увеличены лимиты запросов

API маршрутов
  • Максимум 625 элементов, если вы не укажете TRAFFIC_AWARE_OPTIMAL .
  • Максимум 100 элементов с TRAFFIC_AWARE_OPTIMAL . См. раздел Расширенные настройки маршрутизации .
  • Максимум 50 путевых точек (исходные + пункты назначения) с использованием идентификатора места.
API матрицы расстояний
  • Максимум 25 пунктов отправления или 25 пунктов назначения на один запрос.
  • Максимум 100 элементов (количество источников × количество пунктов назначения) на серверный запрос.

Более быстрые ответы на запросы

Функция вычисления матрицы маршрутов обеспечивает следующие улучшения задержки:

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

Улучшения маршрутизации

Функция вычисления маршрута предлагает следующие улучшения маршрутизации:

  • Информация о платных дорогах, а также расстояние и расчетное время прибытия.
  • Маршруты для двухколесного транспорта .
  • Оцените свои точки остановки в пути с точки зрения безопасности.
  • Повышена точность расчетного прибытия за счет установки направления движения и стороны дороги для путевых точек.

Запрашивайте только те данные, которые вам нужны

Теперь вы указываете, какие поля возвращать, что сокращает время обработки и расходы на выставление счетов.

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

Расширенные вычисления маршрутов для трафика

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

Дополнительные сведения см. в разделе Настройка качества и задержки .

TRAFFIC_UNAWARE
(по умолчанию)
Для расчета маршрута используются средние, не зависящие от времени данные о трафике, а не текущие данные о трафике, что приводит к минимальной задержке ответа. Этот параметр эквивалентен ситуации, когда трафик не используется в API направлений и API матрицы расстояний.
TRAFFIC_AWARE
(новый)
Оптимизированное по производительности качество живого трафика для снижения задержек. В отличие от TRAFFIC_AWARE_OPTIMAL этот параметр применяет оптимизацию, позволяющую значительно сократить задержку. Этот параметр также является новым для API маршрутов и не имеет эквивалента в API направлений или API матрицы расстояний.
TRAFFIC_AWARE_OPTIMAL Высококачественные и полные данные о трафике. Этот параметр обеспечивает самую высокую задержку и эквивалентен параметру departure_time в Directions API и Distance Matrix API.
Этот параметр эквивалентен режиму, используемому на сайте maps.google.com и в мобильном приложении Google Maps.

Сравнение расчета маршрута

В следующей таблице сравниваются параметры маршрутизации между API маршрутов , API маршрутов и службами API матрицы расстояний .

Вариант трафика API маршрутов API маршрутов
API матрицы расстояний
Задержка
Нет трафика в реальном времени TRAFFIC_UNAWARE Свойство departure_time не установлено Самая быстрая задержка из трех режимов.
Применены условия реального трафика TRAFFIC_AWARE Нет эквивалента

Новый режим, добавленный API маршрутов. Он обеспечивает немного большую задержку, чем TRAFFIC_UNAWARE с небольшими затратами на качество ETA.

Он имеет гораздо меньшую задержку, чем TRAFFIC_AWARE_OPTIMAL .

Применяются высококачественные и полные данные о трафике в реальном времени. TRAFFIC_AWARE_OPTIMAL набор свойств departure_time

Эквивалент режима, используемого на сайте maps.google.com и в мобильном приложении Google Maps.

Для вычисления матрицы маршрутов количество элементов в запросе (количество источников × количество пунктов назначения) не может превышать 100.

Ключевые различия

В этом разделе рассматриваются ключевые различия между Routes API и службами, которые он заменяет, а также способы устранения этих различий при переходе с этих служб в существующие приложения.

Вызов одной службы вместо двух

API маршрутов Включите только одну службу в консоли API, чтобы ваше приложение могло использовать вычисления маршрутов и матрицу вычислений маршрутов.
Дополнительную информацию см. в разделе Настройка в консоли Google API .
API маршрутов
API матрицы расстояний
Включите две службы: Directions API и Distance Matrix API как отдельные службы в консоли API.

Использует запросы HTTPS POST

API маршрутов Передавайте параметры в теле запроса или в заголовках как часть запроса HTTP POST .
Примеры см.:
- Рассчитать маршрут
- Вычислить матрицу маршрутов
API маршрутов
API матрицы расстояний
Передавайте параметры URL-адреса с помощью HTTP GET .

Различия в ответах ETA

API Routes возвращает ETA и использует свойство ответа duration иначе, чем API-сервисы Directions и Distance Matrix API, как показано в таблице ниже.

Тип расчетного прибытия API маршрутов API маршрутов
API матрицы расстояний
Расчетное время прибытия не зависит от трафика и не зависит от времени.

Установите с помощью TRAFFIC_UNAWARE .

  • ETA содержится в свойстве ответа duration .
  • Свойства ответа duration и staticDuration содержат одно и то же значение.

Соответствует тому, что в запросе не указано departure_time .

  • ETA содержится в свойстве ответа duration .
  • Свойство ответа duration_in_traffic не возвращается.
ETA, учитывающее трафик в реальном времени.

Установите с помощью TRAFFIC_AWARE или TRAFFIC_AWARE_OPTIMAL .

  • ETA, учитывающее трафик в реальном времени, содержится в свойстве ответа duration .
  • Свойство ответа staticDuration содержит продолжительность проезда по маршруту без учета условий дорожного движения.
  • Свойство duration_in_traffic больше не возвращается.

Установите, используя в запросе departure_time .

  • ETA, учитывающее трафик в реальном времени, содержится в свойстве ответа duration_in_traffic .

Полилинейные путевые точки

Вам больше не нужно преобразовывать координаты широты и долготы в путевые точки полилинии с помощью этого сервиса, который поддерживает тело запроса POST и, следовательно, на него больше не влияют ограничения на строку URL-адреса. Некоторые пользователи Distance Matrix API решили проблему ограничений запросов, преобразовав точки широты и долготы в путевые точки полилинии.

Форматированные адреса (обратный геокод)

API маршрутов не предоставляет в ответе форматированные адреса. Чтобы получить отформатированные адреса, используйте API геокодирования, который создан для этого варианта использования и обеспечивает результаты более высокого качества.

Доступные режимы путешествия

Как и в случае с Directions API, Routes API использует DRIVE в качестве режима по умолчанию, когда в запросе маршрута не указан режим путешествия. Однако если в запросе указан режим передвижения для маршрута, API маршрутов не возвращает массив доступных режимов передвижения в качестве альтернативных вариантов для запроса. Если ваш вариант использования основан на этой функции, сообщите о проблеме, описывая, как вы используете эту функцию, чтобы мы могли принять меры.

XML как формат ответа

API маршрутов не предоставляет XML в качестве формата ответа. В Интернете вы можете найти несколько конвертеров JSON в XML, которые подойдут вашим целям.