Skip to main content

Getting started

Follow the steps below to become familiar with Routing API features and send a request to build a route by car or public transport. To build routes for other transportation types (for example, by bicycle or on foot), see the Examples instruction.

Request examples are provided using cURL.

Getting access key

  1. Sign in to the Platform Manager.
  2. Create a demo key or purchase a subscription for using API. For details on service prices, see the Tariffs section.

To work with access keys, you can use the Platform Manager: for details, see the account documentation.

Building route by car

To build a route by car for one pair of points, send a POST request to /routing/7.0.0/global:

  1. In the request URL, specify the API key value for the key parameter:

    https://routing.api.2gis.com/routing/7.0.0/global?key=API_KEY
  2. In the request body, pass the JSON with the necessary parameters:

    {
    "points": [
    {
    "type": "stop",
    "lon": 37.582591,
    "lat": 55.775364
    },
    {
    "type": "stop",
    "lon": 37.656625,
    "lat": 55.765036
    }
    ],
    "transport": "driving",
    "route_mode": "fastest",
    "traffic_mode": "jam",
    "locale": "en"
    }

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",
"route_mode": "fastest",
"traffic_mode": "jam",
"locale": "en"
}'

Where:

  • points - array of coordinates of route points: starting and ending.
  • transport: driving - transportation type: by car.
  • route_mode: fastest - type of route building: shortest by time.
  • traffic_mode: jam - route building using current traffic jams data.
  • locale: en - language of text descriptions of route elements: English.

For detailed information about parameters, see the API Reference.

Response example

The request will return an array of multiple route options, if they can be built.

Each route option is divided into multiple sections (maneuvers).

Short response example:

{
...
"result": [
{
"algorithm": "with traffic jams",
"begin_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.582590 55.775363, ...)"
}
},
"end_pedestrian_path": {
"geometry": {
"selection": "LINESTRING(37.656553 55.765080, ...)"
}
},
"filter_road_types": [
"highway"
],
"id": "4574667871883235027",
"maneuvers": [
{
"comment": "start",
"icon": "start",
"id": "2195848860797463851",
"outcoming_path": {
"distance": 30,
"duration": 4,
"geometry": [
{
"color": "fast",
"length": 30,
"selection": "LINESTRING(37.583086 55.775486, ...)",
"style": "normal"
}
],
"names": [
"площадь Тверская Застава"
]
},
"outcoming_path_comment": "30 m straight",
"type": "begin"
},
{
"comment": "Left turn onto Лесная",
"icon": "crossroad_left",
"id": "12138052723257235506",
"outcoming_path": {
"distance": 406,
"duration": 220,
"geometry": [
{
"color": "fast",
"length": 18,
"selection": "LINESTRING(37.583307 55.775231, ...)",
"style": "normal"
},
...
],
"names": [
"Лесная"
]
},
"outcoming_path_comment": "400 m straight",
"turn_angle": -92,
"turn_direction": "left",
"type": "crossroad"
},
...
{
"comment": "finish",
"icon": "finish",
"id": "16377021944685554640",
"outcoming_path_comment": "You have arrived!",
"type": "end"
}
],
"reliability": 0.0,
"route_id": "moscow-cr-back...",
"total_distance": 5904,
"total_duration": 1099,
"type": "carrouting",
"ui_total_distance": {
"unit": "km",
"value": "5.9"
},
"ui_total_duration": "18 min",
"waypoints": [
{
"original_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"projected_point": {
"lat": 55.77548691400483,
"lon": 37.58308675494588
},
"transit": false
},
...
]
},
{
"algorithm": "with traffic jams",
"id": "7644337982071710229",
...
}
],
"status": "OK",
"type": "result"
}

Where:

  • algorithm - type of route option in text format (e.g., shortest, with traffic, etc.).

  • begin_pedestrian_path - geometry of the pedestrian route segment from the start point to the first maneuver in the WKT (Well-Known Text) format.

  • end_pedestrian_path - geometry of the pedestrian route segment from the last maneuver to the end point in the WKT (Well-Known Text) format.

  • filter_road_types - types of roads excluded from the route option.

  • id - route option ID.

  • maneuvers - array with data about route segments (maneuvers). Each maneuver contains:

    • comment - maneuver description.

    • icon - maneuver icon.

    • id - maneuver ID.

    • outcoming_path - path from the maneuver to the next maneuver:

      • distance - maneuver length in meters.
      • duration - travel time for the maneuver in seconds.
      • geometry - path geometry in the WKT (Well-Known Text) format.
      • names - names of roads along the path.

      If the maneuver is the last in the route option, outcoming_path is absent.

    • outcoming_path_comment - maneuver description in text format.

    • type - maneuver type (e.g., intersection, route start, route end, etc.).

  • reliability - route option reliability from 0 to 1.

  • route_id - unique identifier of the route option.

  • total_distance - total length of the route option in meters.

  • total_duration - total travel time for the route option in seconds.

  • type - mode of transportation for the route option.

  • ui_total_distance - total length of the route option in text format.

  • ui_total_duration - total travel time for the route option in text format.

  • waypoints - array of original points and attracted points for the route option.

