Skip to main content

Route options

By default, multiple route options are built for all transportation types, if it is possible.

You can specify the desired number of route options:

  • For public transport: limit the number of route options in the response or specify the desired number of direct routes.
  • For other transportation types: specify the desired number of route options in the response.

Public transport

For each option of a route by public transport, the following are calculated: duration, used transport and number of transfers, and data about the route segments (full geometry, duration, transport, and other).

The ID of each route option within the response is returned in the id field, and the unique option identifier is returned in the route_id field:

    "id": "1", // route option ID within the response
"route_id": "moscow-ctx-back.m1/ctxrouting/176..." // route option unique ID

You can limit the number of route options in the response.

Total duration

The duration of each option of a route by public transport is returned in the fields:

  • total_distance - total route length in meters.
  • total_duration - total travel time in seconds.
  • total_walkway_distance - total travel time on foot in text format.
    "total_distance": 8939, // total route length is 8,939 meters
"total_duration": 2464, // total travel time is about 41 minutes
"total_walkway_distance": "on foot 20 min" // of which 20 minutes are on foot

Transport and transfers

For each option of a route by public transport, the response indicates which transport types are used and how many transfers are needed.

If it is not possible to build a route for the selected transport types (for example, they are not available on the territory between route points):

  • A completely pedestrian route between points is returned if it is shorter than 3.5 km. The pedestrian field in the response contains the value true.
  • If the pedestrian route is longer than 3.5 km, an empty response is returned.

The waypoints field contains a list of all transport routes used in all route segments:

  • combined - whether the segment can be traveled using different transport types.
  • routes_names - names of public transport routes.
  • subtype - public transport type.

For example, the current route contains one segment by tram and two segments by metro:

      "waypoints": [
{
"combined": false, // the segment can be traveled only by tram
"routes_names": [
"13",
"7",
"Т1"
],
"subtype": "tram"
},
{
"combined": false,
"routes_names": [
"Большая кольцевая линия"
],
"subtype": "metro"
},
{
"combined": false,
"routes_names": [
"Калужско-Рижская линия"
],
"subtype": "metro"
}
]

The number of transfers used in the route option is specified in the fields:

  • crossing_count - number of transfers between stop platforms. For example, a transfer from metro to bus or a transition between different metro lines.
  • transfer_count - number of transfers within the same stop platform. For example, a transfer from one bus route to another.
    "crossing_count": 2, // transfers between platforms
"transfer_count": 2, // transfers within one platform

The schedules array contains the transport schedule on the route. Each element of the array contains:

  • period - transport period in minutes. If transport operates on a fixed schedule, the field is absent.
  • precise_time - arrival time of the transport at the stop in HH:MM format. If transport operates periodically, the field is empty.
  • start_time - arrival time at the stop by local time in Unix format.
  • start_time_utc - arrival time at the stop in UTC in Unix format.
  • type - schedule type: precise - fixed, periodic - periodic.
  • origin_from - whether the predicted schedule was used. Returned only for the fixed schedule ("type": "precise"). Possible value: eta.
    "schedules": [
{
"precise_time": "11:25", // arrival time in HH:MM format
"start_time": 41100, // arrival time in Unix (local time)
"start_time_utc": 1772785500, // arrival time in Unix (UTC)
"type": "precise", // schedule type is fixed
"origin_from": "eta" // predicted schedule was used
},
...
],
...
"schedules": [
{
"period": 30, // interval between transport arrivals at the stop is 30 minutes
"precise_time": "",
"start_time": 65098, // arrival time in Unix (local time)
"start_time_utc": 1766671498, // arrival time in Unix (UTC)
"type": "periodic" // schedule type is periodic
},
...
]

Route segments

Each option of a route by public transport can be divided into several segments. The list of segments is returned in the movements array.

For example, a bus route without transfers can consist of four segments:

  1. Walking from the starting route point to the boarding bus stop.
  2. Traveling several stops by bus.
  3. Walking from the final bus stop to the ending route point.
  4. An additional segment containing only the ending point coordinates.

The ID of each route segment is returned in the movements.id field.

Route segment types

The movement type for each segment of a route by public transport is returned in the type field:

  • walkway - pedestrian segment (to the boarding stop and from the final stop).
  • passage - traveling by public transport.
  • crossing - transition between stop platforms. Considered in the crossing_count field.

The waypoint field contains brief information about the route segment:

  • combined - whether the segment can be traveled using different transport types.
  • comment - additional info about the segment (for example, distance to the stop).
  • name - stop name.
  • subtype - point type (route start or finish) or transportation type.

An example for a pedestrian segment:

    "type": "walkway", // pedestrian route segment
"waypoint": {
"comment": "530 m on foot",
"name": "",
"subtype": "start" // point type is the start of the route
}

An example for a public transport segment:

    "type": "passage", // traveling by transport
"waypoint": {
"combined": false, // segment can be traveled only by tram
"comment": "",
"name": "Майский просек", // boarding stop name
"subtype": "tram" // transportation type is tram
}

An example of a platform transition:

      "type": "crossing", // transition between platforms
"waypoint": {
"comment": "crossing",
"name": "Рижская", // name of the metro transfer station
"subtype": "pedestrian" // transportation type is on foot
}

An example for the destination point:

  {
"type": "walkway",
"waypoint": {
"comment": "You reach the destination at 11:57.", // arrival time at the ending route point
"name": "",
"subtype": "finish" // point type is the end of the route
}
}

Route segment geometry

Geometry of a segment of a route by public transport is returned as a line or a set of lines (LINESTRING) in the alternatives.geometry array:

    "alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.697461 55.798227, 37.697219 55.798105)",
"z_first": 0,
"z_last": 0
},
...
]
}
]

For public transport segments, stop coordinates are provided as points (POINT) in the alternatives.platforms array:

    "alternatives": [
{
"geometry": [
{
"selection":"LINESTRING(37.699518 55.794568, 37.694828 55.793954, ...)"
},
...
],
"platforms": [
{
"geometry": "POINT(37.699518 55.794568)",
"id": "9"
},
{
"geometry": "POINT(37.690796 55.793155)",
"id": "10"
},
...
]
}
]

Route segment duration

The duration of each segment of a route by public transport is returned in the movements array in the fields:

  • distance - segment length in meters.
  • moving_duration - travel time on the segment in seconds.
  • waiting_duration - waiting time on the segment. For pedestrian segments, the value is 0.
    "movements": [
{
...
"distance": 528, // segment length is 528 m
"moving_duration": 380, // travel time on the segment is about 6 minutes
"waiting_duration": 0 // waiting time is 0 seconds since this is a pedestrian segment
},
...
]

Transport and stops

For segments of a route by public transport, the movements array returns additional fields: platforms, routes, and metro (when using the metro).

The platforms field contains the names of all intermediate stops on the route segment: all stops except boarding and landing. The last intermediate stop in the list is the stop after which you should get off:

    "movements": [
{
...
"platforms": {
"names": [
"Малая Остроумовская",
"Клуб Русакова - Сцена Мельников"
]
},
},
...
]

The routes field contains a list of all transport routes that can be used for traveling the current segment:

  • color - route color on the map in HEX format.
  • names - names of public transport routes.
  • subtype - public transport type.
  • subtype_name - name of the public transport type in text format.

For example, the current segment can be traveled by tram №7, №Т1, and №13:

    "movements": [
{
...
"routes": [
{
"color": "#eb5a2b", // route color
"names": [
"7",
"Т1",
"13"
], // route numbers
"subtype": "tram", // transport type
"subtype_name": "tram" // name of the transport type
}
]
},
...
]

If the route segment can be traveled by metro, the metro field includes the following parameters:

  • boarding_parts_suggest_5_wagons - numbers of train parts from 1 to 5 in which boarding is recommended.
  • color - metro line color on the map in HEX format.
  • exit_comment - comment for the metro exit.
  • exit_entrance_number - metro exit number.
  • line_name - metro line name.
  • ui_direction_suggest - direction of travel.
  • ui_station_count - number of metro stations.

Example:

    "movements": [
{
...
"metro": {
...
"boarding_parts_suggest_5_wagons": [
4
], // boarding cars
"color": "#fe7f01", // metro line color
"exit_comment": "ул. Космонавтов, проспект Мира, 146, Ярославская ул., Гостиница \"Космос\"", // metro exit
"exit_entrance_number": "4", // exit number
"line_name": "Калужско-Рижская линия", // line name
"ui_direction_suggest": "towards «Медведково» station", // direction of travel
"ui_station_count": "1 station" // number of stations
},
},
...
]
...

Limiting options

For routes by public transport, you can limit the number of route options in the response. To do this, specify the maximum number of options or the desired number of direct routes (without transfers).

When you limit the maximum number of options (max_result_count), the shortest routes are returned in the response, sorted by increasing the total travel time (total_duration).

If you additionally specify the desired number of direct routes (direct_routes_count) in the response, the Routing API attempts to include the direct routes in the response, even if their total_duration is higher than for routes with transfers. The response may return a number of direct routes different from the direct_routes_count:

  • More direct routes are returned if their travel time is shorter than other routes with transfers.
  • Fewer direct routes are returned if the desired number cannot be built.

For example, when limiting the number of routes via "max_result_count": 3, three shortest routes with transfers are returned in the response. If you specify the desired number of direct routes via "direct_routes_count": 2, the response will include one route with transfers and two direct routes, even if their travel time is higher.

To build a route by public transport with a limited number of options, send a POST request to /public_transport/2.0 with the following parameters:

  • source (mandatory parameter) - coordinates of the starting point (latitude and longitude).
  • target (mandatory parameter) - coordinates of the ending point (latitude and longitude).
  • transport (mandatory parameter) - array of public transport types. For example, tram - tram. For the full list of public transport types, see the transport parameter in the API Reference or the Transportation types instruction.
  • max_result_count - maximum number of route options in the response.
  • direct_routes_count - desired number of routes without transfers in the response. If it is not possible to build the specified number of routes without transfers, a smaller number will be returned.
  • locale - language of text descriptions of route elements: English.

Request example:

curl --request POST \
--url 'https://routing.api.2gis.com/public_transport/2.0?key=API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"source":
{
"point":
{
"lat": 55.798227,
"lon": 37.697461
}
},
"target":
{
"point":
{
"lat": 55.821029,
"lon": 37.641507
}
},
"transport": ["metro", "tram", "bus", "shuttle_bus"],
"max_result_count": 2,
"direct_routes_count": 1,
"locale": "en"
}'

Response example:

