Nearby Search(新規)

プラットフォームを選択: Android iOS JavaScript ウェブサービス

Nearby Search(新版) リクエストは 1 つ以上の場所タイプを受け取り、 あります。1 つ以上のデータ型を指定するフィールド マスク は必須です。Nearby Search(新版)は POST リクエストのみをサポートしています。

API Explorer を使用すると、ライブ リクエストを発行できるため、API と API オプション:

試してみる

インタラクティブな

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(新版)は レスポンスとしての 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_IDplaces.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"。使用 includedPrimaryTypesexcludedPrimaryTypes: 結果をフィルタリングする メインタイプを指定します

    場所には、タイプの複数のタイプ値を含めることもできます。 表 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 の中から除外する、主要な場所タイプのカンマ区切りのリスト 表示されます。

    競合する主要なタイプがある場合(例: 両方に使用されているタイプ) includedPrimaryTypesexcludedPrimaryTypes INVALID_ARGUMENT エラーが返されます。

  • languageCode

    結果を返す言語。

    • サポートされている言語のリストをご覧ください。Google を頻繁に利用 によってサポートされる言語が更新されるため、このリストがすべてを網羅しているとは限りません。
    • languageCode が指定されていない場合、API はデフォルトで en になります。条件 無効な言語コードを指定すると、API から INVALID_ARGUMENT が返されます。 エラーが発生します。
    • API は可能な限りユーザーの双方が判読できる住所を提供します。 ありませんこの目標を達成するため、番地をローカル言語で返します。 必要に応じてユーザーが読み取り可能なスクリプトに文字変換し、 あります。その他の住所はすべて優先言語で返されます。住所項目は次のとおりです。 すべて同じ言語で返されます(最初のコンポーネントから選択されます)。
    • 優先言語で名前を表示できない場合、API は最も近い言語を使用します。
    • 優先言語は、API によって選択される結果セットに小さい影響を及ぼします 返される順序を指定します。ジオコーダは、略語を解釈します。 道路の種類や類義語など、言語によって異なる ある言語では有効でも別の言語では有効でない場合があります
  • maxResultCount

    返されるプレイス結果の最大数を指定します。範囲内で指定してください 1 ~ 20(デフォルト)で指定します。

  • rankPreference

    使用するランキングのタイプ。このパラメータを省略すると、検索結果は人気順でランク付けされます。 次のいずれかになります。

    • POPULARITY(デフォルト)人気度に基づいて検索結果を並べ替えます。
    • DISTANCE 結果の距離に基づいて昇順で並べ替えます。 表示されます。
  • regionCode

    レスポンスのフォーマットに使用される地域コード。 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.primaryTypeplaces.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 オプションに慣れることができます。

  1. API アイコン API Explorer を開きます。 を選択します。 。
  2. 必要に応じて [標準パラメータを表示] を展開し、次のように設定します。 fields パラメータ フィールド マスクに追加します。
  3. 必要に応じて、[Request body] を編集します。
  4. [Execute] ボタンを選択します。ポップアップで、リクエストに使用するアカウントを選択します。
  5. [API Explorer] パネルで、展開アイコンを選択します。 API Explorer を開きます。: API Explorer ウィンドウを展開します。