For more details about each parameter, see the API Reference.

Full example response:

response.json
{
"message": null,
"query": {
"locale": "en",
"points": [
{
"lat": 55.775364,
"lon": 37.582591,
"type": "stop"
},
{
"lat": 55.765036,
"lon": 37.656625,
"type": "stop"
}
],
"route_mode": "fastest",
"traffic_mode": "jam",
"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": "4574667871883235027",
"maneuvers": [
{
"comment": "start",
"icon": "start",
"id": "2195848860797463851",
"outcoming_path": {
"distance": 30,
"duration": 4,
"geometry": [
{
"color": "fast",
"length": 30,
"selection": "LINESTRING(37.583086 55.775486, 37.583150 55.775405, 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": "12138052723257235506",
"outcoming_path": {
"distance": 406,
"duration": 220,
"geometry": [
{
"color": "fast",
"length": 18,
"selection": "LINESTRING(37.583307 55.775231, 37.583561 55.775318)",
"style": "normal"
},
{
"color": "slow",
"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": 139,
"selection": "LINESTRING(37.585381 55.776355, 37.585568 55.776469, 37.585606 55.776493, 37.585928 55.776703, 37.586761 55.777249, 37.586856 55.777311)",
"style": "normal"
},
{
"color": "normal",
"length": 88,
"selection": "LINESTRING(37.586856 55.777311, 37.586989 55.777398, 37.587695 55.777860, 37.587795 55.777926)",
"style": "normal"
}
],
"names": [
"Лесная"
]
},
"outcoming_path_comment": "400 m straight",
"turn_angle": -92,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "Right turn onto Александра Невского",
"icon": "crossroad_right",
"id": "18209150640796609896",
"outcoming_path": {
"distance": 987,
"duration": 283,
"geometry": [
{
"color": "normal",
"length": 391,
"selection": "LINESTRING(37.587795 55.777926, 37.587857 55.777896, 37.588159 55.777750, 37.588473 55.777598, 37.588580 55.777546, 37.588953 55.777365, 37.589107 55.777290, 37.589488 55.777105, 37.589680 55.777012, 37.589762 55.776972, 37.590495 55.776617, 37.590578 55.776576, 37.590882 55.776429, 37.591177 55.776285, 37.591234 55.776258, 37.591311 55.776220, 37.591564 55.776098, 37.591859 55.775954, 37.591980 55.775878, 37.592157 55.775711, 37.592301 55.775575, 37.592408 55.775503, 37.592464 55.775451)",
"style": "normal"
},
{
"color": "fast",
"length": 229,
"selection": "LINESTRING(37.592464 55.775451, 37.593157 55.774776, 37.593247 55.774725, 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)",
"style": "normal"
},
{
"color": "normal",
"length": 8,
"selection": "LINESTRING(37.594774 55.773836, 37.594863 55.773783)",
"style": "normal"
},
{
"color": "fast",
"length": 176,
"selection": "LINESTRING(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",
"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": [
"Александра Невского"
]
},
"outcoming_path_comment": "1 km straight",
"turn_angle": 90,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto Оружейный переулок",
"icon": "crossroad_right",
"id": "2124525323268149181",
"outcoming_path": {
"distance": 89,
"duration": 19,
"geometry": [
{
"color": "normal",
"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": "17890445497568209162",
"outcoming_path": {
"distance": 112,
"duration": 25,
"geometry": [
{
"color": "normal",
"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": "11591276919671540650",
"outcoming_path": {
"distance": 4041,
"duration": 484,
"geometry": [
{
"color": "fast",
"length": 19,
"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)",
"style": "normal"
},
{
"color": "normal",
"length": 477,
"selection": "LINESTRING(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, 37.604516 55.772426)",
"style": "normal"
},
{
"color": "fast",
"length": 812,
"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, 37.608986 55.773080, 37.609121 55.773096, 37.609234 55.773109, 37.610156 55.773194, 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": "fast",
"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": "normal",
"length": 212,
"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)",
"style": "normal"
},
{
"color": "fast",
"length": 82,
"selection": "LINESTRING(37.630537 55.772946, 37.631810 55.772768)",
"style": "normal"
},
{
"color": "normal",
"length": 92,
"selection": "LINESTRING(37.631810 55.772768, 37.631859 55.772761, 37.632302 55.772699, 37.632528 55.772668, 37.633038 55.772597, 37.633286 55.772569)",
"style": "normal"
},
{
"color": "fast",
"length": 33,
"selection": "LINESTRING(37.633286 55.772569, 37.633809 55.772511)",
"style": "normal"
},
{
"color": "normal",
"length": 581,
"selection": "LINESTRING(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": "slow",
"length": 230,
"selection": "LINESTRING(37.642386 55.770573, 37.642720 55.770474, 37.642942 55.770406, 37.643525 55.770234, 37.643708 55.770178, 37.643975 55.770092, 37.644348 55.769976, 37.644647 55.769882, 37.645657 55.769580)",
"style": "normal"
},
{
"color": "normal",
"length": 11,
"selection": "LINESTRING(37.645657 55.769580, 37.645818 55.769531)",
"style": "normal"
},
{
"color": "fast",
"length": 21,
"selection": "LINESTRING(37.645818 55.769531, 37.646121 55.769442)",
"style": "normal"
},
{
"color": "normal",
"length": 114,
"selection": "LINESTRING(37.646121 55.769442, 37.646389 55.769364, 37.647223 55.769158, 37.647789 55.769017)",
"style": "normal"
},
{
"color": "fast",
"length": 737,
"selection": "LINESTRING(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, 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": "3526608658625186052",
"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": "12571710993016079321",
"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": "16623605703928738151",
"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": "14738996950782572064",
"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": "9785013895095610403",
"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/1772784266.487161",
"total_distance": 5904,
"total_duration": 1099,
"type": "carrouting",
"ui_total_distance": {
"unit": "km",
"value": "5.9"
},
"ui_total_duration": "18 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": "7644337982071710229",
"maneuvers": [
{
"comment": "start",
"icon": "start",
"id": "14224930748080887667",
"outcoming_path": {
"distance": 30,
"duration": 4,
"geometry": [
{
"color": "fast",
"length": 30,
"selection": "LINESTRING(37.583086 55.775486, 37.583150 55.775405, 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",
"icon": "crossroad_left",
"id": "11657033061150517648",
"outcoming_path": {
"distance": 164,
"duration": 112,
"geometry": [
{
"color": "fast",
"length": 18,
"selection": "LINESTRING(37.583307 55.775231, 37.583561 55.775318)",
"style": "normal"
},
{
"color": "slow",
"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"
}
],
"names": []
},
"outcoming_path_comment": "150 m straight",
"turn_angle": -92,
"turn_direction": "left",
"type": "crossroad"
},
{
"comment": "Right turn onto 1-я Тверская-Ямская",
"icon": "crossroad_right",
"id": "15514644242277750196",
"outcoming_path": {
"distance": 1256,
"duration": 265,
"geometry": [
{
"color": "fast",
"length": 28,
"selection": "LINESTRING(37.585154 55.776303, 37.585445 55.776157, 37.585492 55.776131)",
"style": "normal"
},
{
"color": "slow",
"length": 250,
"selection": "LINESTRING(37.585492 55.776131, 37.585658 55.776039, 37.586214 55.775714, 37.588010 55.774663, 37.588280 55.774505)",
"style": "normal"
},
{
"color": "normal",
"length": 338,
"selection": "LINESTRING(37.588280 55.774505, 37.590369 55.773281, 37.590635 55.773126, 37.592026 55.772311)",
"style": "normal"
},
{
"color": "fast",
"length": 483,
"selection": "LINESTRING(37.592026 55.772311, 37.592333 55.772132, 37.594081 55.771108, 37.594993 55.770574, 37.595598 55.770219, 37.595740 55.770136, 37.595903 55.770019, 37.596125 55.769859, 37.596682 55.769461, 37.596711 55.769445, 37.597332 55.769104)",
"style": "normal"
},
{
"color": "normal",
"length": 157,
"selection": "LINESTRING(37.597332 55.769104, 37.598026 55.768722, 37.599143 55.768109)",
"style": "normal"
}
],
"names": [
"1-я Тверская-Ямская"
]
},
"outcoming_path_comment": "1.3 km straight",
"turn_angle": 91,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto Благовещенский переулок",
"icon": "crossroad_right",
"id": "3384715497346578367",
"outcoming_path": {
"distance": 282,
"duration": 104,
"geometry": [
{
"color": "normal",
"length": 282,
"selection": "LINESTRING(37.599143 55.768109, 37.598984 55.768020, 37.598729 55.767877, 37.598486 55.767739, 37.598367 55.767674, 37.598289 55.767630, 37.598123 55.767537, 37.598037 55.767479, 37.597972 55.767421, 37.597911 55.767336, 37.597851 55.767189, 37.597840 55.767160, 37.597813 55.767093, 37.597784 55.767047, 37.597727 55.767009, 37.597296 55.766836, 37.596096 55.766356, 37.595993 55.766315)",
"style": "normal"
}
],
"names": [
"Благовещенский переулок"
]
},
"outcoming_path_comment": "300 m straight",
"turn_angle": 91,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto Ермолаевский переулок",
"icon": "crossroad_right",
"id": "18392744563978940808",
"outcoming_path": {
"distance": 165,
"duration": 82,
"geometry": [
{
"color": "normal",
"length": 139,
"selection": "LINESTRING(37.595993 55.766315, 37.595925 55.766348, 37.595858 55.766362, 37.595846 55.766364, 37.595702 55.766372, 37.595123 55.766406, 37.595074 55.766409, 37.594998 55.766409, 37.594939 55.766408, 37.594813 55.766399, 37.594681 55.766371, 37.594660 55.766363, 37.593957 55.766079)",
"style": "normal"
},
{
"color": "slow",
"length": 26,
"selection": "LINESTRING(37.593957 55.766079, 37.593699 55.765975, 37.593599 55.765935)",
"style": "normal"
}
],
"names": [
"Ермолаевский переулок"
]
},
"outcoming_path_comment": "150 m straight",
"turn_angle": 67,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto аллея Архитектора Шехтеля",
"icon": "crossroad_right",
"id": "14812034454581740792",
"outcoming_path": {
"distance": 130,
"duration": 59,
"geometry": [
{
"color": "slow",
"length": 114,
"selection": "LINESTRING(37.593599 55.765935, 37.593518 55.765985, 37.592996 55.766304, 37.592626 55.766531, 37.592353 55.766698)",
"style": "normal"
},
{
"color": "fast",
"length": 16,
"selection": "LINESTRING(37.592353 55.766698, 37.592175 55.766807)",
"style": "normal"
}
],
"names": [
"аллея Архитектора Шехтеля"
]
},
"outcoming_path_comment": "150 m straight",
"turn_angle": 83,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "Right turn onto Большая Садовая",
"icon": "crossroad_right",
"id": "1321144692478759018",
"outcoming_path": {
"distance": 4544,
"duration": 526,
"geometry": [
{
"color": "fast",
"length": 319,
"selection": "LINESTRING(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": "normal",
"length": 81,
"selection": "LINESTRING(37.595486 55.769004, 37.596007 55.769269, 37.596454 55.769495)",
"style": "tunnel"
},
{
"color": "fast",
"length": 115,
"selection": "LINESTRING(37.596454 55.769495, 37.596797 55.769669, 37.597193 55.769869, 37.597838 55.770195)",
"style": "tunnel"
},
{
"color": "normal",
"length": 484,
"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, 37.602336 55.771763, 37.602421 55.771789, 37.602861 55.771922, 37.603929 55.772247, 37.604227 55.772338, 37.604516 55.772426)",
"style": "normal"
},
{
"color": "fast",
"length": 812,
"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, 37.608986 55.773080, 37.609121 55.773096, 37.609234 55.773109, 37.610156 55.773194, 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": "fast",
"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": "normal",
"length": 212,
"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)",
"style": "normal"
},
{
"color": "fast",
"length": 82,
"selection": "LINESTRING(37.630537 55.772946, 37.631810 55.772768)",
"style": "normal"
},
{
"color": "normal",
"length": 92,
"selection": "LINESTRING(37.631810 55.772768, 37.631859 55.772761, 37.632302 55.772699, 37.632528 55.772668, 37.633038 55.772597, 37.633286 55.772569)",
"style": "normal"
},
{
"color": "fast",
"length": 33,
"selection": "LINESTRING(37.633286 55.772569, 37.633809 55.772511)",
"style": "normal"
},
{
"color": "normal",
"length": 581,
"selection": "LINESTRING(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": "slow",
"length": 230,
"selection": "LINESTRING(37.642386 55.770573, 37.642720 55.770474, 37.642942 55.770406, 37.643525 55.770234, 37.643708 55.770178, 37.643975 55.770092, 37.644348 55.769976, 37.644647 55.769882, 37.645657 55.769580)",
"style": "normal"
},
{
"color": "normal",
"length": 11,
"selection": "LINESTRING(37.645657 55.769580, 37.645818 55.769531)",
"style": "normal"
},
{
"color": "fast",
"length": 21,
"selection": "LINESTRING(37.645818 55.769531, 37.646121 55.769442)",
"style": "normal"
},
{
"color": "normal",
"length": 114,
"selection": "LINESTRING(37.646121 55.769442, 37.646389 55.769364, 37.647223 55.769158, 37.647789 55.769017)",
"style": "normal"
},
{
"color": "fast",
"length": 737,
"selection": "LINESTRING(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, 37.655881 55.764258)",
"style": "normal"
}
],
"names": [
"Большая Садовая"
]
},
"outcoming_path_comment": "4.5 km straight",
"turn_angle": 82,
"turn_direction": "right",
"type": "crossroad"
},
{
"comment": "U-turn on Садовая-Черногрязская",
"icon": "turn_over_right_hand",
"id": "4169011539941138169",
"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": "15938104688967471050",
"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": "9167068033490042506",
"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": "1516284992735570568",
"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": "15075071041239725830",
"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/1772784266.487947",
"total_distance": 6810,
"total_duration": 1218,
"type": "carrouting",
"ui_total_distance": {
"unit": "km",
"value": "6.8"
},
"ui_total_duration": "20 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"
}

Building route by public transport

To build a route by public transport, send a POST request to the /public_transport/2.0 endpoint:

  1. In the request URL, pass the API key value in the key parameter:

    https://routing.api.2gis.com/public_transport/2.0?key=API_KEY
  2. In the request body, pass the JSON with the required parameters:

    {
    "source":
    {
    "point":
    {
    "lat": 55.798227,
    "lon": 37.697461
    }
    },
    "target":
    {
    "point":
    {
    "lat": 55.821029,
    "lon": 37.641507
    }
    },
    "transport": ["metro", "tram"],
    "locale": "en"
    }

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"],
"locale": "en"
}'

Where:

  • source - coordinates of the starting point (latitude and longitude).
  • target - coordinates of the ending point (latitude and longitude).
  • transport: [metro, tram] - array of public transport types: metro - metro and tram - tram.
  • locale: en - language of text descriptions of route elements: English.

For detailed information about the parameters, see the API Reference.

Response example

The request will return an array of multiple route options. If no public transport routes can be built, a completely pedestrian route or an empty response is returned depending on the route distance: for more information, see the Transport and transfers section.

Each route option (except a completely pedestrian one) is split into multiple segments.

Short response example:

[
{
"crossing_count": 2,
"id": "1",
"movements": [
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.697461 55.798227, ...)",
...
},
...
],
"platforms": [
{
"geometry": "POINT(37.699518 55.794568)",
"id": "9"
},
...
]
}
],
"distance": 1318,
"id": "3",
"moving_duration": 300,
"platforms": {
"names": [
"Малая Остроумовская",
"Клуб Русакова - Сцена Мельников"
]
},
"routes": [
{
"color": "#eb5a2b",
"names": [
"7",
"Т1",
"13"
],
"subtype": "tram",
"subtype_name": "tram"
}
],
"type": "passage",
"waiting_duration": 167,
"waypoint": {
"combined": false,
"comment": "",
"name": "Трамвайное депо им. Русакова",
"subtype": "tram"
}
},
...,
],
"pedestrian": false,
"route_id": "moscow-ctx-back...",
"schedules": [
{
"origin_from": "eta",
"precise_time": "11:25",
"start_time": 41100,
"start_time_utc": 1772785500,
"type": "precise"
},
...
],
"total_distance": 8939,
"total_duration": 2467,
"total_walkway_distance": "on foot 20 min",
"transfer_count": 2,
"transport": [...],
"waypoints": [
{
"combined": false,
"routes_names": [
"13",
"7",
"Т1"
],
"subtype": "tram"
},
...
],
},
{
"crossing_count": 0,
"id": "31",
"movements": [
{
"alternatives": [...],
...
},
...
]
},
...
]

Where:

  • crossing_count - number of transfers between stop platforms for the route option. For example, a transfer from metro to bus or a transition between different metro lines. For more information, see the Transport and transfers section.

  • id - route option ID.

  • movements - array with data about route segments. Each segment contains:

    • alternatives:

      • geometry - geometry of the route segment in the WKT (Well-Known Text) format. For more information, see the Route segment geometry section.
      • platforms - coordinates of intermediate stops on the route segment (only for route segments using public transport). For more information, see the Route segment geometry section.
    • distance - length of the route segment in meters. For more information, see the Route segment duration section.

    • id - ID of the route segment.

    • moving_duration - travel time on the route segment in seconds. For more information, see the Route segment duration section.

    • platforms - intermediate stops (only for route segments using public transport). For more information, see the Transport and stops section.

    • routes - public transport routes on the route segment (only for route segments using public transport). For more information, see the Transport and stops section.

    • type - movement type on the route segment. For more information, see the Route segment types section.

    • waiting_duration - transport waiting time on the route segment in seconds. For pedestrian segments, the value is 0. For more information, see the Route segment duration section.

    • waypoint - brief information about the route segment: comment, point or transport type, etc. For more information, see the Route segment types section.

  • pedestrian - whether the route option is completely pedestrian. For more information, see the Transport and transfers section.

  • route_id - unique identifier of the route option.

  • schedules - array with the public transport schedule for the route option. For more information, see the Transport and transfers section.

  • total_distance - total route length in meters. For more information, see the Total route duration section.

  • total_duration - total travel time for the route option in seconds. For more information, see the Total route duration section.

  • total_walkway_distance - total travel time on foot for the route option in text format. For more information, see the Total route duration section.

  • transfer_count - number of transfers within the same stop platform for the route option. For example, a transfer from one bus route to another. For more information, see the Transport and transfers section.

  • waypoints - brief information about the route option: whether it can be traveled using a single transport type, transport types, etc. For more information, see the Transport and transfers section.

For details about each parameter, see the API Reference and in the Examples instruction.

Full 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.698839 55.795885, 37.698818 55.795866, 37.698820 55.795851, 37.698834 55.795833, 37.698981 55.795717, 37.698986 55.795701, 37.698979 55.795689, 37.698958 55.795673, 37.698667 55.795556)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.698667 55.795556, 37.698585 55.795522)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.698585 55.795522, 37.698510 55.795492)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.698510 55.795492, 37.698444 55.795462)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.698444 55.795462, 37.698654 55.795317, 37.698686 55.795223, 37.698696 55.795198, 37.698786 55.794971, 37.698826 55.794872, 37.698926 55.794618)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.698926 55.794618, 37.699009 55.794627, 37.699033 55.794567)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699033 55.794567, 37.699064 55.794491)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699064 55.794491, 37.699525 55.794549)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.699525 55.794549, 37.699518 55.794568)",
"z_first": 0,
"z_last": 0
}
]
}
],
"distance": 528,
"id": "2",
"moving_duration": 380,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "530 m on foot",
"name": "",
"subtype": "start"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.699518 55.794568, 37.694828 55.793954, 37.692085 55.793544, 37.691745 55.793477, 37.691460 55.793399, 37.691205 55.793311, 37.690796 55.793155, 37.690796 55.793155, 37.687102 55.791737, 37.687102 55.791737, 37.686904 55.791661, 37.686904 55.791661, 37.682733 55.790060, 37.682733 55.790060, 37.682423 55.789939, 37.682423 55.789939, 37.681916 55.789744, 37.681720 55.789664, 37.681720 55.789664, 37.681095 55.789408, 37.680983 55.789358)"
}
],
"platforms": [
{
"geometry": "POINT(37.699518 55.794568)",
"id": "9"
},
{
"geometry": "POINT(37.690796 55.793155)",
"id": "10"
},
{
"geometry": "POINT(37.686904 55.791661)",
"id": "11"
},
{
"geometry": "POINT(37.680983 55.789358)",
"id": "12"
}
]
}
],
"distance": 1318,
"id": "3",
"moving_duration": 360,
"platforms": {
"names": [
"Малая Остроумовская",
"Клуб Русакова - Сцена Мельников"
]
},
"routes": [
{
"color": "#eb5a2b",
"names": [
"Т1",
"7",
"13"
],
"subtype": "tram",
"subtype_name": "tram"
}
],
"type": "passage",
"waiting_duration": 167,
"waypoint": {
"combined": false,
"comment": "",
"name": "Трамвайное депо им. Русакова",
"subtype": "tram"
}
},
{
"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.680966 55.789367, 37.680773 55.789272)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.680773 55.789272, 37.680719 55.789313, 37.680667 55.789340)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.680667 55.789340, 37.680664 55.789347, 37.680601 55.789454, 37.680889 55.789507, 37.681036 55.789564)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.681036 55.789564, 37.681016 55.789598)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.681016 55.789598, 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": 295,
"id": "13",
"moving_duration": 269,
"platforms": null,
"routes": null,
"type": "crossing",
"waiting_duration": 0,
"waypoint": {
"comment": "300 m on foot",
"name": "Метро Сокольники · 4C",
"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": "18"
},
{
"geometry": "POINT(37.634533 55.793908)",
"id": "19"
}
]
}
],
"distance": 3033,
"id": "14",
"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": "20",
"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": "26"
},
{
"geometry": "POINT(37.638915 55.808717)",
"id": "27"
},
{
"geometry": "POINT(37.641420 55.821135)",
"id": "28"
}
]
}
],
"distance": 3084,
"id": "21",
"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": 90,
"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": "29",
"moving_duration": 436,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "440 m on foot",
"name": "ВДНХ",
"subtype": "pedestrian"
}
},
{
"distance": 0,
"id": "30",
"moving_duration": 0,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "You reach the destination at 11:57.",
"name": "",
"subtype": "finish"
}
}
],
"pedestrian": false,
"route_id": "moscow-ctx-back.m9/ctxrouting/17727849530000.00000",
"schedules": [
{
"origin_from": "eta",
"precise_time": "11:25",
"start_time": 41100,
"start_time_utc": 1772785500,
"type": "precise"
},
{
"origin_from": "eta",
"precise_time": "11:28",
"start_time": 41280,
"start_time_utc": 1772785680,
"type": "precise"
},
{
"origin_from": "eta",
"precise_time": "11:30",
"start_time": 41400,
"start_time_utc": 1772785800,
"type": "precise"
},
{
"origin_from": "eta",
"precise_time": "11:33",
"start_time": 41580,
"start_time_utc": 1772785980,
"type": "precise"
}
],
"total_distance": 8939,
"total_duration": 2467,
"total_walkway_distance": "on foot 20 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": [
"13",
"7",
"Т1"
],
"subtype": "tram"
},
{
"combined": false,
"routes_names": [
"Большая кольцевая линия"
],
"subtype": "metro"
},
{
"combined": false,
"routes_names": [
"Калужско-Рижская линия"
],
"subtype": "metro"
}
]
},
{
"crossing_count": 0,
"id": "31",
"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": "32",
"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": "46"
},
{
"geometry": "POINT(37.691783 55.805522)",
"id": "47"
},
{
"geometry": "POINT(37.688260 55.808460)",
"id": "48"
},
{
"geometry": "POINT(37.685191 55.810809)",
"id": "49"
},
{
"geometry": "POINT(37.685514 55.815093)",
"id": "50"
},
{
"geometry": "POINT(37.678881 55.817370)",
"id": "51"
},
{
"geometry": "POINT(37.670645 55.819328)",
"id": "52"
},
{
"geometry": "POINT(37.662182 55.821803)",
"id": "53"
},
{
"geometry": "POINT(37.658375 55.822966)",
"id": "54"
},
{
"geometry": "POINT(37.652402 55.824974)",
"id": "55"
},
{
"geometry": "POINT(37.648796 55.826395)",
"id": "56"
}
]
}
],
"distance": 4263,
"id": "33",
"moving_duration": 780,
"platforms": {
"names": [
"Большая Оленья",
"2-й Ширяевский пер.",
"Большая Ширяевская",
"Ростокинский проезд",
"Институт иностранных языков",
"Станция юных натуралистов",
"пл. Академика Люльки",
"Бориса Галушкина д.17",
"Ярославская"
]
},
"routes": [
{
"color": "#eb5a2b",
"names": [
"25"
],
"subtype": "tram",
"subtype_name": "tram"
}
],
"type": "passage",
"waiting_duration": 529,
"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": "57",
"moving_duration": 640,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "850 m on foot",
"name": "Проспект Мира",
"subtype": "pedestrian"
}
},
{
"distance": 0,
"id": "58",
"moving_duration": 0,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "You reach the destination at 11:59.",
"name": "",
"subtype": "finish"
}
}
],
"pedestrian": false,
"route_id": "moscow-ctx-back.m9/ctxrouting/17727849530000.00000",
"schedules": [
{
"precise_time": "11:36",
"start_time": 41760,
"start_time_utc": 1772786160,
"type": "precise"
},
{
"precise_time": "11:47",
"start_time": 42420,
"start_time_utc": 1772786820,
"type": "precise"
},
{
"precise_time": "12:00",
"start_time": 43200,
"start_time_utc": 1772787600,
"type": "precise"
},
{
"precise_time": "12:12",
"start_time": 43920,
"start_time_utc": 1772788320,
"type": "precise"
}
],
"total_distance": 6054,
"total_duration": 2627,
"total_walkway_distance": "on foot 21 min",
"transfer_count": 0,
"waypoints": [
{
"combined": false,
"routes_names": [
"25"
],
"subtype": "tram"
}
]
},
{
"crossing_count": 0,
"id": "59",
"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.696913 55.798465, 37.697097 55.798530, 37.697169 55.798555)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.697169 55.798555, 37.697179 55.798578, 37.697239 55.798712, 37.697257 55.798766, 37.697271 55.798807, 37.697283 55.798855, 37.697316 55.798894, 37.697373 55.798924, 37.697344 55.799044, 37.697373 55.799165)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.697373 55.799165, 37.697336 55.799173, 37.697319 55.799189, 37.697312 55.799205, 37.697312 55.799216, 37.697311 55.799245, 37.697306 55.799513, 37.697305 55.799548, 37.697340 55.799579, 37.697414 55.799597, 37.697602 55.799600, 37.697758 55.799602)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.697758 55.799602, 37.697797 55.799705, 37.697797 55.799785, 37.697792 55.800052, 37.697707 55.800163, 37.697603 55.800241)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.697603 55.800241, 37.697599 55.800487)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.697599 55.800487, 37.698127 55.800700, 37.698175 55.801181, 37.698172 55.801194, 37.698166 55.801209, 37.698148 55.801220, 37.698123 55.801228, 37.698093 55.801236, 37.698080 55.801276, 37.698069 55.801333, 37.698057 55.801363, 37.698121 55.801383, 37.698177 55.801414, 37.698228 55.801461, 37.698339 55.801460, 37.698442 55.801463, 37.698469 55.801445, 37.698502 55.801435, 37.698546 55.801430, 37.699031 55.801478, 37.699181 55.801497, 37.699362 55.801514, 37.699412 55.801519, 37.699633 55.801539, 37.699757 55.801565, 37.699887 55.801601, 37.700890 55.801933, 37.701170 55.802010, 37.702352 55.802286, 37.703161 55.802510, 37.703468 55.802629, 37.704171 55.802825, 37.704450 55.802867, 37.704570 55.802901, 37.705703 55.803212, 37.705873 55.803259, 37.706145 55.803334, 37.706603 55.803460, 37.706942 55.803561, 37.707241 55.803652, 37.707213 55.803686, 37.707186 55.804016, 37.707151 55.804106, 37.707204 55.804110, 37.707139 55.804288)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.707139 55.804288, 37.707220 55.804366)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.707220 55.804366, 37.707143 55.804574, 37.707098 55.804701, 37.707167 55.804708)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.707167 55.804708, 37.707292 55.804723)",
"z_first": 0,
"z_last": 0
},
{
"selection": "LINESTRING(37.707292 55.804723, 37.707312 55.804669)",
"z_first": 0,
"z_last": 0
}
]
}
],
"distance": 1205,
"id": "60",
"moving_duration": 867,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "1,3 km on foot",
"name": "",
"subtype": "start"
}
},
{
"alternatives": [
{
"geometry": [
{
"selection": "LINESTRING(37.707312 55.804669, 37.706638 55.806534, 37.706486 55.806866, 37.706486 55.806866, 37.706407 55.807038, 37.706084 55.807743, 37.706035 55.807876, 37.705796 55.808663, 37.705773 55.808723, 37.705744 55.808773, 37.705703 55.808819, 37.705699 55.808823, 37.703964 55.809913, 37.703964 55.809913, 37.703053 55.810485, 37.702896 55.810572, 37.702753 55.810643, 37.702591 55.810720, 37.701972 55.810999, 37.701730 55.811093, 37.701529 55.811163, 37.697667 55.812512, 37.697667 55.812512, 37.697577 55.812544, 37.697468 55.812589, 37.697389 55.812631, 37.697304 55.812685, 37.697201 55.812755, 37.695285 55.814300, 37.695285 55.814300, 37.695073 55.814471, 37.695005 55.814519, 37.694910 55.814576, 37.694437 55.814790, 37.694437 55.814790, 37.694374 55.814818, 37.694374 55.814818, 37.693834 55.815062, 37.692710 55.815512, 37.691279 55.816219, 37.691111 55.816299, 37.690935 55.816377, 37.690742 55.816451, 37.690543 55.816517, 37.689091 55.816899, 37.689091 55.816899, 37.688232 55.817120, 37.688133 55.817135, 37.688044 55.817144, 37.687983 55.817146, 37.687925 55.817140, 37.685300 55.816091, 37.685151 55.816005, 37.685146 55.816002, 37.685043 55.815903, 37.685039 55.815899, 37.684968 55.815746, 37.684968 55.815746, 37.684943 55.815685, 37.684943 55.815679, 37.684943 55.815679, 37.684915 55.815595, 37.684858 55.815490, 37.684811 55.815453, 37.684746 55.815427, 37.684666 55.815413, 37.684585 55.815409, 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.707312 55.804669)",
"id": "76"
},
{
"geometry": "POINT(37.706486 55.806866)",
"id": "77"
},
{
"geometry": "POINT(37.703964 55.809913)",
"id": "78"
},
{
"geometry": "POINT(37.697667 55.812512)",
"id": "79"
},
{
"geometry": "POINT(37.694374 55.814818)",
"id": "80"
},
{
"geometry": "POINT(37.689091 55.816899)",
"id": "81"
},
{
"geometry": "POINT(37.684968 55.815746)",
"id": "82"
},
{
"geometry": "POINT(37.678881 55.817370)",
"id": "83"
},
{
"geometry": "POINT(37.670645 55.819328)",
"id": "84"
},
{
"geometry": "POINT(37.662182 55.821803)",
"id": "85"
},
{
"geometry": "POINT(37.658375 55.822966)",
"id": "86"
},
{
"geometry": "POINT(37.652402 55.824974)",
"id": "87"
},
{
"geometry": "POINT(37.648796 55.826395)",
"id": "88"
}
]
}
],
"distance": 4809,
"id": "61",
"moving_duration": 1020,
"platforms": {
"names": [
"Телерадиокомпания МИР",
"1-я Прогонная",
"Инновационный университет",
"Богородский храм",
"Богатырский мост",
"Ростокинский проезд",
"Институт иностранных языков",
"Станция юных натуралистов",
"пл. Академика Люльки",
"Бориса Галушкина д.17",
"Ярославская"
]
},
"routes": [
{
"color": "#eb5a2b",
"names": [
"11"
],
"subtype": "tram",
"subtype_name": "tram"
}
],
"type": "passage",
"waiting_duration": 280,
"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": "89",
"moving_duration": 640,
"platforms": null,
"routes": null,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "850 m on foot",
"name": "Проспект Мира",
"subtype": "pedestrian"
}
},
{
"distance": 0,
"id": "90",
"moving_duration": 0,
"type": "walkway",
"waiting_duration": 0,
"waypoint": {
"comment": "You reach the destination at 12:02.",
"name": "",
"subtype": "finish"
}
}
],
"pedestrian": false,
"route_id": "moscow-ctx-back.m9/ctxrouting/17727849530000.00000",
"schedules": [
{
"origin_from": "eta",
"precise_time": "11:35",
"start_time": 41700,
"start_time_utc": 1772786100,
"type": "precise"
},
{
"origin_from": "eta",
"precise_time": "11:54",
"start_time": 42840,
"start_time_utc": 1772787240,
"type": "precise"
}
],
"total_distance": 6862,
"total_duration": 2807,
"total_walkway_distance": "on foot 24 min",
"transfer_count": 0,
"waypoints": [
{
"combined": false,
"routes_names": [
"11"
],
"subtype": "tram"
}
]
}
]

What's next?