response.json
[
{
"crossing_count": 2,
"id": "1",
"movements": [
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.697461 55.798227, 37.697219 55.798105)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.697219 55.798105, 37.697600 55.797760, 37.697687 55.797682, 37.697740 55.797635, 37.697693 55.797614, 37.697671 55.797589, 37.697657 55.797556, 37.697681 55.797476, 37.697803 55.797366, 37.698029 55.797180, 37.698081 55.797127, 37.698640 55.796631, 37.698676 55.796592, 37.698690 55.796566, 37.698686 55.796541, 37.698678 55.796519, 37.698617 55.796470, 37.698844 55.796290)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.698844 55.796290, 37.698888 55.796256)",
"z_first": 0,
"z_last": -1
},
{
"selection": "LINESTRING(37.698888 55.796256, 37.698982 55.796182)",
"z_first": -1,
"z_last": -1
},
{
"selection": "LINESTRING(37.698982 55.796182, 37.699025 55.796149)",
"z_first": -1,
"z_last": 0
},
{
"selection": "LINESTRING(37.699025 55.796149, 37.699182 55.796025)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699182 55.796025, 37.699215 55.796039)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699215 55.796039, 37.699946 55.795441)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699946 55.795441, 37.699629 55.795313, 37.699898 55.795117, 37.699964 55.795069, 37.699975 55.795055, 37.699971 55.795045, 37.699956 55.795039, 37.699812 55.795022, 37.699836 55.794961, 37.699878 55.794856, 37.699923 55.794744)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699923 55.794744, 37.699607 55.794702)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699607 55.794702, 37.699619 55.794675)",
"z_first": 0,
"z_last": 0
}
]
}
],
"distance": 492,
"id": "2",
"moving_duration": 354,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "500 m on foot",
"name": "",
"subtype": "start"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.699619 55.794675, 37.698420 55.794522, 37.698420 55.794522, 37.694670 55.794043, 37.694670 55.794043, 37.694637 55.794039, 37.694418 55.794005, 37.694418 55.794005, 37.693685 55.793891, 37.693685 55.793891, 37.693403 55.793848, 37.693403 55.793848, 37.692010 55.793632, 37.691668 55.793564, 37.691357 55.793480, 37.691099 55.793390, 37.687215 55.791887, 37.687215 55.791887, 37.687162 55.791867, 37.687162 55.791867, 37.686824 55.791736, 37.686824 55.791736, 37.686525 55.791621, 37.686525 55.791621, 37.681953 55.789852, 37.681932 55.789844, 37.681932 55.789844, 37.681879 55.789823, 37.681879 55.789823, 37.681257 55.789582)"
}
],
"platforms": [
{
"geometry": "POINT(37.699619 55.794675)",
"id": "7"
},
{
"geometry": "POINT(37.681257 55.789582)",
"id": "8"
}
]
}
],
"distance": 1303,
"id": "3",
"moving_duration": 240,
"platforms": null,
"routes": [
{
"color": "#1a73f0",
"names": [
"е66"
],
"subtype": "bus",
"subtype_name": "bus"
}
],
"type": "passage",
"waiting_duration": 35,
"waypoint": {
"combined": false,
"comment": "",
"name": "Трамвайное депо им. Русакова",
"subtype": "bus"
}
},
{
"alternatives": [
{
"entrances": [
{
"color": "#56c09c",
"exit": true,
"exit_comment": "ул. Стромынка, 2-й Полевой переулок, ул. Барболина, торговый центр «Престиж-М», центр госуслуг \"Мои документы района Сокольники\", клиническая больница им. братьев Бахрушиных, центр борьбы с туберкулёзом (клиника №2)",
"geometry": "POINT(37.680915 55.789655)",
"line_name": "Большая кольцевая линия",
"metro_logo": "metro_moscow_11",
"name": "Сокольники",
"number": "4",
"show_other_station": true
}
],
"geometry": [
{
"selection": "LINESTRING(37.681188 55.789631, 37.681263 55.789664, 37.681234 55.789713, 37.680976 55.789666, 37.680915 55.789654)",
"z_first": 0,
"z_last": -1
},
{
"selection": "LINESTRING(37.680915 55.789654, 37.680697 55.789611)",
"z_first": -1,
"z_last": -1
},
{
"selection": "LINESTRING(37.680697 55.789611, 37.680551 55.789584, 37.680224 55.789901, 37.680197 55.789908, 37.680168 55.789905, 37.679935 55.789829)",
"z_first": -1,
"z_last": -1
},
{
"selection": "LINESTRING(37.679935 55.789829, 37.680086 55.789683, 37.679954 55.789640, 37.679911 55.789682, 37.679160 55.790415)",
"z_first": -1,
"z_last": -2
}
]
}
],
"distance": 244,
"id": "9",
"moving_duration": 232,
"platforms": null,
"routes": null,
"type": "crossing",
"waiting_duration": 0,
"waypoint": {
"comment": "250 m on foot",
"name": "Метро Сокольники · 4A",
"subtype": "pedestrian"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.679160 55.790415, 37.678544 55.791015, 37.676497 55.792584, 37.675917 55.792970, 37.675273 55.793344, 37.674479 55.793658, 37.673557 55.793959, 37.672613 55.794225, 37.671583 55.794406, 37.670553 55.794514, 37.669480 55.794563, 37.660403 55.794599, 37.659309 55.794623, 37.658279 55.794756, 37.654502 55.795286, 37.653408 55.795383, 37.652271 55.795407, 37.651241 55.795359, 37.650018 55.795190, 37.643945 55.793996, 37.642894 55.793851, 37.641950 55.793766, 37.641305 55.793735, 37.634533 55.793908)"
}
],
"platforms": [
{
"geometry": "POINT(37.679160 55.790415)",
"id": "14"
},
{
"geometry": "POINT(37.634533 55.793908)",
"id": "15"
}
]
}
],
"distance": 3033,
"id": "10",
"metro": {
"boarding_parts_suggest": [
2,
3
],
"boarding_parts_suggest_5_wagons": [
3,
4
],
"color": "#56c09c",
"exit_comment": "",
"exit_entrance_number": "",
"line_name": "Большая кольцевая линия",
"ui_direction_suggest": "towards «Рижская» station"
},
"moving_duration": 240,
"platforms": {
"penultimate_stop": ""
},
"routes": null,
"type": "passage",
"waiting_duration": 90,
"waypoint": {
"combined": false,
"comment": "",
"name": "Сокольники",
"subtype": "metro"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.634533 55.793908, 37.635736 55.793877, 37.635926 55.793872, 37.635938 55.794025, 37.635912 55.794050, 37.635899 55.794101, 37.636225 55.794247, 37.636302 55.794193, 37.636668 55.794160, 37.636653 55.794107, 37.636509 55.793613)",
"z_first": -2,
"z_last": -1
}
]
}
],
"distance": 250,
"id": "16",
"moving_duration": 195,
"platforms": null,
"routes": null,
"type": "crossing",
"waiting_duration": 0,
"waypoint": {
"comment": "crossing",
"name": "Рижская",
"subtype": "pedestrian"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.636509 55.793613, 37.636698 55.794277, 37.638788 55.807856, 37.638915 55.808717, 37.638915 55.808717, 37.639231 55.810886, 37.639660 55.812547, 37.639864 55.813308, 37.640157 55.814045, 37.640576 55.814806, 37.641154 55.816676, 37.641341 55.817512, 37.641399 55.818401, 37.641390 55.820409, 37.641420 55.821135)"
}
],
"platforms": [
{
"geometry": "POINT(37.636509 55.793613)",
"id": "22"
},
{
"geometry": "POINT(37.638915 55.808717)",
"id": "23"
},
{
"geometry": "POINT(37.641420 55.821135)",
"id": "24"
}
]
}
],
"distance": 3084,
"id": "17",
"metro": {
"boarding_parts_suggest": [
3
],
"boarding_parts_suggest_5_wagons": [
4
],
"color": "#fe7f01",
"exit_comment": "ул. Космонавтов, проспект Мира, 146, Ярославская ул., Гостиница \"Космос\"",
"exit_entrance_number": "4",
"line_name": "Калужско-Рижская линия",
"ui_direction_suggest": "towards «Медведково» station",
"ui_station_count": "1 station"
},
"moving_duration": 240,
"platforms": {
"names": [
"Алексеевская"
],
"penultimate_stop": "Алексеевская"
},
"routes": null,
"type": "passage",
"waiting_duration": 60,
"waypoint": {
"combined": false,
"comment": "",
"name": "Рижская",
"subtype": "metro"
}
},
{
"alternatives": [
{
"entrances": [
{
"color": "#fe7f01",
"exit": true,
"exit_comment": "ул. Космонавтов, проспект Мира, 146, Ярославская ул., Гостиница \"Космос\"",
"geometry": "POINT(37.641114 55.819993)",
"metro_logo": "metro_moscow_6",
"name": "ВДНХ",
"number": "4",
"show_other_station": false
}
],
"geometry": [
{
"selection": "LINESTRING(37.641420 55.821134, 37.641395 55.820528, 37.641237 55.820530, 37.641055 55.820533, 37.641044 55.820532, 37.641033 55.820527, 37.640926 55.820423, 37.640647 55.819896, 37.640486 55.819744, 37.640444 55.819671, 37.640446 55.819662, 37.640460 55.819656, 37.640507 55.819640, 37.640718 55.819839)",
"z_first": -1,
"z_last": -1
},
{
"selection": "LINESTRING(37.640718 55.819839, 37.640888 55.819781, 37.640926 55.819816)",
"z_first": -1,
"z_last": -1
},
{
"selection": "LINESTRING(37.640926 55.819816, 37.641112 55.819991)",
"z_first": -1,
"z_last": -1
},
{
"selection": "LINESTRING(37.641112 55.819991, 37.641201 55.820075, 37.641292 55.820163, 37.641339 55.820208, 37.641494 55.820353, 37.641545 55.820400, 37.642069 55.820892, 37.641883 55.820954, 37.641737 55.821003, 37.641765 55.821037, 37.641777 55.821051, 37.641767 55.821066, 37.641753 55.821076, 37.641595 55.821125, 37.641504 55.821039)",
"z_first": -1,
"z_last": 0
},
{
"selection": "LINESTRING(37.641504 55.821039, 37.641507 55.821029)",
"z_first": 0,
"z_last": 0
}
]
}
],
"distance": 431,
"id": "25",
"moving_duration": 436,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "440 m on foot",
"name": "ВДНХ",
"subtype": "pedestrian"
}
},
{
"distance": 0,
"id": "26",
"moving_duration": 0,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "You reach the destination at 18:13.",
"name": "",
"subtype": "finish"
}
}
],
"pedestrian": false,
"route_id": "moscow-ctx-back.m1/ctxrouting/17727215110000.00000",
"schedules": [
{
"origin_from": "eta",
"precise_time": "17:45",
"start_time": 63900,
"start_time_utc": 1772721900,
"type": "precise"
},
{
"origin_from": "eta",
"precise_time": "17:52",
"start_time": 64320,
"start_time_utc": 1772722320,
"type": "precise"
},
{
"origin_from": "eta",
"precise_time": "17:58",
"start_time": 64680,
"start_time_utc": 1772722680,
"type": "precise"
},
{
"origin_from": "eta",
"precise_time": "18:03",
"start_time": 64980,
"start_time_utc": 1772722980,
"type": "precise"
}
],
"total_distance": 8837,
"total_duration": 2122,
"total_walkway_distance": "on foot 19 min",
"transfer_count": 2,
"transport": [
"pedestrian",
"bus",
"trolleybus",
"tram",
"shuttle_bus",
"metro",
"suburban_train",
"funicular_railway",
"monorail",
"river_transport",
"cable_car",
"light_rail",
"premetro",
"light_metro",
"aeroexpress",
"mcd",
"mcc"
],
"waypoints": [
{
"combined": false,
"routes_names": [
"е66"
],
"subtype": "bus"
},
{
"combined": false,
"routes_names": [
"Большая кольцевая линия"
],
"subtype": "metro"
},
{
"combined": false,
"routes_names": [
"Калужско-Рижская линия"
],
"subtype": "metro"
}
]
},
{
"crossing_count": 0,
"id": "27",
"movements": [
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.697461 55.798227, 37.697219 55.798105)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.697219 55.798105, 37.696846 55.798442, 37.696773 55.798416, 37.696651 55.798526, 37.696566 55.798495, 37.696479 55.798464, 37.696468 55.798491, 37.696255 55.798682, 37.696146 55.798780, 37.696077 55.798843, 37.695057 55.799763, 37.694602 55.800173, 37.694537 55.800239, 37.694243 55.800507, 37.694229 55.800526, 37.694197 55.800540, 37.694151 55.800542, 37.692213 55.800149, 37.692207 55.800147, 37.692178 55.800202, 37.692165 55.800246)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.692165 55.800246, 37.692111 55.800420)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.692111 55.800420, 37.691998 55.800791, 37.691872 55.801172)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.691872 55.801172, 37.691668 55.801667, 37.691519 55.802111, 37.691425 55.802391, 37.691121 55.802404, 37.691043 55.802426, 37.690760 55.802501)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.690760 55.802501, 37.690329 55.802565, 37.690284 55.802572, 37.689865 55.802584, 37.689708 55.802600, 37.689474 55.802625, 37.689262 55.802597, 37.689094 55.802576, 37.688655 55.802660)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.688655 55.802660, 37.688643 55.802662)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.688643 55.802662, 37.688763 55.802770)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.688763 55.802770, 37.688736 55.802779)",
"z_first": 0,
"z_last": 0
}
]
}
],
"distance": 943,
"id": "28",
"moving_duration": 678,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "950 m on foot",
"name": "",
"subtype": "start"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.688736 55.802779, 37.691783 55.805522, 37.691783 55.805522, 37.691818 55.805554, 37.691845 55.805605, 37.691850 55.805654, 37.691833 55.805706, 37.691801 55.805749, 37.688260 55.808460, 37.688260 55.808460, 37.685191 55.810809, 37.685191 55.810809, 37.685033 55.810930, 37.684952 55.810992, 37.684916 55.811028, 37.684896 55.811062, 37.684892 55.811096, 37.684896 55.811129, 37.684909 55.811162, 37.686836 55.813675, 37.686944 55.813828, 37.686980 55.813929, 37.686960 55.814036, 37.686939 55.814092, 37.686932 55.814099, 37.686852 55.814155, 37.685514 55.815093, 37.685514 55.815093, 37.685416 55.815161, 37.685416 55.815161, 37.685287 55.815223, 37.685095 55.815285, 37.684827 55.815345, 37.683910 55.815484, 37.683910 55.815484, 37.683906 55.815485, 37.683505 55.815543, 37.683137 55.815632, 37.682842 55.815735, 37.679923 55.817113, 37.679697 55.817198, 37.679697 55.817198, 37.679452 55.817263, 37.679197 55.817316, 37.678881 55.817370, 37.678881 55.817370, 37.676014 55.817855, 37.675427 55.817966, 37.674852 55.818113, 37.670645 55.819328, 37.670645 55.819328, 37.670268 55.819436, 37.670268 55.819436, 37.670210 55.819453, 37.670210 55.819453, 37.668247 55.820018, 37.668247 55.820018, 37.667630 55.820196, 37.667630 55.820196, 37.667327 55.820283, 37.665856 55.820705, 37.665856 55.820705, 37.664176 55.821188, 37.662182 55.821803, 37.662182 55.821803, 37.658375 55.822966, 37.658375 55.822966, 37.657575 55.823211, 37.652794 55.824836, 37.652402 55.824974, 37.652402 55.824974, 37.652265 55.825022, 37.651428 55.825471, 37.651068 55.825617, 37.650897 55.825687, 37.650698 55.825761, 37.648796 55.826395)"
}
],
"platforms": [
{
"geometry": "POINT(37.688736 55.802779)",
"id": "42"
},
{
"geometry": "POINT(37.691783 55.805522)",
"id": "43"
},
{
"geometry": "POINT(37.688260 55.808460)",
"id": "44"
},
{
"geometry": "POINT(37.685191 55.810809)",
"id": "45"
},
{
"geometry": "POINT(37.685514 55.815093)",
"id": "46"
},
{
"geometry": "POINT(37.678881 55.817370)",
"id": "47"
},
{
"geometry": "POINT(37.670645 55.819328)",
"id": "48"
},
{
"geometry": "POINT(37.662182 55.821803)",
"id": "49"
},
{
"geometry": "POINT(37.658375 55.822966)",
"id": "50"
},
{
"geometry": "POINT(37.652402 55.824974)",
"id": "51"
},
{
"geometry": "POINT(37.648796 55.826395)",
"id": "52"
}
]
}
],
"distance": 4263,
"id": "29",
"moving_duration": 780,
"platforms": {
"names": [
"Большая Оленья",
"2-й Ширяевский пер.",
"Большая Ширяевская",
"Ростокинский проезд",
"Институт иностранных языков",
"Станция юных натуралистов",
"пл. Академика Люльки",
"Бориса Галушкина д.17",
"Ярославская"
]
},
"routes": [
{
"color": "#eb5a2b",
"names": [
"25"
],
"subtype": "tram",
"subtype_name": "tram"
}
],
"type": "passage",
"waiting_duration": 611,
"waypoint": {
"combined": false,
"comment": "",
"name": "Майский просек",
"subtype": "tram"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.648796 55.826395, 37.648862 55.826459)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.648862 55.826459, 37.648624 55.826537, 37.648520 55.826563, 37.648211 55.826631, 37.648173 55.826650, 37.648163 55.826660, 37.648136 55.826652, 37.648073 55.826591)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.648073 55.826591, 37.647982 55.826506)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.647982 55.826506, 37.647935 55.826465, 37.647864 55.826404, 37.647828 55.826373, 37.646517 55.825081, 37.645719 55.824322, 37.645260 55.823904, 37.645026 55.823696, 37.644816 55.823497, 37.644672 55.823352, 37.644411 55.823145, 37.643613 55.822410, 37.643656 55.822397, 37.643382 55.822134, 37.643203 55.821964, 37.643018 55.821773, 37.642977 55.821735)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.642977 55.821735, 37.642882 55.821644)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.642882 55.821644, 37.642812 55.821579, 37.642669 55.821442, 37.642378 55.821171, 37.642309 55.821107, 37.642222 55.821021, 37.642069 55.820892, 37.641883 55.820954, 37.641737 55.821003, 37.641765 55.821037, 37.641777 55.821051, 37.641767 55.821066, 37.641753 55.821076, 37.641595 55.821125, 37.641504 55.821039)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.641504 55.821039, 37.641507 55.821029)",
"z_first": 0,
"z_last": 0
}
]
}
],
"distance": 848,
"id": "53",
"moving_duration": 640,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "850 m on foot",
"name": "Проспект Мира",
"subtype": "pedestrian"
}
},
{
"distance": 0,
"id": "54",
"moving_duration": 0,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "You reach the destination at 18:23.",
"name": "",
"subtype": "finish"
}
}
],
"pedestrian": false,
"route_id": "moscow-ctx-back.m1/ctxrouting/17727215110000.00000",
"schedules": [
{
"precise_time": "18:00",
"start_time": 64800,
"start_time_utc": 1772722800,
"type": "precise"
},
{
"precise_time": "18:08",
"start_time": 65280,
"start_time_utc": 1772723280,
"type": "precise"
},
{
"precise_time": "18:16",
"start_time": 65760,
"start_time_utc": 1772723760,
"type": "precise"
},
{
"precise_time": "18:26",
"start_time": 66360,
"start_time_utc": 1772724360,
"type": "precise"
}
],
"total_distance": 6054,
"total_duration": 2709,
"total_walkway_distance": "on foot 21 min",
"transfer_count": 0,
"waypoints": [
{
"combined": false,
"routes_names": [
"25"
],
"subtype": "tram"
}
]
}
]

