Nearby Search(新版) リクエストは 1 つ以上の場所タイプを受け取り、 あります。1 つ以上のデータ型を指定するフィールド マスク は必須です。Nearby Search(新版)は POST リクエストのみをサポートしています。
API Explorer を使用すると、ライブ リクエストを発行して、API と API オプション:
試してみるインタラクティブな demo: Nearby Search(新版)の結果を地図に表示
Nearby Search(新版)リクエスト
Nearby Search(新版)リクエストは、 フォーム:
https://places.googleapis.com/v1/places:searchNearby
すべてのパラメータを JSON リクエスト本文または POST リクエストを実行します。例:
curl -X POST -d '{ "includedTypes": ["restaurant"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965}, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: places.displayName" \ https://places.googleapis.com/v1/places:searchNearby
Nearby Search(新版)の回答
Nearby Search(新版)は <ph type="x-smartling-placeholder"></ph> レスポンスとしての JSON オブジェクト。レスポンスの説明:
places
配列には、一致するすべての場所が含まれています。- 配列内の各位置は、各文字列が
Place
渡されます。Place
オブジェクトには、単一の指標に関する詳細情報が含まれます。 できます。 - リクエストで渡される FieldMask はフィールドのリストを指定します。
Place
オブジェクトで返されます。
完全な JSON オブジェクトの形式は次のとおりです。
{ "places": [ { object (Place) } ] }
必須パラメータ
-
FieldMask
レスポンスで返すフィールドのリストを指定するには、 レスポンス フィールド マスク。 URL パラメータを使用してレスポンス フィールド マスクをメソッドに渡します。
$fields
またはfields
、または HTTP ヘッダーを使用するX-Goog-FieldMask
。レスポンスで返されるフィールドのデフォルトのリストはありません。 フィールド マスクを省略すると、メソッドはエラーを返します。フィールド マスキングは、API 呼び出しのリクエストを 保存し、不要な処理時間を回避して、 請求料金を管理できます。
返される場所のデータタイプをカンマ区切りのリストで指定します。たとえば 場所の表示名と住所を取得できます。
X-Goog-FieldMask: places.displayName,places.formattedAddress
*
を使用してすべてのフィールドを取得します。X-Goog-FieldMask: *
次のフィールドを 1 つ以上指定します。
次のフィールドによって Nearby Search(Basic)SKU がトリガーされます。
places.accessibilityOptions
,places.addressComponents
,places.adrFormatAddress
,places.attributions
,places.businessStatus
,places.displayName
,places.formattedAddress
,places.googleMapsUri
,places.iconBackgroundColor
,places.iconMaskBaseUri
,places.id
,places.location
,places.name
*places.photos
,places.plusCode
,places.primaryType
,places.primaryTypeDisplayName
,places.shortFormattedAddress
,places.subDestinations
,places.types
,places.utcOffsetMinutes
,places.viewport
*places.name
フィールドには、プレイス リソース名が含まれます 次の形式にします。places/PLACE_ID
。places.displayName
を使用する 場所のテキスト名にアクセスします。次のフィールドによって Nearby Search(Advanced)SKU がトリガーされます。
places.currentOpeningHours
,places.currentSecondaryOpeningHours
,places.internationalPhoneNumber
,places.nationalPhoneNumber
,places.priceLevel
,places.rating
,places.regularOpeningHours
,places.regularSecondaryOpeningHours
,places.userRatingCount
,places.websiteUri
以下のフィールドで Nearby Search(Preferred)SKU がトリガーされます。
places.allowsDogs
,places.curbsidePickup
,places.delivery
,places.dineIn
,places.editorialSummary
,places.evChargeOptions
,places.fuelOptions
,places.goodForChildren
,places.goodForGroups
,places.goodForWatchingSports
,places.liveMusic
,places.menuForChildren
,places.parkingOptions
,places.paymentOptions
,places.outdoorSeating
,places.reservable
,places.restroom
,places.reviews
,places.servesBeer
,places.servesBreakfast
,places.servesBrunch
,places.servesCocktails
,places.servesCoffee
,places.servesDessert
,places.servesDinner
,places.servesLunch
,places.servesVegetarianFood
,places.servesWine
,places.takeout
-
locationRestriction
検索する地域を円として指定します。中心点と半径(メートル単位)で定義します。 半径は 0.0 ~ 50000.0 の範囲で指定してください。デフォルトの radius は 0.0 です。必要なこと 0.0 より大きい値に設定してください。
次に例を示します。
"locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
オプション パラメータ
-
includeTypes/excludedTypes、includedPrimaryTypes/excludedPrimaryTypes
次の型から型のリストを指定できます。 テーブル A をフィルタに使用する 表示されます。各タイプ制限のカテゴリで最大 50 個のタイプを指定できます。
1 つの場所には、タイプの中から 1 つのメインタイプのみを指定できます。 テーブル A が関連付けられています。 できます。たとえば、主要な種類が
"mexican_restaurant"
または"steak_house"
。使用includedPrimaryTypes
とexcludedPrimaryTypes
: 結果をフィルタリングする メインタイプを指定します場所には、タイプの複数のタイプ値を含めることもできます。 表 A 関連付けられていますたとえば、レストランには次のタイプがあります。
"seafood_restaurant"
さん、"restaurant"
さん、"food"
さん、"point_of_interest"
、"establishment"
。includedTypes
を使用するexcludedTypes
は、関連付けられたタイプのリストで結果をフィルタリングします。 できます。一般的なプライマリ タイプを指定する場合(例:
"restaurant"
、"hotel"
です。レスポンスには、より具体的なプライマリ タイプの場所を含めることができます。 表示されます。たとえば、プライマリ タイプである"restaurant"
。レスポンスには、メインタイプが「"restaurant"
。ただし、より具体的な場所が含まれる場合もあります。 プライマリ タイプ("chinese_restaurant"
、"seafood_restaurant"
など)を指定します。複数のタイプ制限を指定して検索を指定した場合は、 すべての制限を満たすものが返されますたとえば
{"includedTypes": ["restaurant"], "excludedPrimaryTypes": ["steak_house"]}
、 過去に検索した場所は"restaurant"
関連のサービスを提供していますが、主な業務は扱っていません"steak_house"
として。includedTypes
Table A から検索する場所タイプのカンマ区切りのリスト。 このパラメータを省略すると、すべてのタイプの場所が返されます。
excludedTypes
表 A の中から除外する場所のタイプをカンマで区切ったリスト できます。
includedTypes
("school"
など)と リクエスト内でexcludedTypes
("primary_school"
など)である場合、"school"
に分類されますが、"primary_school"
。レスポンスには、次の少なくとも 1 つに一致する場所が含まれます。includedTypes
のみが含まれ、excludedTypes
はなし。タイプが競合する場合(例: 両方に指定されているタイプ)
includedTypes
excludedTypes
の場合は、INVALID_REQUEST
エラーが返されます。includedPrimaryTypes
テーブル A に含まれる主要な場所タイプのカンマ区切りのリスト 。
excludedPrimaryTypes
表 A の中から除外する主要な場所タイプのカンマ区切りのリスト 表示されます。
競合する主要なタイプがある場合(例: 両方に使用されているタイプ)
includedPrimaryTypes
とexcludedPrimaryTypes
INVALID_ARGUMENT
エラーが返されます。 -
languageCode
結果を返す言語。
- サポートされている言語のリストをご覧ください。Google を頻繁に利用 によってサポートされる言語が更新されるため、このリストがすべてを網羅しているとは限りません。
languageCode
が指定されていない場合、API はデフォルトでen
になります。条件 無効な言語コードを指定すると、API からINVALID_ARGUMENT
が返されます。 エラーが発生します。- API は可能な限りユーザーの双方が判読できる住所を提供します。 ありませんこの目標を達成するため、番地をローカル言語で返します。 必要に応じてユーザーが読み取り可能なスクリプトに文字変換し、 あります。その他の住所はすべて優先言語で返されます。住所項目は次のとおりです。 すべて同じ言語で返されます(最初のコンポーネントから選択されます)。
- 優先言語で名前を表示できない場合、API は最も近い言語を使用します。
- 優先言語は、API によって選択される結果セットに小さい影響を及ぼします 返される順序を指定します。ジオコーダは、略語を解釈します。 道路の種類や類義語など、言語によって異なる ある言語では有効でも別の言語では有効でない場合があります
-
maxResultCount
返されるプレイス結果の最大数を指定します。範囲内で指定してください 1 ~ 20(デフォルト)で指定します。
-
rankPreference
使用するランキングのタイプ。このパラメータを省略すると、検索結果は人気順でランク付けされます。 次のいずれかになります。
POPULARITY
(デフォルト)人気度に基づいて検索結果を並べ替えます。DISTANCE
結果の距離に基づいて昇順で並べ替えます。 表示されます。
-
regionCode
レスポンスのフォーマットに使用される地域コード。 <ph type="x-smartling-placeholder"></ph> 2 文字の CLDR コードの値。デフォルト値はありません。
レスポンスの
formattedAddress
フィールドの国名がregionCode
の場合、国コードはformattedAddress
から省略されます。 このパラメータはadrFormatAddress
(常に国を含む)には影響しません。 この名前を含まないshortFormattedAddress
で返されます。ほとんどの CLDR コードは、 ISO 3166-1 コード いくつか例外がありますたとえば、英国の ccTLD は 「uk」(.co.uk)、ISO 3166-1 コードは「gb」(技術的には、 「グレート ブリテンおよび北アイルランド連合王国」という当事者である必要があります)。 このパラメータは、適用される法律に基づき、結果に影響する場合があります。
Nearby Search(新版)の例
同じ種類の場所を検索する
次の例は、ディスプレイに対する Nearby Search(新版)リクエストを示しています。
半径 500 m 以内のすべてのレストランの名前(circle
で定義):
curl -X POST -d '{ "includedTypes": ["restaurant"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965}, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: places.displayName" \ https://places.googleapis.com/v1/places:searchNearby
X-Goog-FieldMask
ヘッダーは、レスポンスが
データ フィールド places.displayName
が含まれています。
レスポンス
次の形式になります。
{ "places": [ { "displayName": { "text": "La Mar Cocina Peruana", "languageCode": "en" } }, { "displayName": { "text": "Kokkari Estiatorio", "languageCode": "en" } }, { "displayName": { "text": "Harborview Restaurant & Bar", "languageCode": "en" } }, ... }
追加情報を返すには、フィールド マスクにデータ型を追加します。
たとえば、places.formattedAddress,places.types,places.websiteUri
を追加して
レストランの住所、タイプ、ウェブアドレスをレスポンスで使用すると、
curl -X POST -d '{ "includedTypes": ["restaurant"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965}, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: places.displayName,places.formattedAddress,places.types,places.websiteUri" \ https://places.googleapis.com/v1/places:searchNearby
レスポンス 次の形式になります。
{ "places": [ { "types": [ "seafood_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "PIER 1 1/2 The Embarcadero N, San Francisco, CA 94105, USA", "websiteUri": "http://lamarsf.com/", "displayName": { "text": "La Mar Cocina Peruana", "languageCode": "en" } }, { "types": [ "greek_restaurant", "meal_takeaway", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "200 Jackson St, San Francisco, CA 94111, USA", "websiteUri": "https://kokkari.com/", "displayName": { "text": "Kokkari Estiatorio", "languageCode": "en" } }, ... }
さまざまな種類の場所を検索する
次の例は、
ビジネス拠点から半径 1,000 メートル以内にあるすべてのコンビニエンス ストアと酒店の表示名を
指定された circle
:
curl -X POST -d '{ "includedTypes": ["liquor_store", "convenience_store"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 1000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: places.displayName,places.primaryType,places.types" \ https://places.googleapis.com/v1/places:searchNearby
places.primaryType
と places.types
を追加しています。
レスポンスに各場所のタイプ情報が含まれるようになり、
適切な場所を見つけます。
検索から場所のタイプを除外する
次の例は、すべての場所に対する Nearby Search(新版)リクエストを示しています
"school"
のタイプ。"primary_school"
タイプのすべての場所を除外して、結果をランク付けします
距離別:
curl -X POST -d '{ "includedTypes": ["school"], "excludedTypes": ["primary_school"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 1000.0 } }, "rankPreference": "DISTANCE" }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: places.displayName" \ https://places.googleapis.com/v1/places:searchNearby
ある地域の付近のすべての場所を検索(距離でランク付け)
次の例は、場所の Nearby Search(新版)リクエストを示しています。
サンフランシスコのダウンタウンの近くにあります。この例では、rankPreference
パラメータを使用して、距離で結果をランク付けします。
curl -X POST -d '{ "maxResultCount": 10, "rankPreference": "DISTANCE", "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 1000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: places.displayName" \ https://places.googleapis.com/v1/places:searchNearby
試してみよう:
API Explorer を使用すると、サンプル リクエストを作成して、 API と API オプションに慣れることができます。
- API アイコン を選択します。 。
- 必要に応じて [標準パラメータを表示] を展開し、次のように設定します。
fields
パラメータ フィールド マスクに追加します。 - 必要に応じて、[Request body] を編集します。
- [Execute] ボタンを選択します。ポップアップで、リクエストに使用するアカウントを選択します。
[API Explorer] パネルで、[展開] アイコンを選択します。 : API Explorer ウィンドウを展開します。