Формат ответа
Ответ 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
-
Информация о построенном маршруте.
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
- Маршрут проходит через условно-платные дороги (проезд оплачивается только при определенных условиях).
Сообщения об ошибках
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"]}