v3 の機能から SearchDestinations エンドポイントに移行する

欧州経済領域(EEA)のデベロッパー

Geocoding API v3 の次の機能は、Geocoding API v4 の SearchDestinations エンドポイントに置き換えられます。

  • 閲覧開始数
  • ナビゲーション ポイント
  • 建物の輪郭
  • 邸宅と庭園

上記の機能で Geocoding API v3 を使用していた場合は、このドキュメントを参照して、代わりに SearchDestinations エンドポイントを使用してこれらの機能を取得してください。このドキュメントでは、SearchDestinations API レスポンスのどこでこれらの機能を見つけられるか、また、Geocoding API v3 と Geocoding API v4 の SearchDestinations エンドポイントの API レスポンスでこれらの機能がどのように表現されているかの違いについて説明します。

閲覧開始数

destination に関連付けられているエントランスを取得するには、フィールド destination.entrances を使用します。

entrance の形式は、Geocoding API v3 のエントランス形式とは若干異なります。destination.entrances の各エントランスには次のフィールドがあります。

  • displayName - これは新しいオプション フィールドで、入り口のわかりやすい名前(「Gate B」など)が設定されます。
  • location - LatLng タイプの位置情報です。Geocoding API v3 で使用される形式とは異なります。
  • tags - Geocoding API v3 のエントランスの tags フィールドと同じです。
  • place - Geocoding API v3 のエントランスの buildingPlaceId フィールドに類似しています。ただし、このフィールドのプレイス ID は、建物だけでなく、あらゆるタイプの場所のプレイス ID になる可能性があります。

destination に関連付けられているナビゲーション ポイントを取得するには、destination.navigationPoints フィールドを使用します。

navigationPoint の形式は、Geocoding API v3 のナビゲーション ポイントの形式とわずかに異なります。destination.navigationPoints の各ナビゲーション ポイントには、次のフィールドがあります。

  • displayName - これは新しいオプション フィールドで、ナビゲーション ポイントの人間が読める名前(「5th Ave」など)が含まれます。
  • location - LatLng タイプの位置情報です。Geocoding API v3 で使用される形式とは異なります。
  • travelModes - Geocoding API v3 のナビゲーション ポイントの restrictedTravelModes フィールドに似ています。列挙型の値は同じですが、このフィールドは、制限された移動手段ではなく、ナビゲーション ポイントで許容される移動手段を表すようになりました。
  • usage- これは、ナビゲーション ポイントでサポートされるユース ケースが含まれる新しいフィールドです。ほとんどのナビゲーションポイントにはUNKNOWNただし、ナビゲーション ポイントの使用が何らかの形で制限されるわけではありません。

建物の輪郭

建物のアウトラインを取得するにはdestination、あなたはdisplayPolygonの分野placeViewオブジェクトdestination建物を表すもの。各 placeView について、placeView.structureType フィールドを使用して建物かどうかを確認できます。構造タイプが BUILDING の場合、placeView.displayPolygon フィールドからアウトラインを取得できます。また、placeView には、Geocoding API v3 にはなかった建物の追加フィールドも含まれます。

destination には、次のフィールドの建物を示す placeView オブジェクトを含めることができます。

  • destination.primary - これは宛先の主な場所です。
  • destination.containingPlaces - これは、メインの場所を「含む」より大きな場所を保持できる繰り返しフィールドです。例えば、主な場所がsubpremisecontainingPlaces通常はplaceView建物を表します。
  • destination.subDestinations - これは、プライマリの場所のサブデスティネーションを保持できる繰り返しフィールドです。たとえば、建物の個々のマンションの部屋などです。通常、このフィールドには建物を示す placeView は含まれません。

placeView.displayPolygon の形式は、RFC 7946 形式を使用した GeoJSON 形式である Geocoding API v3 の建物の輪郭形式と一致します。

邸宅と庭園

アウトラインの構築と同様に、destination に関連付けられたグラウンドを取得するには、グラウンドを表す destination 内の placeView オブジェクトの displayPolygon フィールドを使用する必要があります。各 placeView について、placeView.structureType フィールドで根拠かどうかを確認できます。構造体の型が GROUNDS の場合、placeView.displayPolygon フィールドからアウトラインを取得できます。また、placeView には、Geocoding API v3 になかった理由を示す追加フィールドも含まれます。

destination には、次のフィールドで理由を表す placeView オブジェクトを含めることができます。

  • destination.primary
  • destination.containingPlaces
  • destination.subDestinations

placeView.displayPolygon の形式は、RFC 7946 形式を使用した GeoJSON 形式である、Geocoding API v3 のグラウンド アウトライン形式と一致します。

フィールド マスクを使用してこれらの機能をリクエストする

SearchDestinations エンドポイントには、返すフィールドの選択で説明されているように、フィールド マスクが必要です。すべてのフィールドを返すようにフィールド マスクを * に設定することも、受信する特定のフィールドに設定することもできます。たとえば、次の API リクエストでは、目的地のエントランス、ナビゲーション ポイント、建物の輪郭、グラウンドを取得するために必要なすべてのフィールドを受け取るようにフィールド マスクを設定します。

curl -X POST -d '{"place": "places/ChIJG3kh4hq6j4AR_XuFQnV0_t8"}' \
  -H "X-Goog-Api-Key: API_KEY" \
  -H "Content-Type: application/json" \
  -H "X-Goog-FieldMask: destinations.entrances,destinations.navigationPoints,destinations.primary,destinations.containingPlaces,destinations.subDestinations" \
  https://geocode.googleapis.com/v4alpha/geocode/destinations