Places API は、既存のテキスト検索をサポートしています。既存のテキスト検索をご存じの方向けに、テキスト検索の新バージョンの変更点について説明します。
- 新しいテキスト検索では HTTP POST リクエストが使用されます。HTTP POST リクエストの一部として、リクエスト本文またはヘッダーでパラメータを渡します。一方、既存のテキスト検索では、HTTP GET リクエストを使用して URL パラメータを渡します。
- フィールドのマスキングは必須です。レスポンスで返すフィールドを指定する必要があります。返されるフィールドのデフォルト リストはありません。このリストを省略すると、メソッドはエラーを返します。詳細については、FieldMask をご覧ください。
- 新しい Text Search は、認証メカニズムとして API キーと OAuth トークンの両方をサポートしています。
- 新しいテキスト検索では、レスポンス形式として JSON のみがサポートされています。
既存のテキスト検索では、クエリ文字列で緯度と経度の座標を指定できます。例:
query=37.4239,-122.0925
。 このオプションは、新しいテキスト検索ではサポートされていません。リバース ジオコーディングを使用して座標で検索し、住所を返します。または、Nearby Search(新規)を使用して、特定の場所の周辺の場所を検索します。
- Text Search(新規)API の JSON レスポンス形式は、既存の API の形式から変更されています。詳しくは、Places API レスポンスの移行をご覧ください。
次の表に、新しい Text Search 用に名前が変更または変更された既存の Text Search のパラメータ、またはサポートが終了したパラメータを示します。
現在のパラメータ | 新しいパラメータ | メモ |
---|---|---|
evOptions |
新しいパラメータ。 | |
language |
languageCode |
|
location |
locationBias |
|
maxprice/minprice |
priceLevels |
|
opennow |
openNow |
|
pagetoken |
pageToken |
|
query |
textQuery |
すべてのリクエストで必須です。 |
radius |
locationBias |
locationBias を定義するときに半径を指定します。 |
region |
regionCode |
|
type |
includedType |
指定できる値は 1 つのみです。 |
strictTypeFiltering |
新しいパラメータ。 |
リクエスト例
次の GET リクエストの例では、既存のテキスト検索を使用しています。この例では、「Spicy Vegetarian Food in Sydney, Australia」に関する情報を含む JSON レスポンスをリクエストし、すべてのパラメータを URL パラメータとして渡します。
curl -L -X GET \ 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY
Text Search(新規)では、POST リクエストを作成し、JSON リクエスト本文またはヘッダー内のすべてのパラメータを POST リクエストの一部として渡します。この例でもフィールド マスクを使用しているため、レスポンスにはプレイスの表示名とフォーマットされた住所のみが含まれます。
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'