Формат ответа
Ответ API содержит маршрут, разбитый на несколько участков. Каждый участок состоит из нескольких шагов, которые представлены ломаными линиями. Для каждого участка предоставляется информация о качестве дороги и ожидаемом времени на его прохождение.
https://api.routing.yandex.net/v2/route?waypoints=25.234369457896325,55.280222457968712|25.234369457896325,55.401544758961258&apikey=YOUR_API_KEY
В этом случае ответ будет выглядеть следующим образом:
Ответ
{
"traffic_type": "realtime",
"route": {
"legs": [
{
"status": "OK",
"steps": [
{
"duration": 11.52513027,
"length": 44.85900116,
"polyline": {
"points": [
[25.229762, 55.289311],
...
[24.994437, 55.130251]
]
},
"mode": "driving",
"waiting_duration": 0
},
{
"duration": 206.4788513,
"length": 1116.158936,
"polyline": {
"points": [
[25.229762, 55.289311],
...
[24.994437, 55.130251]
]
},
"mode": "driving",
"waiting_duration": 0
},
{
"duration": 1143.630005,
"length": 6356.562988,
"polyline": {
"points": [
[25.229762, 55.289311],
...
[24.994437, 55.130251]
]
},
"mode": "driving",
"waiting_duration": 0
},
{
"duration": 239.3830109,
"length": 524.8220825,
"polyline": {
"points": [
[25.229762, 55.289311],
...
[24.994437, 55.130251]
]
},
"mode": "driving",
"waiting_duration": 0
}
]
}
],
"flags": {
"hasTolls": true,
"hasNonTransactionalTolls": false
}
}
}
https://api.routing.yandex.net/v2/route?waypoints=55.760097,37.617987|55.759479,37.618956&mode=walking&apikey=YOUR_API_KEY
В этом случае ответ будет выглядеть следующим образом:
Ответ
{
"traffic_type": "forecast",
"route": {
"legs": [
{
"status": "OK",
"steps": [
{
"length": 124,
"duration": 89,
"mode": "walking",
"waiting_duration": 0,
"polyline": {
"points": [
[55.760097,37.617987],
[55.760089,37.61794],
[55.7597,37.618147],
[55.759679,37.618217],
[55.759668,37.618241],
[55.75966,37.61825],
[55.759652,37.618256],
[55.759544,37.618314],
[55.759638,37.618861],
[55.759478,37.618951],
[55.759479,37.618956]
]
},
"levels": {
"level": [{"count": 10}]
},
"constructions": {
"construction": [
{
"count": 1,
"construction_mask": {"binding": true}
},
{
"count": 8,
"construction_mask": {}
},
{
"count": 1,
"construction_mask": {"binding": true}
}
]
}
}
]
}
]
}
}
Параметры ответа
traffic_type-
Тип информации о пробках, который используется при построении маршрута. Возможные значения:
realtime— используется информация о пробках на момент запроса.forecast— используется прогноз пробок на ближайший час.disabled— не используется никакая информация о пробках.
route-
Информация о построенном маршруте. Параметр возвращается, если в запросе не указан
results.legs-
Отрезки маршрута между точками, указанными в параметре
waypoints.status-
Статус построения маршрута. Возможные значения:
OK,FAIL steps-
Шаги, выполнение которых требуется для прохождения отрезка маршрута.
length-
Длина шага, в метрах.
duration-
Время, необходимое для прохождения шага, в секундах.
waiting_duration-
Информация о времени ожидания больше не поддерживается и скоро будет исключена из ответа API. Время ожидания без движения на участке маршрута. Например, учитывается задержка, вызванная ожиданием сведения моста.
mode-
Режим маршрутизации. Возможные значения:
driving— маршрут для легкового автомобиля, используется по умолчанию;truck— маршрут для грузового автомобиля;walking— маршрут для пешехода;transit— маршрут с использованием общественного транспорта;bicycle— маршрут для велосипеда;scooter— маршрут для электросамоката.
polyline-
Ломаная линия, составляющая маршрут.
points-
Точки, составляющие линию.
Указаны в десятичных градусах (стандарт WGS84). Каждая точка описывается парой координат в следующем формате:
<широта,долгота>
constructions-
Для режимов
walkingиtransit.construction-
Массив информации о конструкциях.
count- Количество точек на
polyline, относящихся к данной конструкции. construction_mask- Объект с описаниями, вида
{"stairs_up": true, "indoor": true},{"crosswalk": true}.
levels-
Для режимов
walkingиtransit. Информация об этажах для маршрута.level-
Массив этажей.
count-
Количество точек на
polylineотносящихся к этажу. level_info-
Информация об этаже. Отсутствует, если маршрут идет вне зданий.
level_id- Идентификатор этажа.
level_name- Название этажа.
connector- Признак соединительного элемента (вход в здание, лестница, эскалатор, лифт и т.д.).
flags-
Дополнительная информация о построенном маршруте.
hasTolls- Маршрут проходит через платные дороги.
hasNonTransactionalTolls- Маршрут проходит через условно-платные дороги (проезд оплачивается только при определенных условиях).
routes-
Массив маршрутов как в
route. Параметр возвращается, если в запросе указанresults.
Сообщения об ошибках
| Code | Description |
|---|---|
| 400 | Запрос не содержит одного или нескольких обязательных параметров. |
| 401 | Запрос не содержит параметр apikey или указан неверный ключ. |
| 429 | Превышено количество запросов. |
| 500 или 504 | Системная ошибка сервера. Повторите запрос с небольшой задержкой. |
Если при обработке запроса происходит ошибка, API возвращает сообщение с описанием ошибки в поле errors:
{"errors": ["0: 0: parameter 'waypoints' is missing"]}
{"errors": ["Key not found"]}
{"errors": ["parameter 'apikey' is missing"]}
{"errors": ["Counter total limit exceeded. Limit: XXX, current value: YYY"]}