Routes API の概要

Routes API は、HTTPS リクエストを受け取り、2 つの場所間の最適なルート、または異なる出発地と目的地の間のルートのマトリックスの距離と所要時間のいずれかを返すサービスです。

Routes API を使用する理由

Routes API を使用すると、交通機関の詳細、最新の交通状況と道路状況、ルート設定を使用して、正確なルートやルート情報を取得できます。

  • さまざまな交通機関の種類と機能

  • 車両が向かっている方角

  • 乗車または降車する道路の側

  • 交通状況と通行止め

  • 危険な地域の回避や安全な集合場所の提供など、安全に関する懸念

  • 通行料や、時間や距離、燃費などのルート メタデータなどのオプション機能を使用して、ルーティングのニーズに応じてレイテンシ、品質、費用のバランスを取る

配車スケジュールに最も効率的なルートを決定することもできます。次に例を示します。

  • 一連のパッケージを回収するワーカーを割り当てる最適な方法

  • 最終目的地に荷物を配送するのに最適な倉庫を特定する

Routes API でできること

Routes API を使用すると、主に次の 2 つのカテゴリのルーティング情報を取得できます。

  • ある場所から 1 つまたは複数の目的地までのルート

  • 複数の出発地と目的地間の可能な経路のマトリックス

1 つまたは複数の目的地の経路を取得する

Routes API の Compute Routes メソッドを使用すると、地点間の次のことを計算できます。

  • さまざまな交通手段のルートを検索できます。また、1 つまたは複数の目的地を指定することもできます。

    • 移動モード(交通機関、車、2 輪車、徒歩、自転車など)。

    • 一連のウェイポイント。最も効率的な順序で移動するように最適化できます。

  • 出発地、目的地、ウェイポイントを指定できる方法が複数ある:

    • テキスト文字列。例: 「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 の 2 つのメソッドがあります。

ComputeRoutes

Routes API の ComputeRoutes メソッドは、リクエストの詳細を含む JSON リクエスト本文を含む HTTP POST リクエストを受け入れます。必須項目は、出発地、目的地、旅行モード、返すフィールドを指定するフィールド マスクです。

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 は、リクエストの詳細を含む JSON リクエスト本文を含む HTTP POST リクエストを受け入れます。少なくとも 1 つの出発地、2 つ以上の目的地、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 1 つの出発地ウェイポイントから 1 つの目的地ウェイポイントまでのルートの配列を返します。

Routes API の使用方法

1 セットアップする まず、Google Cloud プロジェクトを設定するから始め、その後の設定手順を完了します。
2 ルートを計算してレスポンスを確認する 詳細については、ルートを取得するルート レスポンスを確認するをご覧ください。
3 ルートの行列を計算してレスポンスを確認する 詳細については、ルート マトリックスを取得するルート マトリックスのレスポンスを確認するをご覧ください。

利用可能なクライアント ライブラリ

Routes API で使用可能なクライアント ライブラリの一覧については、クライアント ライブラリをご覧ください。

次のステップ