Direction API

Direction API là api tính toán lộ trình di chuyển từ điểm A tới điểm B và xác định được quãng đường đi.

URL: /directions

Method: GET

Tham số Mô tả Ví dụ
origin Toạ độ bắt đầu 20.981971,105.864323
destination Toạ độ kết thúc. Nếu có nhiều điểm đến thì cách nhau dấu "|" 21.03876,105.79810|21.03876,105.79810
mode Loại phương tiện. Ví dụ: car, bike car
key API KEY 5277a63e23759eftha274a8bf5230183

Trường hợp muốn tính quảng đường đi từ A >> B >> C thì cấu hình điểm đến B, C theo thứ tự muốn đi và cách nhau dấu "|"

Request mẫu:

curl "https://api.vnmap.com.vn/directions?key=5277a63e23759eftha274a8bf5230183&origin=10.7481933,106.6269849&destination=10.7610716,106.6194032&mode=car"

Responce mẫu:

{
  "geocoded_waypoints": [],
  "status": "OK",
  "routes": [
    {
      "distance": {
        "text": "2.92 KM",
        "value": 2920
      },
      "duration": {
        "text": "4 phút 27 giây",
        "value": 267
      },
      "bounds": [],
      "copyrights": "VNMAP @2021",
      "summary": "",
      "warnings": [],
      "waypoint_order": [],
      "overview_polyline": {
        "points": "mgr`AoqxiSkD{EQWIK[c@o@{@GGGIODFJHJ@BfAzAFFfDtEb@l@HHKNwClE_FdI[AQA_CEWAG?Y?KEq@CG?U?G?UAKBgBCqBG]AY?m@Cg@Ai@?I?G?e@Ae@AG?G?wBIE?C?M?i@CYEi@KUIMESKIEWKuBu@a@O]OCCo@WYCw@PWB_@DeBT[DmARa@HsAT}@NSDCNc@pCCLENOXOVWZ]^MPiCvC^^z@C^A~@ExAGp@ED?B@@B?DEb@IVq@`CCHMb@GXQj@Md@Ut@Sv@K\\]fAS@G?"
      },
      "legs": [
        {
          "distance": {
            "text": "2.92 KM",
            "value": 2920
          },
          "duration": {
            "text": "266.1 giây",
            "value": 266.1
          },
          "end_address": "68, Đường Chiến Lược, Phường Bình Trị Đông, Quận Bình Tân, Thành Phố Hồ Chí Minh, Việt Nam",
          "end_location": {
            "lat": "10.7481933",
            "lng": "106.6269849"
          },
          "start_address": "175, (Số Cũ 563B) Đường Kinh Dương Vương, Phường 12, Quận 6, Thành Phố Hồ Chí Minh, Việt Nam",
          "start_location": {
            "lat": "10.7610716",
            "lng": "106.6194032"
          },
          "steps": [
            {
              "distance": {
                "text": "260 mét",
                "value": 260
              },
              "duration": {
                "text": "20 giây",
                "value": 20
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "mgr`AoqxiSkD{EQWIK[c@o@{@GGGI"
              }
            },
            {
              "distance": {
                "text": "288 mét",
                "value": 288
              },
              "duration": {
                "text": "25 giây",
                "value": 25
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "qpr`Aa}xiSODFJHJ@BfAzAFFfDtEb@l@HH"
              }
            },
            {
              "distance": {
                "text": "369 mét",
                "value": 369
              },
              "duration": {
                "text": "34 giây",
                "value": 34
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "ggr`AmpxiSKNwClE_FdI"
              }
            },
            {
              "distance": {
                "text": "1.146 KM",
                "value": 1146
              },
              "duration": {
                "text": "1 phút 43 giây",
                "value": 103
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "ksr`Ai_xiS[AQA_CEWAG?Y?KEq@CG?U?G?UAKBgBCqBG]AY?m@Cg@Ai@?I?G?e@Ae@AG?G?wBIE?C?M?i@CYEi@KUIMESKIEWKuBu@a@O]OCCo@WYCw@PWB_@DeBT[DmARa@HsAT}@NSD"
              }
            },
            {
              "distance": {
                "text": "312 mét",
                "value": 312
              },
              "duration": {
                "text": "36 giây",
                "value": 36
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "}qt`AwbxiSCNc@pCCLENOXOVWZ]^MPiCvC"
              }
            },
            {
              "distance": {
                "text": "199 mét",
                "value": 199
              },
              "duration": {
                "text": "19 giây",
                "value": 19
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "}zt`A_twiS^^z@C^A~@ExAGp@ED?B@@B"
              }
            },
            {
              "distance": {
                "text": "329 mét",
                "value": 329
              },
              "duration": {
                "text": "31 giây",
                "value": 31
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "ipt`AsswiS?DEb@IVq@`CCHMb@GXQj@Md@Ut@Sv@K\\]fA"
              }
            },
            {
              "distance": {
                "text": "17 mét",
                "value": 17
              },
              "duration": {
                "text": "3 giây",
                "value": 3
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "yvt`AabwiSS@G?"
              }
            },
            {
              "distance": {
                "text": "0 mét",
                "value": 0
              },
              "duration": {
                "text": "",
                "value": 0
              },
              "intersections": [],
              "end_location": [],
              "start_location": [],
              "html_instructions": "",
              "maneuver": "",
              "travel_mode": "driving",
              "polyline": {
                "points": "uwt`A_bwiS"
              }
            }
          ]
        }
      ]
    }
  ]
}