Routes API 總覽

Routes API 服務接受 HTTPS 要求,並傳回兩個地點之間的理想路線,或傳回不同起點和目的地位置之間路線矩陣的距離和所需時間。

使用 Routes API 的好處

透過 Routes API,您可以運用大眾運輸詳細資料、最新路況和道路狀況,以及路徑偏好設定,取得準確的路線和行程資訊:

  • 各種交通方式的類型和功能

  • 車輛的前進方向

  • 上車或下車地點的側邊

  • 路況與道路封閉

  • 安全疑慮,例如避開危險區域或提供安全的上車區域

  • 使用收費路段、行程中繼資料 (例如時間和距離) 和燃油效率等選用功能,針對路線需求取得延遲時間、品質和成本平衡

您也可以為調度排程找出最有效率的路徑,例如:

  • 指派工作人員的最佳時機

  • 決定將包裹運送至最終目的地的最佳倉庫

Routes API 可以執行哪些操作?

您可以使用 Routes API,取得兩種主要的轉送資訊:

  • 從某個地點前往一或多個目的地的路徑

  • 多個起點和終點之間的可能路徑矩陣

取得一或多個目的地的路線

您可以使用 Routes API Compute Routes 方法計算位置之間的值:

  • 取得不同的交通方式路線,以及單一或多個目的地的路線:

    • 交通方式,包括大眾運輸、開車、雙輪車、步行或單車。

    • 透過一系列路線控點,進行最佳化調整,以最有效率的方式抵達目的地。

  • 多種指定起點、目的地和路線控點的方式

    • 文字字串。例如:「Chicago, IL」、「Darwin, NT, Australia」、「1800 Amphitheatre Parkway, Mountain View, CA 94043」或「CWF6+FWX Mountain View, California」

    • 地點 ID

    • 經緯度座標,可選擇是否搭配車輛方向

  • 根據需求和目標,調整路線選項

  • 使用欄位遮罩只要求所需資料來控制延遲時間和品質,有助於避免不必要的處理時間並增加要求費率。詳情請參閱「選擇要傳回的資訊」。

取得可能路徑的矩陣

Routes API Compute Route Matrix 方法提供多個起點與終點之間的建議路線資訊矩陣 (包括距離和預估抵達時間),協助您根據業務需求選擇最佳起點和目的地。您可以要求以下類型的距離資料:

  • 所選交通方式的距離

  • 距離 (公里或英里)

  • 預估交通時間

您可以利用距離資料,決定在多個可能的起點和目的地之間,最有效率的路線乘客、貨物或員工路線。

在計算整個矩陣前,您可以串流回應的元素,進而縮短回應延遲時間。

您可以為每個伺服器端要求指定多個起點和目的地,其來源數量乘以至最多 625 個目的地。

Routes API 的運作方式

Routes API 提供兩種方法:ComputeRoutesComputeRouteMatrix

ComputeRoutes

Routes API ComputeRoutes 方法接受具有包含要求詳細資料的 JSON 要求主體的 HTTP POST 要求。必須提供起點、目的地、travelMode 和欄位遮罩,以指定要傳回的欄位。

範例

curl -X POST -d '{
    "origin": {
      "address": "1800 Amphitheatre Parkway, Mountain View, CA 94043"
    },
    "destination": {
      "address": "Sloat Blvd &, Upper Great Hwy, San Francisco, CA 94132"
    },
  "travelMode": "DRIVE"
  }' \
  -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
  -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters' \
  'https://routes.googleapis.com/directions/v2:computeRoutes'

接著,服務會計算要求的路線,並傳回您要求的欄位。

ComputeRouteMatrix

Routes API ComputeRouteMatrix 接受 HTTP POST 要求,且要求主體包含要求詳細資料的 JSON 要求內容。至少須有一個來源、兩個以上的目的地、travelMode,以及用來指定要傳回的欄位遮罩。

範例

curl -X POST -d '{
  "origins": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420761,
            "longitude": -122.081356
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.403184,
            "longitude": -122.097371
          }
        }
      }
    }
  ],
  "destinations": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420999,
            "longitude": -122.086894
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.383047,
            "longitude": -122.044651
          }
        }
      }
    }
  ],
  "travelMode": "DRIVE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status,condition' \
'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'

回應包含所有起點與目的地路線控點組合的可能路線。

資源

下表摘要說明 Routes API 提供的資源及其傳回的資料。

資料資源 傳回的資料 傳回格式
ComputeRoutes 傳迴路線的路線、路段和步驟 (如有要求)。 JSON
ComputeRouteMatrix 傳回從一個起點到某個目的地路線控點的路線陣列。

如何使用 Routes API

1 開始設定 請先設定 Google Cloud 專案,然後按照後續指示操作。
2 計算路徑並查看回應 詳情請參閱取得路線查看路線回應
3 計算路徑矩陣並查看回應 詳情請參閱「取得路徑矩陣」和「查看路徑矩陣回應」。

可用的用戶端程式庫

如需 Routes API 可用的用戶端程式庫清單,請參閱用戶端程式庫

後續步驟