Запрос и ответ API Distance Matrix

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

Введение

Запрос к API матрицы расстояний имеет следующий вид:

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

где outputFormat может принимать одно из следующих значений:

  • json (рекомендуется) указывает на вывод в формате JSON (JavaScript Object Notation).
  • xml означает вывод в формате XML.

Некоторые параметры являются обязательными, другие — необязательными. Как это принято в URL-адресах, все параметры разделяются символом амперсанда ( & ). Все зарезервированные символы (например, знак плюса "+") должны быть закодированы в формате URL . Список параметров и их возможных значений приведен ниже.

Необходимые параметры

  • пункты назначения

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

  • происхождение

    Отправная точка для расчета расстояния и времени в пути. Вы можете указать одно или несколько мест, разделенных символом вертикальной черты (|), в виде идентификатора места, адреса или координат широты/долготы:

    • Идентификатор места : Если вы указываете идентификатор места, перед ним необходимо добавить префикс place_id: .
    • Адрес : Если вы укажете адрес, сервис выполнит геокодирование строки и преобразует её в координаты широты/долготы для вычисления расстояния. Эти координаты могут отличаться от координат, возвращаемых API геокодирования, например, координаты входа в здание, а не его центра.
      Примечание: предпочтительнее использовать идентификаторы мест, а не адреса или координаты широты/долготы. Использование координат всегда приведет к тому, что точка будет привязана к ближайшей к этим координатам дороге, которая может не являться подъездной дорогой к объекту или даже дорогой, которая быстро и безопасно приведет к месту назначения. Использование адреса позволит определить расстояние до центра здания, а не до входа в него.
    • Координаты : Если вы укажете координаты широты/долготы, они будут привязаны к ближайшей дороге. Предпочтительно указывать идентификатор места. Если вы указываете координаты, убедитесь, что между значениями широты и долготы нет пробела.
    • Плюсовые коды должны быть отформатированы как глобальный код или составной код. Форматирование плюсовых кодов показано здесь (плюсы экранируются с помощью url-escaping до %2B, а пробелы — до %20):
      • Глобальный код — это 4-символьный код города, а местный код — 6-символьный или более длинный ( 849VCWC8+R9 кодируется как 849VCWC8%2BR9 ).
      • Составной код — это локальный код из 6 символов или более, содержащий явное указание местоположения (например, CWC8+R9 Mountain View, CA, USA кодируется как CWC8%2BR9%20Mountain%20View%20CA%20USA ).
    • В качестве альтернативы вы можете предоставить закодированный набор координат, используя алгоритм кодирования полилинии . Это особенно полезно, если у вас большое количество исходных точек, поскольку URL-адрес значительно короче при использовании закодированной полилинии.
      • Закодированные полилинии должны начинаться с префикса enc: и завершаться двоеточием : . Например: origins=enc:gfo}EtohhU:
      • Также можно включить несколько закодированных полилиний, разделенных символом вертикальной черты | . Например:
        origins=enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:|enc:udymA{~bxM:
        

Дополнительные параметры

  • время прибытия

    Указывает предпочтительное время прибытия для маршрутов общественного транспорта в секундах с полуночи 1 января 1970 года по UTC. Можно указать либо departure_time , либо arrival_time , но не оба параметра одновременно. Обратите внимание, что arrival_time должно быть указано целым числом.

  • избегать

    Расстояния могут быть рассчитаны с учетом определенных ограничений. Ограничения указываются с помощью параметра avoid и аргумента этого параметра, указывающего на ограничение, которого следует избегать. Поддерживаются следующие ограничения:

    • tolls указывает на то, что рассчитанный маршрут должен избегать платных дорог/мостов.
    • highways указывает на то, что рассчитанный маршрут должен избегать автомагистралей.
    • ferries означает, что рассчитанный маршрут должен избегать паромов.
    • Указание indoor означает, что рассчитанный маршрут должен избегать ступеней внутри помещений при пеших прогулках и использовании общественного транспорта.

    Можно запросить маршрут, который избегает любой комбинации платных дорог, автомагистралей и паромов, передав оба ограничения параметру avoid. Например, avoid=tolls|highways|ferries .

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

    Указывает предпочтительное время отправления. Вы можете указать время в виде целого числа в секундах с полуночи 1 января 1970 года по UTC. Если указано время departure_time позже 9999-12-31T23:59:59.999999999Z, API установит departure_time 9999-12-31T23:59:59.999999999Z в качестве альтернативы. Вы можете указать значение now, которое устанавливает время отправления на текущее время (с точностью до секунды). Время отправления может быть указано в двух случаях:

    • Для запросов, в которых режим передвижения — транзит: вы можете дополнительно указать одно из значений departure_time или arrival_time . Если ни одно из этих значений не указано, departure_time по умолчанию устанавливается на текущее время (то есть время отправления по умолчанию устанавливается на текущее время).
    • Для запросов, в которых режим поездки — «на автомобиле»: вы можете указать departure_time , чтобы получить маршрут и продолжительность поездки (поле ответа: duration_in_traffic), учитывающие дорожную обстановку. departure_time должно быть установлено на текущее время или на какое-либо время в будущем. Оно не может быть в прошлом.
    Примечание: Если время отправления не указано, выбор маршрута и продолжительности основан на дорожной сети и средних, не зависящих от времени, условиях движения. Результаты для конкретного запроса могут меняться со временем из-за изменений в дорожной сети, обновленных средних условий движения и распределенного характера обслуживания. Результаты также могут различаться между практически идентичными маршрутами в любое время и с любой частотой.
    Примечание: Запросы матрицы расстояний, указывающие departure_time при mode=driving ограничены максимум 100 элементами на запрос. Количество элементов определяется произведением количества пунктов отправления на количество пунктов назначения.
  • язык

    Язык, на котором будут отображаться результаты.

    • См. список поддерживаемых языков . Google часто обновляет список поддерживаемых языков, поэтому этот список может быть неполным.
    • Если language не указан, API пытается использовать предпочтительный язык, указанный в заголовке Accept-Language .
    • API делает все возможное, чтобы предоставить уличный адрес, понятный как пользователю, так и местным жителям. Для достижения этой цели он возвращает уличные адреса на местном языке, при необходимости транслитерированные в письменность, понятную пользователю, с учетом предпочтительного языка. Все остальные адреса возвращаются на предпочтительном языке. Все компоненты адреса возвращаются на одном языке, который выбирается из первого компонента.
    • Если имя недоступно на предпочитаемом языке, API использует наиболее близкое совпадение.
    • Предпочитаемый язык оказывает небольшое влияние на набор результатов, которые API выбирает для возврата, и на порядок их возврата. Геокодер по-разному интерпретирует сокращения в зависимости от языка, например, сокращения для типов улиц или синонимы, которые могут быть допустимы в одном языке, но не в другом. Например, utca и tér являются синонимами слова «улица» на венгерском языке.
  • режим

    Для расчета расстояний и направлений вы можете указать используемый вид транспорта. По умолчанию используется режим DRIVING . По умолчанию направления рассчитываются как маршруты движения. Поддерживаются следующие виды транспорта:

    • driving (по умолчанию) указывает стандартные маршруты или расстояние движения по дорожной сети.
    • Запросы walking : указания маршрута или расстояния с использованием пешеходных дорожек и тротуаров (где это возможно).
    • Запросы bicycling маршруты или информацию о расстоянии с использованием велосипедных дорожек и предпочтительных улиц (где это возможно).
    • Запросы transit в общественном транспорте указывают маршрут или расстояние (если таковые имеются). Если вы выбрали режим проезда, вы можете дополнительно указать время departure_time или время arrival_time . Если ни одно из этих значений не указано, время departure_time по умолчанию устанавливается на текущее время (то есть время отправления по умолчанию устанавливается на текущее время). Вы также можете дополнительно указать transit_mode и/или transit_routing_preference .
    Примечание: В инструкциях для пешеходов и велосипедистов иногда могут отсутствовать четко обозначенные пешеходные или велосипедные дорожки, поэтому в результатах поиска будут отображаться предупреждения, которые необходимо показать пользователю.
    Примечание: Информация о поездках на общественном транспорте доступна за период до 7 дней в прошлом или до 100 дней в будущем, в зависимости от наличия данных, предоставляемых поставщиками информации. Расписание общественного транспорта часто меняется, доступные поездки могут меняться со временем, и нет гарантии получения стабильных результатов для прогнозов на длительный срок.
  • область

    Код региона указывается в виде двухсимвольного значения ccTLD («домен верхнего уровня») . Большинство кодов ccTLD идентичны кодам ISO 3166-1, за некоторыми заметными исключениями. Например, ccTLD Соединенного Королевства — «uk» (.co.uk), а его код ISO 3166-1 — «gb» (технически обозначающий «Соединенное Королевство Великобритании и Северной Ирландии»).

  • traffic_model

    Указывает предположения, используемые при расчете времени в пробках. Этот параметр влияет на значение, возвращаемое в поле duration_in_traffic в ответе, которое содержит прогнозируемое время в пробках на основе исторических средних значений. Параметр traffic_model может быть указан только для маршрутов движения, где запрос включает departure_time . Доступные значения для этого параметра:

    • best_guess (по умолчанию) указывает, что возвращаемое значение duration_in_traffic должно представлять собой наилучшую оценку времени в пути, учитывая как исторические данные о дорожной ситуации, так и данные о текущей ситуации на дорогах. Данные о текущей ситуации на дорогах становятся более важными, чем ближе departure_time к текущему времени.
    • pessimistic указывает на то, что возвращаемое значение duration_in_traffic в большинстве дней должно быть больше фактического времени в пути, хотя в отдельные дни с особенно плохой дорожной обстановкой это значение может превышаться.
    • optimistic указывает на то, что возвращаемое значение duration_in_traffic должно быть короче фактического времени в пути в большинстве дней, хотя в отдельные дни с особенно благоприятными дорожными условиями оно может быть меньше этого значения.

    Значение по умолчанию параметра best_guess обеспечит наиболее полезные прогнозы для подавляющего большинства сценариев использования. Возможно, прогноз времени в пути, полученный с помощью best_guess будет короче, чем при optimistic , или, наоборот, длиннее, чем при pessimistic , из-за того, как модель прогнозирования best_guess интегрирует информацию о дорожном движении в реальном времени.

  • режим_транзита

    Указывает один или несколько предпочтительных видов транспорта. Этот параметр может быть указан только для направлений движения общественного транспорта. Параметр поддерживает следующие аргументы:

    • bus означает, что рассчитанный маршрут должен отдавать предпочтение поездке на автобусе.
    • subway указывает на то, что рассчитанный маршрут должен отдавать предпочтение передвижению на метро.
    • Указание train означает, что рассчитанный маршрут должен отдавать предпочтение поездке.
    • tram указывает, что рассчитанный маршрут должен отдавать предпочтение передвижению на трамвае и легкорельсовом транспорте.
    • rail указывает, что рассчитанный маршрут должен отдавать предпочтение поездкам на поезде, трамвае, легкорельсовом транспорте и метро. Это эквивалентно transit_mode=train|tram|subway .
  • transit_routing_preference

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

    • less_walking указывает, что рассчитанный маршрут должен отдавать предпочтение ограниченному количеству пеших прогулок.
    • fewer_transfers указывает, что рассчитанный маршрут должен отдавать предпочтение ограниченному числу пересадок.
  • единицы

    Указывает систему единиц измерения, используемую при отображении результатов.

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

Примеры запросов

В этом примере для указания координат пункта назначения используются координаты широты и долготы:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626
  &origins=40.6655101%2C-73.89188969999998
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626&key=YOUR_API_KEY'

В этом примере для указания координат назначения используются коды плюса:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=San%20Francisco
  &origins=849VCWC8%2BR9
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=849VCWC8%2BR9&destinations=San%20Francisco&key=YOUR_API_KEY'

В этом примере показан тот же запрос с использованием закодированной полилинии:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A
  &origins=40.6655101%2C-73.89188969999998
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A&key=YOUR_API_KEY'

Информация о дорожной ситуации

Информация о дорожной ситуации используется, когда выполняются все следующие условия (это условия, необходимые для получения поля duration_in_traffic в ответе матрицы расстояний):

  • Параметр mode движения — driving , либо он не указан ( driving — это режим движения по умолчанию).
  • Запрос содержит допустимый параметр departure_time . Параметр departure_time может быть установлен на текущее время или на какое-либо время в будущем. Он не может быть установлен на прошлое.

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

Следующий URL-адрес инициирует запрос матрицы расстояний для расчета расстояний между Бостоном (штат Массачусетс) или Чарлстауном (штат Массачусетс) и Лексингтоном (штат Массачусетс) и Конкордом (штат Массачусетс). Запрос включает время отправления и соответствует всем требованиям для возврата поля duration_in_traffic в ответе матрицы расстояний.

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?departure_time=now
  &destinations=Lexington%2CMA%7CConcord%2CMA
  &origins=Boston%2CMA%7CCharlestown%2CMA
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Boston%2CMA%7CCharlestown%2CMA&destinations=Lexington%2CMA%7CConcord%2CMA&departure_time=now&key=YOUR_API_KEY'

JSON

{
  "destination_addresses": ["Lexington, MA, USA", "Concord, MA, USA"],
  "origin_addresses": ["Boston, MA, USA", "Charlestown, Boston, MA, USA"],
  "rows":
    [
      {
        "elements":
          [
            {
              "distance": { "text": "33.3 km", "value": 33253 },
              "duration": { "text": "27 mins", "value": 1620 },
              "duration_in_traffic": { "text": "34 mins", "value": 2019 },
              "status": "OK",
            },
            {
              "distance": { "text": "41.5 km", "value": 41491 },
              "duration": { "text": "33 mins", "value": 1981 },
              "duration_in_traffic": { "text": "39 mins", "value": 2342 },
              "status": "OK",
            },
          ],
      },
      {
        "elements":
          [
            {
              "distance": { "text": "31.1 km", "value": 31100 },
              "duration": { "text": "26 mins", "value": 1543 },
              "duration_in_traffic": { "text": "29 mins", "value": 1754 },
              "status": "OK",
            },
            {
              "distance": { "text": "39.3 km", "value": 39338 },
              "duration": { "text": "32 mins", "value": 1904 },
              "duration_in_traffic": { "text": "35 mins", "value": 2077 },
              "status": "OK",
            },
          ],
      },
    ],
  "status": "OK",
}

XML


 OK
 Boston, MA, USA
 Charlestown, Boston, MA, USA
 Lexington, MA, USA
 Concord, MA, USA
 
  
   OK
   
    1620
    27 mins
   
   
    33253
    33.3 km
   
   
    2018
    34 mins
   
  
  
   OK
   
    1981
    33 mins
   
   
    41491
    41.5 km
   
   
    2342
    39 mins
   
  
 
 
  
   OK
   
    1543
    26 mins
   
   
    31100
    31.1 km
   
   
    1759
    29 mins
   
  
  
   OK
   
    1904
    32 mins
   
   
    39338
    39.3 km
   
   
    2077
    35 mins
   
  
 

Модификаторы местоположения

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

Укажите, что рассчитанные маршруты должны проходить по определенной стороне дороги.

При указании местоположения вы можете запросить, чтобы рассчитанный маршрут проходил по той стороне дороги, к которой привязана путевая точка, используя префикс side_of_road: :. Например, этот запрос вернет расстояние для длинного маршрута, чтобы транспортное средство оказалось на той стороне дороги, к которой была привязана путевая точка:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=side_of_road%3A37.7663444%2C-122.4412006
  &origins=37.7680296%2C-122.4375126
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=37.7680296%2C-122.4375126&destinations=side_of_road%3A37.7663444%2C-122.4412006&key=YOUR_API_KEY'

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

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A
  &origins=San%20Francisco%20City%20hall
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=San%20Francisco%20City%20hall&destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A&key=YOUR_API_KEY'

Модификатор side_of_road: может использоваться только с этим ограничением:

  • Параметр mode движения — driving , либо он не указан ( driving — это режим движения по умолчанию).

Укажите, что вычисляемые маршруты должны иметь определенное заголовочное название.

При указании местоположения можно запросить, чтобы рассчитанный маршрут проходил через это местоположение с определенным направлением. Это направление задается префиксом heading=X: , где X — целое число градусов от 0 (включительно) до 360 (исключительно). Направление 0 означает север, 90 — восток, и так далее по часовой стрелке. Например, в этом запросе рассчитанный маршрут идет на восток от начальной точки, а затем делает разворот:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=37.773245%2C-122.469502
  &origins=heading%3D90%3A37.773279%2C-122.468780
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=heading%3D90%3A37.773279%2C-122.468780&destinations=37.773245%2C-122.469502&key=YOUR_API_KEY'

Модификатор heading=X: может использоваться только с учетом следующих ограничений:

  • Параметр « mode передвижения» может быть driving , bicycling или не указан ( driving — режим передвижения по умолчанию).
  • Модификатор side_of_road не указан для того же местоположения.
  • Местоположение указывается с помощью значений широты и долготы. Нельзя использовать heading с адресами, идентификаторами мест или закодированными полилиниями.

Запросы и ответы по матрице расстояний

Ниже приведён пример HTTP-запроса, в котором запрашиваются расстояние и продолжительность поездки из Ванкувера, Британская Колумбия, Канада, и из Сиэтла, Вашингтон, США, в Сан-Франциско, Калифорния, США, и в Викторию, Британская Колумбия, Канада.

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=San%20Francisco%7CVictoria%20BC
  &language=fr-FR
  &mode=bicycling
  &origins=Vancouver%20BC%7CSeattle
  &key=YOUR_API_KEY

локон

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Vancouver%20BC%7CSeattle&destinations=San%20Francisco%7CVictoria%20BC&mode=bicycling&language=fr-FR&key=YOUR_API_KEY'

Этот запрос вернет четыре элемента — два источника, умноженные на два пункта назначения:

Ванкувер — Сан-Франциско Ванкувер — Виктория
Из Сиэтла в Сан-Франциско Из Сиэтла в Викторию

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

JSON

{
  "destination_addresses":
    ["San Francisco, Californie, États-Unis", "Victoria, BC, Canada"],
  "origin_addresses":
    ["Vancouver, BC, Canada", "Seattle, Washington, États-Unis"],
  "rows":
    [
      {
        "elements":
          [
            {
              "distance": { "text": "1 712 km", "value": 1711765 },
              "duration": { "text": "3 jours 16 heures", "value": 318119 },
              "status": "OK",
            },
            {
              "distance": { "text": "140 km", "value": 139695 },
              "duration": { "text": "6 heures 49 minutes", "value": 24567 },
              "status": "OK",
            },
          ],
      },
      {
        "elements":
          [
            {
              "distance": { "text": "1 452 km", "value": 1451704 },
              "duration": { "text": "3 jours 2 heures", "value": 266680 },
              "status": "OK",
            },
            {
              "distance": { "text": "146 km", "value": 146500 },
              "duration": { "text": "2 heures 53 minutes", "value": 10374 },
              "status": "OK",
            },
          ],
      },
    ],
  "status": "OK",
}

XML


 OK
 Vancouver, BC, Canada
 Seattle, Washington, États-Unis
 San Francisco, Californie, États-Unis
 Victoria, BC, Canada
 
  
   OK
   
    318119
    3 jours 16 heures
   
   
    1711765
    1712 km
   
  
  
   OK
   
    24567
    6 heures 49 minutes
   
   
    139695
    140 km
   
  
 
 
  
   OK
   
    266680
    3 jours 2 heures
   
   
    1451704
    1452 km
   
  
  
   OK
   
    10374
    2 heures 53 minutes
   
   
    146500
    146 km
   
  
 

DistanceMatrixResponse

Поле Необходимый Тип Описание
необходимый Массив<строка>

Массив адресов, возвращенных API из вашего исходного запроса. Как и в случае с origin_addresses , они локализованы, если это необходимо. Этот контент предназначен для чтения в неизмененном виде. Не следует программно обрабатывать отформатированные адреса.

необходимый Массив<строка>

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

необходимый Array< DistanceMatrixRow >

Массив элементов, каждый из которых, в свою очередь, содержит элементы status , duration и distance .

Дополнительную информацию см. в разделе DistanceMatrixRow .

необходимый DistanceMatrixStatus

Содержит информацию о статусе запроса и может включать отладочные данные, которые помогут вам выяснить причину сбоя запроса.

Дополнительную информацию см. в разделе DistanceMatrixStatus .

необязательный нить

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

DistanceMatrixStatus

Коды состояния, возвращаемые службой.

  • OK означает, что ответ содержит допустимый результат.
  • INVALID_REQUEST указывает на то, что предоставленный запрос недействителен.
  • MAX_ELEMENTS_EXCEEDED указывает на то, что произведение адресов отправления и назначения превышает лимит для каждого запроса.
  • MAX_DIMENSIONS_EXCEEDED указывает на то, что количество источников или получателей превышает лимит для каждого запроса.
  • OVER_DAILY_LIMIT указывает на любой из следующих параметров:
    • Отсутствует или недействителен ключ API.
    • В вашем аккаунте не включена функция выставления счетов.
    • Установленный самостоятельно лимит использования превышен.
    • Предоставленный способ оплаты больше недействителен (например, срок действия кредитной карты истек).
  • OVER_QUERY_LIMIT указывает на то, что сервис получил слишком много запросов от вашего приложения в течение допустимого периода времени.
  • REQUEST_DENIED указывает на то, что сервис отклонил запрос на использование сервиса Distance Matrix вашим приложением.
  • UNKNOWN_ERROR указывает на то, что запрос матрицы расстояний не удалось обработать из-за ошибки сервера. Возможно, запрос будет выполнен успешно, если вы повторите попытку.

DistanceMatrixRow

Поле Необходимый Тип Описание
необходимый Array< DistanceMatrixElement >

Когда API матрицы расстояний возвращает результаты, он помещает их в массив строк JSON. Даже если результаты не возвращаются (например, когда начальные и/или конечные точки отсутствуют), он все равно возвращает пустой массив.

Строки упорядочены в соответствии со значениями параметра origin запроса. Каждая строка соответствует источнику, а каждый элемент в этой строке соответствует паре значений источника и назначения.

Каждый массив строк содержит один или несколько элементов, которые, в свою очередь, содержат информацию об одной паре «источник-назначение».

Дополнительную информацию см. в разделе DistanceMatrixElement .

Элемент матрицы расстояний

Поле Необходимый Тип Описание
необходимый DistanceMatrixElementStatus

Статус элемента.

Дополнительную информацию см. в разделе DistanceMatrixElementStatus .

необязательный TextValueObject

Общая протяженность этого маршрута, выраженная в метрах (значение) и в текстовом виде. Текстовое значение использует систему единиц, указанную в параметре unit исходного запроса, или регион отправления.

Дополнительную информацию см. в разделе TextValueObject .

необязательный TextValueObject

Время, необходимое для прохождения этого маршрута, выраженное в секундах (поле значения) и в текстовом виде. Текстовое представление локализуется в соответствии с языковым параметром запроса.

Дополнительную информацию см. в разделе TextValueObject .

необязательный TextValueObject

Продолжительность поездки по этому маршруту, рассчитанная на основе текущих и исторических данных о дорожной ситуации. См. параметр запроса traffic_model для получения информации о параметрах, позволяющих выбрать оптимистичный, пессимистичный или приблизительный вариант возвращаемого значения. Продолжительность указывается в секундах (поле value) и в текстовом формате. Текстовое представление локализуется в соответствии с языковым параметром запроса. Продолжительность в данных о дорожной ситуации возвращается только в том случае, если выполняются все следующие условия:

  • Запрос включает параметр departure_time .
  • Информация о дорожной ситуации на запрошенном маршруте доступна.
  • Параметр режима установлен в положение "вождение".

Дополнительную информацию см. в разделе TextValueObject .

необязательный Стоимость проезда

Если указана, содержит общую стоимость проезда (то есть общую стоимость билета) по данному маршруту. Эта информация возвращается только для запросов на проезд и только для транспортных компаний, у которых доступна информация о тарифах.

Более подробная информация в разделе «Тарифы» .

Стоимость проезда

Общая стоимость проезда по маршруту.

{
  "currency" : "USD",
  "value" : 6,
  "text" : "$6.00"
}
Поле Необходимый Тип Описание
необходимый нить

Код валюты ISO 4217, указывающий валюту, в которой выражена сумма.

необходимый нить

Общая сумма оплаты, отформатированная на запрошенном языке.

необходимый число

Общая сумма проезда в указанной валюте.

DistanceMatrixElementStatus

  • OK означает, что ответ содержит допустимый результат.
  • NOT_FOUND указывает на то, что местоположение пункта отправления и/или назначения данной пары не удалось определить географически.
  • ZERO_RESULTS означает, что маршрут между пунктом отправления и пунктом назначения не найден.
  • MAX_ROUTE_LENGTH_EXCEEDED указывает на то, что запрошенный маршрут слишком длинный и не может быть обработан.

TextValueObject

Объект, содержащий числовое значение и его отформатированное текстовое представление.

Поле Необходимый Тип Описание
необходимый нить

Строковое значение.

необходимый число

Числовое значение.