Other transportation types

For each option of a route by other transportation types, the duration and data about the maneuvers (full geometry, duration, and other) are calculated.

Unique IDs of each route option are returned in the id and route_id fields:

    "id": "4574667871883235027",
"route_id": "moscow-cr-back..."

You can specify the desired number of additional route options in the response.

Total duration

The duration of each route option is returned in the fields:

  • total_distance - total route length in meters.
  • total_duration - total travel time in seconds.
    "total_distance": 5904, // total route length is 5,904 meters
"total_duration": 1099, // total travel time is about 18 minutes

Building additional options

An example of building multiple route options for car:

To build multiple route options, send a POST request to /routing/7.0.0/global with the following parameters:

  • points (mandatory parameter) - array of coordinates of route points. Specify at least two points: starting and ending.

  • transport - transportation type.

  • output - result format:

    • summary - simplified output, only time and route length in the response
    • detailed - full output with route geometry
  • locale - language of text descriptions of route elements: English.

  • alternative - number of additional route options:

    • For car, taxi, or motorcycle routes: up to 10.
    • For other routes: up to 2.

Request example:

curl --request POST \
--url 'https://routing.api.2gis.com/routing/7.0.0/global?key=API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"points": [
{
"type": "stop",
"lon": 37.582591,
"lat": 55.775364
},
{
"type": "stop",
"lon": 37.656625,
"lat": 55.765036
}
],
"transport": "driving",
"output": "detailed",
"locale": "en",
"alternative": 2
}'

