Введение
Запрос к 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).
- Глобальный код — это 4-символьный код города, а местный код — 6-символьный или более длинный (
- В качестве альтернативы вы можете предоставить закодированный набор координат, используя алгоритм кодирования полилинии . Это особенно полезно, если у вас большое количество исходных точек, поскольку 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_time9999-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 1 712 km OK 24567 6 heures 49 minutes 139695 140 km |
OK 266680 3 jours 2 heures 1451704 1 452 km OK 10374 2 heures 53 minutes 146500 146 km
DistanceMatrixResponse
| Поле | Необходимый | Тип | Описание |
|---|---|---|---|
| необходимый | Массив<строка> | Массив адресов, возвращенных API из вашего исходного запроса. Как и в случае с |
| необходимый | Массив<строка> | Массив адресов, возвращаемый API из вашего исходного запроса. Эти адреса отформатированы геокодером и локализованы в соответствии с языковым параметром, переданным вместе с запросом. Данный контент предназначен для чтения в неизмененном виде. Не следует программно обрабатывать отформатированные адреса. |
| необходимый | Array< DistanceMatrixRow > | Массив элементов, каждый из которых, в свою очередь, содержит элементы Дополнительную информацию см. в разделе 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 | Продолжительность поездки по этому маршруту, рассчитанная на основе текущих и исторических данных о дорожной ситуации. См. параметр запроса
Дополнительную информацию см. в разделе TextValueObject . |
| необязательный | Стоимость проезда | Если указана, содержит общую стоимость проезда (то есть общую стоимость билета) по данному маршруту. Эта информация возвращается только для запросов на проезд и только для транспортных компаний, у которых доступна информация о тарифах. Более подробная информация в разделе «Тарифы» . |
Стоимость проезда
Общая стоимость проезда по маршруту.
{
"currency" : "USD",
"value" : 6,
"text" : "$6.00"
}
| Поле | Необходимый | Тип | Описание |
|---|---|---|---|
| необходимый | нить | Код валюты ISO 4217, указывающий валюту, в которой выражена сумма. |
| необходимый | нить | Общая сумма оплаты, отформатированная на запрошенном языке. |
| необходимый | число | Общая сумма проезда в указанной валюте. |
DistanceMatrixElementStatus
-
OKозначает, что ответ содержит допустимый результат. -
NOT_FOUNDуказывает на то, что местоположение пункта отправления и/или назначения данной пары не удалось определить географически. -
ZERO_RESULTSозначает, что маршрут между пунктом отправления и пунктом назначения не найден. -
MAX_ROUTE_LENGTH_EXCEEDEDуказывает на то, что запрошенный маршрут слишком длинный и не может быть обработан.
TextValueObject
Объект, содержащий числовое значение и его отформатированное текстовое представление.
| Поле | Необходимый | Тип | Описание |
|---|---|---|---|
| необходимый | нить | Строковое значение. |
| необходимый | число | Числовое значение. |