The list of routes returns in the result field. The first route in the list is the main one (the most optimal). Another route options may differ significantly from the main route in terms of geometry and travel time.

Response example:

response.json
{
"message": null,
"query": {
"alternative": 2,
"locale": "en",
"output": "detailed",
"points": [
{
"lat": 55.775364,
"lon": 37.582591,
"type": "stop"
},
{
"lat": 55.765036,
"lon": 37.656625,
"type": "stop"
}
],
"transport": "driving"
},
"result": [
{
"algorithm": "with traffic jams",
"begin_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.582590 55.775363, 37.583086 55.775486)"
}
},
"end_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.656553 55.765080, 37.656625 55.765036)"
}
},
"filter_road_types": [
"highway"
],
"id": "15434693436305754184",
"maneuvers": [
{
"comment": "start",
"icon": "start",
"id": "16510998112731894115",
"outcoming_path": {
"distance": 509,
"duration": 369,
"geometry": [
{
"color": "slow",
"length": 21,
"selection": "LINESTRING(37.583086 55.775486, 37.583150 55.775405, 37.583231 55.775307)",
"style": "normal"
},
{
"color": "normal",
"length": 9,
"selection": "LINESTRING(37.583231 55.775307, 37.583253 55.775281, 37.583307 55.775231)",
"style": "normal"
},
{
"color": "slow",
"length": 435,
"selection": "LINESTRING(37.583307 55.775231, 37.583444 55.775139, 37.583539 55.775074, 37.583571 55.775051, 37.583758 55.774941, 37.584051 55.774769, 37.584528 55.774490, 37.584715 55.774380, 37.584995 55.774215, 37.585056 55.774180, 37.585086 55.774162, 37.585701 55.773802, 37.586019 55.773616, 37.586202 55.773508, 37.586336 55.773430, 37.586461 55.773356, 37.586789 55.773163, 37.587075 55.772996, 37.587113 55.772973, 37.587238 55.772900, 37.587446 55.772778, 37.587668 55.772648, 37.587824 55.772557, 37.588158 55.772360, 37.588212 55.772329)",
"style": "normal"
},
{
"color": "fast",
"length": 44,
"selection": "LINESTRING(37.588212 55.772329, 37.588581 55.772112, 37.588708 55.772038)",
"style": "normal"
}
],
"names": [
"площадь Тверская Застава"
]
},
"outcoming_path_comment": "500 m straight",
"type": "begin"
},
{
"comment": "Left turn onto Васильевская",
"icon": "crossroad_left",
"id": "4858411306881101900",
"outcoming_path": {
"distance": 406,
"duration": 216,
"geometry": [
{
"color": "slow",
"length": 189,
"selection": "LINESTRING(37.588708 55.772038, 37.588824 55.772103, 37.588938 55.772168, 37.589561 55.772519, 37.589644 55.772566, 37.589753 55.772628, 37.590258 55.772912, 37.590321 55.772949, 37.590525 55.773064, 37.590635 55.773126, 37.590786 55.773209, 37.590890 55.773267)",
"style": "normal"
},
{
"color": "normal",
"length": 34,
"selection": "LINESTRING(37.590890 55.773267, 37.591282 55.773479)",
"style": "normal"
},
{
"color": "slow",
"length": 7,
"selection": "LINESTRING(37.591282 55.773479, 37.591366 55.773525)",
"style": "normal"
},
{
"color": "normal",
"length": 7,
"selection": "LINESTRING(37.591366 55.773525, 37.591436 55.773563, 37.591452 55.773572)",
"style": "normal"
},
{
"color": "fast",
"length": 26,
"selection": "LINESTRING(37.591452 55.773572, 37.591751 55.773734)",
"style": "normal"
},
{
"color": "normal",
"length": 55,
"selection": "LINESTRING(37.591751 55.773734, 37.592280 55.774022, 37.592386 55.774079)",
"style": "normal"
},
{
"color": "fast",
"length": 88,
"selection": "LINESTRING(37.592386 55.774079, 37.592468 55.774124, 37.593101 55.774468, 37.593299 55.774576, 37.593407 55.774635)",
"style": "normal"
}
],
"names": [
"Васильевская"
]
},
"outcoming_path_comment": "400 m straight",
"turn_angle": -91,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "Right turn onto 4-я Тверская-Ямская",
"icon": "crossroad_right",
"id": "8003260754297908536",
"outcoming_path": {
"distance": 488,
"duration": 606,
"geometry": [
{
"color": "slow",
"length": 305,
"selection": "LINESTRING(37.593407 55.774635, 37.593491 55.774586, 37.593856 55.774372, 37.594049 55.774259, 37.594318 55.774102, 37.594686 55.773886, 37.594774 55.773836, 37.594863 55.773783, 37.594953 55.773731, 37.595721 55.773282, 37.595961 55.773142, 37.596416 55.772876, 37.596750 55.772681, 37.596834 55.772632)",
"style": "normal"
},
{
"color": "slow-jams",
"length": 183,
"selection": "LINESTRING(37.596834 55.772632, 37.596908 55.772588, 37.597141 55.772452, 37.597349 55.772331, 37.597721 55.772113, 37.598051 55.771921, 37.598556 55.771625, 37.598820 55.771471, 37.598908 55.771419)",
"style": "normal"
}
],
"names": [
"4-я Тверская-Ямская"
]
},
"outcoming_path_comment": "500 m straight",
"turn_angle": 90,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto Оружейный переулок",
"icon": "crossroad_right",
"id": "9785946412154154676",
"outcoming_path": {
"distance": 89,
"duration": 76,
"geometry": [
{
"color": "slow",
"length": 89,
"selection": "LINESTRING(37.598908 55.771419, 37.597742 55.770949)",
"style": "normal"
}
],
"names": [
"Оружейный переулок"
]
},
"outcoming_path_comment": "90 m straight",
"turn_angle": 98,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Keep left",
"icon": "crossroad_keep_left",
"id": "3557759040780820962",
"outcoming_path": {
"distance": 112,
"duration": 90,
"geometry": [
{
"color": "slow",
"length": 112,
"selection": "LINESTRING(37.597742 55.770949, 37.597322 55.770779, 37.597245 55.770734, 37.597197 55.770689, 37.597175 55.770645, 37.597174 55.770599, 37.597186 55.770557, 37.597215 55.770514, 37.597261 55.770473, 37.597375 55.770397, 37.597450 55.770347, 37.597491 55.770320, 37.597716 55.770172)",
"style": "normal"
}
],
"names": []
},
"outcoming_path_comment": "100 m straight",
"turn_angle": -29,
"turn_direction": "keep_left",
"type": "crossroad"
},
{
"comment": "Left turn onto Садовая-Триумфальная",
"icon": "crossroad_left",
"id": "4078801550327366508",
"outcoming_path": {
"distance": 4041,
"duration": 577,
"geometry": [
{
"color": "slow",
"length": 476,
"selection": "LINESTRING(37.597716 55.770172, 37.597809 55.770140, 37.597831 55.770135, 37.597862 55.770132, 37.597883 55.770133, 37.597914 55.770137, 37.598008 55.770158, 37.598076 55.770192, 37.598210 55.770249, 37.599275 55.770728, 37.599882 55.770936, 37.600050 55.770989, 37.600407 55.771103, 37.600831 55.771230, 37.600914 55.771254, 37.600957 55.771272, 37.601329 55.771460, 37.602336 55.771763, 37.602421 55.771789, 37.602861 55.771922, 37.603929 55.772247, 37.604227 55.772338)",
"style": "normal"
},
{
"color": "normal",
"length": 20,
"selection": "LINESTRING(37.604227 55.772338, 37.604516 55.772426)",
"style": "normal"
},
{
"color": "slow",
"length": 240,
"selection": "LINESTRING(37.604516 55.772426, 37.605210 55.772564, 37.605213 55.772565, 37.605268 55.772575, 37.605728 55.772651, 37.605822 55.772664, 37.607062 55.772839, 37.607333 55.772877, 37.607382 55.772884, 37.608251 55.772986)",
"style": "normal"
},
{
"color": "normal",
"length": 156,
"selection": "LINESTRING(37.608251 55.772986, 37.608986 55.773080, 37.609121 55.773096, 37.609234 55.773109, 37.610156 55.773194, 37.610728 55.773247)",
"style": "normal"
},
{
"color": "fast",
"length": 416,
"selection": "LINESTRING(37.610728 55.773247, 37.611026 55.773277, 37.611498 55.773310, 37.612248 55.773363, 37.612442 55.773370, 37.613457 55.773408, 37.615054 55.773470, 37.617345 55.773557)",
"style": "normal"
},
{
"color": "fast",
"length": 370,
"selection": "LINESTRING(37.617345 55.773557, 37.619000 55.773621, 37.619209 55.773628, 37.621035 55.773684, 37.621922 55.773690, 37.623161 55.773671, 37.623250 55.773668)",
"style": "bridge"
},
{
"color": "normal",
"length": 250,
"selection": "LINESTRING(37.623250 55.773668, 37.624510 55.773622, 37.625672 55.773548, 37.625906 55.773531, 37.626549 55.773483, 37.627213 55.773398)",
"style": "normal"
},
{
"color": "slow",
"length": 325,
"selection": "LINESTRING(37.627213 55.773398, 37.627407 55.773378, 37.627898 55.773317, 37.628220 55.773274, 37.629057 55.773153, 37.630300 55.772978, 37.630537 55.772946, 37.631810 55.772768, 37.631859 55.772761, 37.632302 55.772699)",
"style": "normal"
},
{
"color": "normal",
"length": 61,
"selection": "LINESTRING(37.632302 55.772699, 37.632528 55.772668, 37.633038 55.772597, 37.633286 55.772569)",
"style": "normal"
},
{
"color": "fast",
"length": 614,
"selection": "LINESTRING(37.633286 55.772569, 37.633809 55.772511, 37.635934 55.772276, 37.636482 55.772197, 37.636863 55.772130, 37.637246 55.772053, 37.637383 55.772024, 37.637746 55.771946, 37.638398 55.771787, 37.638671 55.771709, 37.639223 55.771539, 37.639458 55.771467, 37.640138 55.771258, 37.641596 55.770815, 37.642386 55.770573)",
"style": "normal"
},
{
"color": "normal",
"length": 38,
"selection": "LINESTRING(37.642386 55.770573, 37.642720 55.770474, 37.642942 55.770406)",
"style": "normal"
},
{
"color": "fast",
"length": 99,
"selection": "LINESTRING(37.642942 55.770406, 37.643525 55.770234, 37.643708 55.770178, 37.643975 55.770092, 37.644348 55.769976)",
"style": "normal"
},
{
"color": "normal",
"length": 93,
"selection": "LINESTRING(37.644348 55.769976, 37.644647 55.769882, 37.645657 55.769580)",
"style": "normal"
},
{
"color": "fast",
"length": 32,
"selection": "LINESTRING(37.645657 55.769580, 37.645818 55.769531, 37.646121 55.769442)",
"style": "normal"
},
{
"color": "normal",
"length": 76,
"selection": "LINESTRING(37.646121 55.769442, 37.646389 55.769364, 37.647223 55.769158)",
"style": "normal"
},
{
"color": "fast",
"length": 746,
"selection": "LINESTRING(37.647223 55.769158, 37.647789 55.769017, 37.648564 55.768776, 37.649337 55.768557, 37.649691 55.768459, 37.649817 55.768424, 37.649886 55.768391, 37.650113 55.768283, 37.650280 55.768171, 37.651022 55.767635, 37.651497 55.767307, 37.651966 55.766988, 37.652654 55.766522, 37.653423 55.765990, 37.653591 55.765874, 37.653911 55.765652, 37.654967 55.764923, 37.655597 55.764466)",
"style": "normal"
},
{
"color": "normal",
"length": 29,
"selection": "LINESTRING(37.655597 55.764466, 37.655881 55.764258)",
"style": "normal"
}
],
"names": [
"Садовая-Триумфальная"
]
},
"outcoming_path_comment": "4 km straight",
"turn_angle": -91,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "U-turn on Садовая-Черногрязская",
"icon": "turn_over_right_hand",
"id": "2039111750062422466",
"outcoming_path": {
"distance": 71,
"duration": 18,
"geometry": [
{
"color": "fast",
"length": 22,
"selection": "LINESTRING(37.655881 55.764258, 37.655917 55.764246, 37.655955 55.764239, 37.655993 55.764237, 37.656027 55.764240, 37.656049 55.764245, 37.656067 55.764253, 37.656086 55.764271, 37.656095 55.764288, 37.656094 55.764310, 37.656076 55.764339)",
"style": "normal"
},
{
"color": "slow",
"length": 49,
"selection": "LINESTRING(37.656076 55.764339, 37.655591 55.764691)",
"style": "normal"
}
],
"names": [
"Садовая-Черногрязская"
]
},
"outcoming_path_comment": "70 m straight",
"turn_angle": -180,
"turn_direction": "uturn_left",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "3374916784957347225",
"outcoming_path": {
"distance": 36,
"duration": 10,
"geometry": [
{
"color": "ignore",
"length": 21,
"selection": "LINESTRING(37.655591 55.764691, 37.655782 55.764778, 37.655867 55.764818)",
"style": "living_zone"
},
{
"color": "ignore",
"length": 12,
"selection": "LINESTRING(37.655867 55.764818, 37.656014 55.764887)",
"style": "archway"
},
{
"color": "ignore",
"length": 3,
"selection": "LINESTRING(37.656014 55.764887, 37.656064 55.764909)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "40 m straight",
"turn_angle": 89,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "16520000395922733102",
"outcoming_path": {
"distance": 93,
"duration": 26,
"geometry": [
{
"color": "ignore",
"length": 93,
"selection": "LINESTRING(37.656064 55.764909, 37.656554 55.764570, 37.656591 55.764558, 37.656635 55.764560, 37.656674 55.764578, 37.656728 55.764601, 37.656741 55.764609, 37.656749 55.764617, 37.656755 55.764630, 37.656755 55.764641, 37.656749 55.764655, 37.656538 55.764857)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "90 m straight",
"turn_angle": 90,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Left turn",
"icon": "crossroad_left",
"id": "5796619541100489636",
"outcoming_path": {
"distance": 21,
"duration": 6,
"geometry": [
{
"color": "ignore",
"length": 21,
"selection": "LINESTRING(37.656538 55.764857, 37.656510 55.764857, 37.656485 55.764865, 37.656303 55.764992)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "20 m straight",
"turn_angle": -46,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "2294927100513899200",
"outcoming_path": {
"distance": 18,
"duration": 5,
"geometry": [
{
"color": "ignore",
"length": 18,
"selection": "LINESTRING(37.656303 55.764992, 37.656543 55.765075, 37.656553 55.765080)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "20 m straight",
"turn_angle": 91,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "finish",
"icon": "finish",
"id": "16377021944685554640",
"outcoming_path_comment": "You have arrived!",
"type": "end"
}
],
"reliability": 0.0,
"route_id": "moscow-cr-back.m9/carrouting/1772721451.195975",
"total_distance": 5884,
"total_duration": 1999,
"type": "carrouting",
"ui_total_distance": {
"unit": "km",
"value": "5.9"
},
"ui_total_duration": "33 min",
"waypoints": [
{
"original_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"projected_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"transit": false
},
{
"original_point": {
"lat": 55.76508099601444,
"lon": 37.65655367382703
},
"projected_point": {
"lat": 55.76508099601444,
"lon": 37.65655367382703
},
"transit": false
}
]
},
{
"algorithm": "with traffic jams",
"begin_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.582590 55.775363, 37.583086 55.775486)"
}
},
"end_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.656553 55.765080, 37.656625 55.765036)"
}
},
"filter_road_types": [
"highway"
],
"id": "6868622370641906431",
"maneuvers": [
{
"comment": "start",
"icon": "start",
"id": "12113720034040711045",
"outcoming_path": {
"distance": 30,
"duration": 14,
"geometry": [
{
"color": "slow",
"length": 21,
"selection": "LINESTRING(37.583086 55.775486, 37.583150 55.775405, 37.583231 55.775307)",
"style": "normal"
},
{
"color": "normal",
"length": 9,
"selection": "LINESTRING(37.583231 55.775307, 37.583253 55.775281, 37.583307 55.775231)",
"style": "normal"
}
],
"names": [
"площадь Тверская Застава"
]
},
"outcoming_path_comment": "30 m straight",
"type": "begin"
},
{
"comment": "Left turn onto Лесная",
"icon": "crossroad_left",
"id": "12503451335720706359",
"outcoming_path": {
"distance": 1611,
"duration": 932,
"geometry": [
{
"color": "fast",
"length": 18,
"selection": "LINESTRING(37.583307 55.775231, 37.583561 55.775318)",
"style": "normal"
},
{
"color": "normal",
"length": 58,
"selection": "LINESTRING(37.583561 55.775318, 37.583628 55.775341, 37.583734 55.775385, 37.583827 55.775434, 37.584035 55.775570, 37.584217 55.775689)",
"style": "normal"
},
{
"color": "slow",
"length": 72,
"selection": "LINESTRING(37.584217 55.775689, 37.584347 55.775775, 37.584624 55.775956, 37.584979 55.776188)",
"style": "normal"
},
{
"color": "fast",
"length": 16,
"selection": "LINESTRING(37.584979 55.776188, 37.585058 55.776240, 37.585154 55.776303)",
"style": "normal"
},
{
"color": "fast",
"length": 15,
"selection": "LINESTRING(37.585154 55.776303, 37.585381 55.776355)",
"style": "normal"
},
{
"color": "slow",
"length": 50,
"selection": "LINESTRING(37.585381 55.776355, 37.585568 55.776469, 37.585606 55.776493, 37.585928 55.776703)",
"style": "normal"
},
{
"color": "slow-jams",
"length": 80,
"selection": "LINESTRING(37.585928 55.776703, 37.586761 55.777249)",
"style": "normal"
},
{
"color": "slow",
"length": 97,
"selection": "LINESTRING(37.586761 55.777249, 37.586856 55.777311, 37.586989 55.777398, 37.587695 55.777860, 37.587795 55.777926)",
"style": "normal"
},
{
"color": "normal",
"length": 9,
"selection": "LINESTRING(37.587795 55.777926, 37.587892 55.777989)",
"style": "normal"
},
{
"color": "slow",
"length": 22,
"selection": "LINESTRING(37.587892 55.777989, 37.588015 55.778070, 37.588131 55.778146)",
"style": "normal"
},
{
"color": "normal",
"length": 268,
"selection": "LINESTRING(37.588131 55.778146, 37.588287 55.778248, 37.588722 55.778533, 37.588931 55.778670, 37.589150 55.778813, 37.589410 55.778983, 37.589655 55.779143, 37.589936 55.779327, 37.590093 55.779430, 37.590182 55.779488, 37.590750 55.779860, 37.590969 55.780004)",
"style": "normal"
},
{
"color": "slow",
"length": 176,
"selection": "LINESTRING(37.590969 55.780004, 37.591423 55.780301, 37.592541 55.781033, 37.592689 55.781130, 37.592821 55.781220)",
"style": "normal"
},
{
"color": "normal",
"length": 183,
"selection": "LINESTRING(37.592821 55.781220, 37.594679 55.782489)",
"style": "normal"
},
{
"color": "slow",
"length": 110,
"selection": "LINESTRING(37.594679 55.782489, 37.595367 55.782959, 37.595551 55.783085, 37.595813 55.783264)",
"style": "normal"
},
{
"color": "slow-jams",
"length": 92,
"selection": "LINESTRING(37.595813 55.783264, 37.596360 55.783637, 37.596629 55.783821, 37.596761 55.783912)",
"style": "normal"
},
{
"color": "slow",
"length": 12,
"selection": "LINESTRING(37.596761 55.783912, 37.596829 55.783958, 37.596893 55.784000)",
"style": "normal"
},
{
"color": "fast",
"length": 15,
"selection": "LINESTRING(37.596893 55.784000, 37.596933 55.784026, 37.597004 55.784072, 37.597044 55.784093, 37.597062 55.784101, 37.597064 55.784101)",
"style": "normal"
},
{
"color": "slow",
"length": 262,
"selection": "LINESTRING(37.597064 55.784101, 37.597092 55.784108, 37.597177 55.784123, 37.597250 55.784135, 37.597404 55.784160, 37.597592 55.784191, 37.597841 55.784231, 37.597988 55.784256, 37.598114 55.784276, 37.598477 55.784335, 37.599052 55.784429, 37.599461 55.784496, 37.599993 55.784583, 37.600291 55.784631, 37.600746 55.784705, 37.601037 55.784752, 37.601172 55.784774)",
"style": "normal"
},
{
"color": "normal",
"length": 56,
"selection": "LINESTRING(37.601172 55.784774, 37.601378 55.784821, 37.601541 55.784879, 37.601680 55.784971, 37.601766 55.785054, 37.601801 55.785119)",
"style": "normal"
}
],
"names": [
"Лесная"
]
},
"outcoming_path_comment": "1.6 km straight",
"turn_angle": -92,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "Right turn onto Перуновский переулок",
"icon": "crossroad_right",
"id": "12216559050081115162",
"outcoming_path": {
"distance": 120,
"duration": 43,
"geometry": [
{
"color": "normal",
"length": 65,
"selection": "LINESTRING(37.601801 55.785119, 37.601885 55.785126, 37.602044 55.785139, 37.602084 55.785142, 37.602256 55.785153, 37.602848 55.785197)",
"style": "normal"
},
{
"color": "fast",
"length": 55,
"selection": "LINESTRING(37.602848 55.785197, 37.603200 55.785222, 37.603617 55.785252, 37.603731 55.785261)",
"style": "normal"
}
],
"names": [
"Перуновский переулок"
]
},
"outcoming_path_comment": "100 m straight",
"turn_angle": 51,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto Новосущёвская",
"icon": "crossroad_right",
"id": "3006654607749868300",
"outcoming_path": {
"distance": 1166,
"duration": 304,
"geometry": [
{
"color": "fast",
"length": 379,
"selection": "LINESTRING(37.603731 55.785261, 37.603748 55.785227, 37.603838 55.785045, 37.603900 55.784916, 37.604306 55.784092, 37.604341 55.784030, 37.604393 55.783976, 37.604464 55.783929, 37.604509 55.783901, 37.604919 55.783651, 37.605148 55.783512, 37.605633 55.783216, 37.605802 55.783114, 37.606286 55.782818, 37.606713 55.782558, 37.606780 55.782511, 37.606862 55.782454, 37.606942 55.782398)",
"style": "normal"
},
{
"color": "normal",
"length": 214,
"selection": "LINESTRING(37.606942 55.782398, 37.606988 55.782358, 37.607108 55.782250, 37.607812 55.781515, 37.608248 55.781059, 37.608343 55.780960, 37.608417 55.780882, 37.608428 55.780871, 37.608483 55.780814, 37.608511 55.780785, 37.608591 55.780723, 37.608608 55.780710, 37.608624 55.780699)",
"style": "normal"
},
{
"color": "fast",
"length": 113,
"selection": "LINESTRING(37.608624 55.780699, 37.608696 55.780656, 37.608825 55.780591, 37.609103 55.780467, 37.609257 55.780385, 37.609404 55.780325, 37.609585 55.780264, 37.609642 55.780251, 37.609759 55.780224, 37.610150 55.780150)",
"style": "normal"
},
{
"color": "normal",
"length": 8,
"selection": "LINESTRING(37.610150 55.780150, 37.610279 55.780126)",
"style": "normal"
},
{
"color": "fast",
"length": 230,
"selection": "LINESTRING(37.610279 55.780126, 37.610367 55.780109, 37.610840 55.780019, 37.610996 55.779990, 37.611399 55.779914, 37.611754 55.779847, 37.611916 55.779816, 37.612170 55.779768, 37.612303 55.779743, 37.612389 55.779726, 37.612456 55.779714, 37.612490 55.779702, 37.612570 55.779673, 37.612590 55.779663, 37.612658 55.779625, 37.613070 55.779407, 37.613375 55.779244, 37.613464 55.779197, 37.613590 55.779145)",
"style": "normal"
},
{
"color": "normal",
"length": 222,
"selection": "LINESTRING(37.613590 55.779145, 37.613598 55.779142, 37.613729 55.779101, 37.613818 55.779085, 37.613984 55.779054, 37.614109 55.779031, 37.614316 55.778993, 37.614699 55.778923, 37.615096 55.778849, 37.615129 55.778843, 37.615576 55.778760, 37.615670 55.778743, 37.616112 55.778661, 37.616179 55.778649, 37.616279 55.778631, 37.616525 55.778584, 37.616981 55.778501, 37.617036 55.778491)",
"style": "normal"
}
],
"names": [
"Новосущёвская"
]
},
"outcoming_path_comment": "1.2 km straight",
"turn_angle": 82,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto Самотёчная",
"icon": "crossroad_right",
"id": "11622605499940013945",
"outcoming_path": {
"distance": 575,
"duration": 193,
"geometry": [
{
"color": "normal",
"length": 351,
"selection": "LINESTRING(37.617036 55.778491, 37.617240 55.778446, 37.617360 55.778409, 37.617400 55.778391, 37.617459 55.778363, 37.617539 55.778322, 37.617600 55.778273, 37.617790 55.778051, 37.617838 55.777995, 37.617956 55.777857, 37.617986 55.777822, 37.618144 55.777389, 37.618515 55.776374, 37.618532 55.776331, 37.618547 55.776294, 37.618573 55.776192, 37.618599 55.776016, 37.618626 55.775822, 37.618659 55.775599, 37.618667 55.775542)",
"style": "normal"
},
{
"color": "normal",
"length": 100,
"selection": "LINESTRING(37.618667 55.775542, 37.618670 55.775513, 37.618745 55.775001, 37.618797 55.774634)",
"style": "normal"
},
{
"color": "normal",
"length": 79,
"selection": "LINESTRING(37.618797 55.774634, 37.618849 55.774273, 37.618865 55.774167, 37.618901 55.773913)",
"style": "normal"
},
{
"color": "slow",
"length": 7,
"selection": "LINESTRING(37.618901 55.773913, 37.618911 55.773842)",
"style": "normal"
},
{
"color": "slow-jams",
"length": 38,
"selection": "LINESTRING(37.618911 55.773842, 37.618961 55.773498)",
"style": "normal"
}
],
"names": [
"Самотёчная"
]
},
"outcoming_path_comment": "600 m straight",
"turn_angle": 60,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Left turn onto Садовая-Сухаревская дублёр",
"icon": "crossroad_left",
"id": "7582486122484613281",
"outcoming_path": {
"distance": 2625,
"duration": 326,
"geometry": [
{
"color": "normal",
"length": 51,
"selection": "LINESTRING(37.618961 55.773498, 37.619222 55.773508, 37.619778 55.773524)",
"style": "normal"
},
{
"color": "fast",
"length": 49,
"selection": "LINESTRING(37.619778 55.773524, 37.620570 55.773551)",
"style": "normal"
},
{
"color": "normal",
"length": 62,
"selection": "LINESTRING(37.620570 55.773551, 37.620857 55.773562, 37.621337 55.773564, 37.621577 55.773566)",
"style": "normal"
},
{
"color": "fast",
"length": 58,
"selection": "LINESTRING(37.621577 55.773566, 37.621840 55.773568, 37.621936 55.773570, 37.622107 55.773569, 37.622523 55.773569)",
"style": "normal"
},
{
"color": "normal",
"length": 292,
"selection": "LINESTRING(37.622523 55.773569, 37.622848 55.773564, 37.623165 55.773560, 37.623794 55.773538, 37.624412 55.773516, 37.624501 55.773513, 37.624651 55.773503, 37.626117 55.773400, 37.626327 55.773391, 37.627213 55.773398)",
"style": "normal"
},
{
"color": "slow",
"length": 325,
"selection": "LINESTRING(37.627213 55.773398, 37.627407 55.773378, 37.627898 55.773317, 37.628220 55.773274, 37.629057 55.773153, 37.630300 55.772978, 37.630537 55.772946, 37.631810 55.772768, 37.631859 55.772761, 37.632302 55.772699)",
"style": "normal"
},
{
"color": "normal",
"length": 61,
"selection": "LINESTRING(37.632302 55.772699, 37.632528 55.772668, 37.633038 55.772597, 37.633286 55.772569)",
"style": "normal"
},
{
"color": "fast",
"length": 614,
"selection": "LINESTRING(37.633286 55.772569, 37.633809 55.772511, 37.635934 55.772276, 37.636482 55.772197, 37.636863 55.772130, 37.637246 55.772053, 37.637383 55.772024, 37.637746 55.771946, 37.638398 55.771787, 37.638671 55.771709, 37.639223 55.771539, 37.639458 55.771467, 37.640138 55.771258, 37.641596 55.770815, 37.642386 55.770573)",
"style": "normal"
},
{
"color": "normal",
"length": 38,
"selection": "LINESTRING(37.642386 55.770573, 37.642720 55.770474, 37.642942 55.770406)",
"style": "normal"
},
{
"color": "fast",
"length": 99,
"selection": "LINESTRING(37.642942 55.770406, 37.643525 55.770234, 37.643708 55.770178, 37.643975 55.770092, 37.644348 55.769976)",
"style": "normal"
},
{
"color": "normal",
"length": 93,
"selection": "LINESTRING(37.644348 55.769976, 37.644647 55.769882, 37.645657 55.769580)",
"style": "normal"
},
{
"color": "fast",
"length": 32,
"selection": "LINESTRING(37.645657 55.769580, 37.645818 55.769531, 37.646121 55.769442)",
"style": "normal"
},
{
"color": "normal",
"length": 76,
"selection": "LINESTRING(37.646121 55.769442, 37.646389 55.769364, 37.647223 55.769158)",
"style": "normal"
},
{
"color": "fast",
"length": 746,
"selection": "LINESTRING(37.647223 55.769158, 37.647789 55.769017, 37.648564 55.768776, 37.649337 55.768557, 37.649691 55.768459, 37.649817 55.768424, 37.649886 55.768391, 37.650113 55.768283, 37.650280 55.768171, 37.651022 55.767635, 37.651497 55.767307, 37.651966 55.766988, 37.652654 55.766522, 37.653423 55.765990, 37.653591 55.765874, 37.653911 55.765652, 37.654967 55.764923, 37.655597 55.764466)",
"style": "normal"
},
{
"color": "normal",
"length": 29,
"selection": "LINESTRING(37.655597 55.764466, 37.655881 55.764258)",
"style": "normal"
}
],
"names": [
"Садовая-Сухаревская дублёр"
]
},
"outcoming_path_comment": "2.6 km straight",
"turn_angle": -88,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "U-turn on Садовая-Черногрязская",
"icon": "turn_over_right_hand",
"id": "8213683708304625208",
"outcoming_path": {
"distance": 71,
"duration": 17,
"geometry": [
{
"color": "fast",
"length": 22,
"selection": "LINESTRING(37.655881 55.764258, 37.655917 55.764246, 37.655955 55.764239, 37.655993 55.764237, 37.656027 55.764240, 37.656049 55.764245, 37.656067 55.764253, 37.656086 55.764271, 37.656095 55.764288, 37.656094 55.764310, 37.656076 55.764339)",
"style": "normal"
},
{
"color": "slow",
"length": 49,
"selection": "LINESTRING(37.656076 55.764339, 37.655591 55.764691)",
"style": "normal"
}
],
"names": [
"Садовая-Черногрязская"
]
},
"outcoming_path_comment": "70 m straight",
"turn_angle": -180,
"turn_direction": "uturn_left",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "1642691799970590414",
"outcoming_path": {
"distance": 36,
"duration": 10,
"geometry": [
{
"color": "ignore",
"length": 21,
"selection": "LINESTRING(37.655591 55.764691, 37.655782 55.764778, 37.655867 55.764818)",
"style": "living_zone"
},
{
"color": "ignore",
"length": 12,
"selection": "LINESTRING(37.655867 55.764818, 37.656014 55.764887)",
"style": "archway"
},
{
"color": "ignore",
"length": 3,
"selection": "LINESTRING(37.656014 55.764887, 37.656064 55.764909)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "40 m straight",
"turn_angle": 89,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "5409235035443997842",
"outcoming_path": {
"distance": 93,
"duration": 26,
"geometry": [
{
"color": "ignore",
"length": 93,
"selection": "LINESTRING(37.656064 55.764909, 37.656554 55.764570, 37.656591 55.764558, 37.656635 55.764560, 37.656674 55.764578, 37.656728 55.764601, 37.656741 55.764609, 37.656749 55.764617, 37.656755 55.764630, 37.656755 55.764641, 37.656749 55.764655, 37.656538 55.764857)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "90 m straight",
"turn_angle": 90,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Left turn",
"icon": "crossroad_left",
"id": "745121347358889617",
"outcoming_path": {
"distance": 21,
"duration": 6,
"geometry": [
{
"color": "ignore",
"length": 21,
"selection": "LINESTRING(37.656538 55.764857, 37.656510 55.764857, 37.656485 55.764865, 37.656303 55.764992)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "20 m straight",
"turn_angle": -46,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "17617848690970733494",
"outcoming_path": {
"distance": 18,
"duration": 5,
"geometry": [
{
"color": "ignore",
"length": 18,
"selection": "LINESTRING(37.656303 55.764992, 37.656543 55.765075, 37.656553 55.765080)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "20 m straight",
"turn_angle": 91,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "finish",
"icon": "finish",
"id": "16377021944685554640",
"outcoming_path_comment": "You have arrived!",
"type": "end"
}
],
"reliability": 0.0,
"route_id": "moscow-cr-back.m9/carrouting/1772721451.197850",
"total_distance": 6366,
"total_duration": 1876,
"type": "carrouting",
"ui_total_distance": {
"unit": "km",
"value": "6.4"
},
"ui_total_duration": "31 min",
"waypoints": [
{
"original_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"projected_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"transit": false
},
{
"original_point": {
"lat": 55.76508099601444,
"lon": 37.65655367382703
},
"projected_point": {
"lat": 55.76508099601444,
"lon": 37.65655367382703
},
"transit": false
}
]
},
{
"algorithm": "with traffic jams",
"begin_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.582590 55.775363, 37.583086 55.775486)"
}
},
"end_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.656553 55.765080, 37.656625 55.765036)"
}
},
"filter_road_types": [
"highway"
],
"id": "8077240167161531846",
"maneuvers": [
{
"comment": "start",
"icon": "start",
"id": "6355349662430236080",
"outcoming_path": {
"distance": 1018,
"duration": 552,
"geometry": [
{
"color": "slow",
"length": 21,
"selection": "LINESTRING(37.583086 55.775486, 37.583150 55.775405, 37.583231 55.775307)",
"style": "normal"
},
{
"color": "normal",
"length": 9,
"selection": "LINESTRING(37.583231 55.775307, 37.583253 55.775281, 37.583307 55.775231)",
"style": "normal"
},
{
"color": "slow",
"length": 590,
"selection": "LINESTRING(37.583307 55.775231, 37.583444 55.775139, 37.583539 55.775074, 37.583571 55.775051, 37.583758 55.774941, 37.584051 55.774769, 37.584528 55.774490, 37.584715 55.774380, 37.584995 55.774215, 37.585056 55.774180, 37.585086 55.774162, 37.585701 55.773802, 37.586019 55.773616, 37.586202 55.773508, 37.586336 55.773430, 37.586461 55.773356, 37.586789 55.773163, 37.587075 55.772996, 37.587113 55.772973, 37.587238 55.772900, 37.587446 55.772778, 37.587668 55.772648, 37.587824 55.772557, 37.588158 55.772360, 37.588212 55.772329, 37.588581 55.772112, 37.588708 55.772038, 37.588822 55.771970, 37.589876 55.771353, 37.589952 55.771308)",
"style": "normal"
},
{
"color": "normal",
"length": 192,
"selection": "LINESTRING(37.589952 55.771308, 37.590055 55.771248, 37.590487 55.770994, 37.590573 55.770943, 37.590753 55.770838, 37.591406 55.770455, 37.592022 55.770093, 37.592101 55.770047)",
"style": "normal"
},
{
"color": "slow",
"length": 206,
"selection": "LINESTRING(37.592101 55.770047, 37.592212 55.769983, 37.592449 55.769843, 37.592770 55.769654, 37.593209 55.769397, 37.593661 55.769131, 37.593700 55.769108, 37.593817 55.769040, 37.593994 55.768937, 37.594028 55.768916, 37.594239 55.768793, 37.594289 55.768763, 37.594431 55.768680)",
"style": "normal"
}
],
"names": [
"площадь Тверская Застава"
]
},
"outcoming_path_comment": "1 km straight",
"type": "begin"
},
{
"comment": "Right turn onto Большая Садовая",
"icon": "crossroad_right",
"id": "17181206529283844123",
"outcoming_path": {
"distance": 1626,
"duration": 298,
"geometry": [
{
"color": "normal",
"length": 170,
"selection": "LINESTRING(37.594431 55.768680, 37.594346 55.768628, 37.593543 55.768059, 37.593308 55.767862, 37.592814 55.767453)",
"style": "normal"
},
{
"color": "fast",
"length": 257,
"selection": "LINESTRING(37.592814 55.767453, 37.592717 55.767386, 37.592365 55.767140, 37.591674 55.766659, 37.591448 55.766501, 37.591024 55.766200, 37.590734 55.765995, 37.590646 55.765932, 37.590323 55.765704, 37.590212 55.765625)",
"style": "normal"
},
{
"color": "normal",
"length": 792,
"selection": "LINESTRING(37.590212 55.765625, 37.589852 55.765370, 37.589556 55.765142, 37.589238 55.764885, 37.588929 55.764616, 37.588592 55.764313, 37.588277 55.764015, 37.588007 55.763744, 37.587735 55.763438, 37.587531 55.763196, 37.587417 55.763061, 37.587347 55.762978, 37.586968 55.762487, 37.586911 55.762414, 37.586792 55.762252, 37.586305 55.761590, 37.586265 55.761535, 37.585827 55.760940, 37.585436 55.760408, 37.585400 55.760360, 37.585361 55.760297, 37.585229 55.760091, 37.584994 55.759724, 37.584986 55.759712, 37.584873 55.759517, 37.584848 55.759474, 37.584719 55.759224, 37.584702 55.759192)",
"style": "normal"
},
{
"color": "normal",
"length": 41,
"selection": "LINESTRING(37.584702 55.759192, 37.584583 55.758920, 37.584552 55.758831)",
"style": "normal"
},
{
"color": "normal",
"length": 244,
"selection": "LINESTRING(37.584552 55.758831, 37.584540 55.758798, 37.584481 55.758631, 37.584447 55.758512, 37.584395 55.758321, 37.584344 55.758079, 37.584186 55.757315, 37.584176 55.757269, 37.584125 55.757023, 37.584043 55.756629)",
"style": "normal"
},
{
"color": "fast",
"length": 122,
"selection": "LINESTRING(37.584043 55.756629, 37.583822 55.755538)",
"style": "normal"
}
],
"names": [
"Большая Садовая"
]
},
"outcoming_path_comment": "1.6 km straight",
"turn_angle": 83,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Keep right on Новинский бульвар",
"icon": "crossroad_keep_right",
"id": "10675149391242650323",
"outcoming_path": {
"distance": 287,
"duration": 42,
"geometry": [
{
"color": "normal",
"length": 287,
"selection": "LINESTRING(37.583822 55.755538, 37.583700 55.755320, 37.583677 55.755270, 37.583651 55.755185, 37.583580 55.754874, 37.583460 55.754497, 37.583368 55.754261, 37.583347 55.754147, 37.583324 55.754018, 37.583209 55.753360, 37.583139 55.752970)",
"style": "normal"
}
],
"names": [
"Новинский бульвар"
]
},
"outcoming_path_comment": "300 m straight",
"turn_angle": 10,
"turn_direction": "keep_right",
"type": "crossroad"
},
{
"comment": "U-turn on Новинский бульвар",
"icon": "turn_over_right_hand",
"id": "5410189847226050853",
"outcoming_path": {
"distance": 91,
"duration": 13,
"geometry": [
{
"color": "fast",
"length": 45,
"selection": "LINESTRING(37.583139 55.752970, 37.583154 55.752938, 37.583184 55.752911, 37.583221 55.752892, 37.583281 55.752879, 37.583339 55.752872, 37.583584 55.752866, 37.583623 55.752870, 37.583655 55.752880, 37.583683 55.752898, 37.583702 55.752933)",
"style": "normal"
},
{
"color": "normal",
"length": 46,
"selection": "LINESTRING(37.583702 55.752933, 37.583775 55.753348)",
"style": "normal"
}
],
"names": [
"Новинский бульвар"
]
},
"outcoming_path_comment": "90 m straight",
"turn_angle": -180,
"turn_direction": "uturn_left",
"type": "crossroad"
},
{
"comment": "Keep left on Новинский бульвар",
"icon": "crossroad_keep_left",
"id": "13334618759097315724",
"outcoming_path": {
"distance": 6154,
"duration": 973,
"geometry": [
{
"color": "normal",
"length": 432,
"selection": "LINESTRING(37.583775 55.753348, 37.584019 55.754613, 37.584049 55.754877, 37.584040 55.754980, 37.584014 55.755103, 37.583987 55.755277, 37.583989 55.755285, 37.584368 55.757099, 37.584373 55.757134, 37.584393 55.757231)",
"style": "normal"
},
{
"color": "slow",
"length": 1156,
"selection": "LINESTRING(37.584393 55.757231, 37.584599 55.758224, 37.584616 55.758305, 37.584701 55.758610, 37.584799 55.758885, 37.584902 55.759123, 37.584918 55.759161, 37.584980 55.759280, 37.585062 55.759437, 37.585108 55.759517, 37.585197 55.759670, 37.585321 55.759863, 37.585480 55.760112, 37.585610 55.760316, 37.585641 55.760359, 37.585860 55.760655, 37.586396 55.761385, 37.586592 55.761651, 37.586717 55.761822, 37.586860 55.762016, 37.587004 55.762212, 37.587116 55.762364, 37.587445 55.762789, 37.587551 55.762927, 37.587782 55.763201, 37.587849 55.763280, 37.587936 55.763384, 37.588134 55.763606, 37.588203 55.763684, 37.588416 55.763898, 37.588471 55.763953, 37.588784 55.764248, 37.588984 55.764428, 37.589118 55.764549, 37.589422 55.764814, 37.589738 55.765068, 37.590030 55.765294, 37.590045 55.765304, 37.590722 55.765784, 37.590908 55.765916, 37.591349 55.766228, 37.591622 55.766422, 37.591802 55.766547, 37.591951 55.766651)",
"style": "normal"
},
{
"color": "normal",
"length": 341,
"selection": "LINESTRING(37.591951 55.766651, 37.592175 55.766807, 37.592529 55.767054, 37.592988 55.767375, 37.593622 55.767817, 37.594008 55.768087, 37.594339 55.768318, 37.594632 55.768511, 37.594932 55.768694, 37.595214 55.768858, 37.595486 55.769004)",
"style": "normal"
},
{
"color": "slow",
"length": 81,
"selection": "LINESTRING(37.595486 55.769004, 37.596007 55.769269, 37.596454 55.769495)",
"style": "tunnel"
},
{
"color": "normal",
"length": 28,
"selection": "LINESTRING(37.596454 55.769495, 37.596797 55.769669)",
"style": "tunnel"
},
{
"color": "slow",
"length": 87,
"selection": "LINESTRING(37.596797 55.769669, 37.597193 55.769869, 37.597838 55.770195)",
"style": "tunnel"
},
{
"color": "normal",
"length": 259,
"selection": "LINESTRING(37.597838 55.770195, 37.598115 55.770332, 37.598389 55.770458, 37.598674 55.770579, 37.599125 55.770758, 37.599606 55.770937, 37.599820 55.771001, 37.600450 55.771189, 37.600775 55.771293, 37.601329 55.771460)",
"style": "normal"
},
{
"color": "slow",
"length": 205,
"selection": "LINESTRING(37.601329 55.771460, 37.602336 55.771763, 37.602421 55.771789, 37.602861 55.771922, 37.603929 55.772247, 37.604227 55.772338)",
"style": "normal"
},
{
"color": "normal",
"length": 20,
"selection": "LINESTRING(37.604227 55.772338, 37.604516 55.772426)",
"style": "normal"
},
{
"color": "slow",
"length": 240,
"selection": "LINESTRING(37.604516 55.772426, 37.605210 55.772564, 37.605213 55.772565, 37.605268 55.772575, 37.605728 55.772651, 37.605822 55.772664, 37.607062 55.772839, 37.607333 55.772877, 37.607382 55.772884, 37.608251 55.772986)",
"style": "normal"
},
{
"color": "normal",
"length": 156,
"selection": "LINESTRING(37.608251 55.772986, 37.608986 55.773080, 37.609121 55.773096, 37.609234 55.773109, 37.610156 55.773194, 37.610728 55.773247)",
"style": "normal"
},
{
"color": "fast",
"length": 416,
"selection": "LINESTRING(37.610728 55.773247, 37.611026 55.773277, 37.611498 55.773310, 37.612248 55.773363, 37.612442 55.773370, 37.613457 55.773408, 37.615054 55.773470, 37.617345 55.773557)",
"style": "normal"
},
{
"color": "fast",
"length": 370,
"selection": "LINESTRING(37.617345 55.773557, 37.619000 55.773621, 37.619209 55.773628, 37.621035 55.773684, 37.621922 55.773690, 37.623161 55.773671, 37.623250 55.773668)",
"style": "bridge"
},
{
"color": "normal",
"length": 250,
"selection": "LINESTRING(37.623250 55.773668, 37.624510 55.773622, 37.625672 55.773548, 37.625906 55.773531, 37.626549 55.773483, 37.627213 55.773398)",
"style": "normal"
},
{
"color": "slow",
"length": 325,
"selection": "LINESTRING(37.627213 55.773398, 37.627407 55.773378, 37.627898 55.773317, 37.628220 55.773274, 37.629057 55.773153, 37.630300 55.772978, 37.630537 55.772946, 37.631810 55.772768, 37.631859 55.772761, 37.632302 55.772699)",
"style": "normal"
},
{
"color": "normal",
"length": 61,
"selection": "LINESTRING(37.632302 55.772699, 37.632528 55.772668, 37.633038 55.772597, 37.633286 55.772569)",
"style": "normal"
},
{
"color": "fast",
"length": 614,
"selection": "LINESTRING(37.633286 55.772569, 37.633809 55.772511, 37.635934 55.772276, 37.636482 55.772197, 37.636863 55.772130, 37.637246 55.772053, 37.637383 55.772024, 37.637746 55.771946, 37.638398 55.771787, 37.638671 55.771709, 37.639223 55.771539, 37.639458 55.771467, 37.640138 55.771258, 37.641596 55.770815, 37.642386 55.770573)",
"style": "normal"
},
{
"color": "normal",
"length": 38,
"selection": "LINESTRING(37.642386 55.770573, 37.642720 55.770474, 37.642942 55.770406)",
"style": "normal"
},
{
"color": "fast",
"length": 99,
"selection": "LINESTRING(37.642942 55.770406, 37.643525 55.770234, 37.643708 55.770178, 37.643975 55.770092, 37.644348 55.769976)",
"style": "normal"
},
{
"color": "normal",
"length": 93,
"selection": "LINESTRING(37.644348 55.769976, 37.644647 55.769882, 37.645657 55.769580)",
"style": "normal"
},
{
"color": "fast",
"length": 32,
"selection": "LINESTRING(37.645657 55.769580, 37.645818 55.769531, 37.646121 55.769442)",
"style": "normal"
},
{
"color": "normal",
"length": 76,
"selection": "LINESTRING(37.646121 55.769442, 37.646389 55.769364, 37.647223 55.769158)",
"style": "normal"
},
{
"color": "fast",
"length": 746,
"selection": "LINESTRING(37.647223 55.769158, 37.647789 55.769017, 37.648564 55.768776, 37.649337 55.768557, 37.649691 55.768459, 37.649817 55.768424, 37.649886 55.768391, 37.650113 55.768283, 37.650280 55.768171, 37.651022 55.767635, 37.651497 55.767307, 37.651966 55.766988, 37.652654 55.766522, 37.653423 55.765990, 37.653591 55.765874, 37.653911 55.765652, 37.654967 55.764923, 37.655597 55.764466)",
"style": "normal"
},
{
"color": "normal",
"length": 29,
"selection": "LINESTRING(37.655597 55.764466, 37.655881 55.764258)",
"style": "normal"
}
],
"names": [
"Новинский бульвар"
]
},
"outcoming_path_comment": "6.2 km straight",
"turn_angle": 0,
"turn_direction": "keep_left",
"type": "crossroad"
},
{
"comment": "U-turn on Садовая-Черногрязская",
"icon": "turn_over_right_hand",
"id": "6434601248905950874",
"outcoming_path": {
"distance": 71,
"duration": 18,
"geometry": [
{
"color": "fast",
"length": 22,
"selection": "LINESTRING(37.655881 55.764258, 37.655917 55.764246, 37.655955 55.764239, 37.655993 55.764237, 37.656027 55.764240, 37.656049 55.764245, 37.656067 55.764253, 37.656086 55.764271, 37.656095 55.764288, 37.656094 55.764310, 37.656076 55.764339)",
"style": "normal"
},
{
"color": "slow",
"length": 49,
"selection": "LINESTRING(37.656076 55.764339, 37.655591 55.764691)",
"style": "normal"
}
],
"names": [
"Садовая-Черногрязская"
]
},
"outcoming_path_comment": "70 m straight",
"turn_angle": -180,
"turn_direction": "uturn_left",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "5743155022271605562",
"outcoming_path": {
"distance": 36,
"duration": 10,
"geometry": [
{
"color": "ignore",
"length": 21,
"selection": "LINESTRING(37.655591 55.764691, 37.655782 55.764778, 37.655867 55.764818)",
"style": "living_zone"
},
{
"color": "ignore",
"length": 12,
"selection": "LINESTRING(37.655867 55.764818, 37.656014 55.764887)",
"style": "archway"
},
{
"color": "ignore",
"length": 3,
"selection": "LINESTRING(37.656014 55.764887, 37.656064 55.764909)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "40 m straight",
"turn_angle": 89,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "13804885631616694287",
"outcoming_path": {
"distance": 93,
"duration": 26,
"geometry": [
{
"color": "ignore",
"length": 93,
"selection": "LINESTRING(37.656064 55.764909, 37.656554 55.764570, 37.656591 55.764558, 37.656635 55.764560, 37.656674 55.764578, 37.656728 55.764601, 37.656741 55.764609, 37.656749 55.764617, 37.656755 55.764630, 37.656755 55.764641, 37.656749 55.764655, 37.656538 55.764857)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "90 m straight",
"turn_angle": 90,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Left turn",
"icon": "crossroad_left",
"id": "3296477686701001818",
"outcoming_path": {
"distance": 21,
"duration": 6,
"geometry": [
{
"color": "ignore",
"length": 21,
"selection": "LINESTRING(37.656538 55.764857, 37.656510 55.764857, 37.656485 55.764865, 37.656303 55.764992)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "20 m straight",
"turn_angle": -46,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "Right turn",
"icon": "crossroad_right",
"id": "4920960549958296784",
"outcoming_path": {
"distance": 18,
"duration": 5,
"geometry": [
{
"color": "ignore",
"length": 18,
"selection": "LINESTRING(37.656303 55.764992, 37.656543 55.765075, 37.656553 55.765080)",
"style": "living_zone"
}
],
"names": []
},
"outcoming_path_comment": "20 m straight",
"turn_angle": 91,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "finish",
"icon": "finish",
"id": "16377021944685554640",
"outcoming_path_comment": "You have arrived!",
"type": "end"
}
],
"reliability": 0.0,
"route_id": "moscow-cr-back.m9/carrouting/1772721451.199882",
"total_distance": 9415,
"total_duration": 1943,
"type": "carrouting",
"ui_total_distance": {
"unit": "km",
"value": "9.4"
},
"ui_total_duration": "32 min",
"waypoints": [
{
"original_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"projected_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"transit": false
},
{
"original_point": {
"lat": 55.76508099601444,
"lon": 37.65655367382703
},
"projected_point": {
"lat": 55.76508099601444,
"lon": 37.65655367382703
},
"transit": false
}
]
}
],
"status": "OK",
"type": "result"
}