Places API(従来版)は Text Search(従来版)をサポートしています。テキスト検索(従来版)に精通している場合、 テキスト検索(新版)では次のような変更が加えられています。
- テキスト検索(新規)は HTTP POST リクエストを使用します。HTTP POST リクエストの一部として、リクエスト本文またはヘッダーでパラメータを渡します。一方、テキスト検索(従来版)では、HTTP GET リクエストを使用して URL パラメータを渡します。
- フィールドのマスキングは必須です。レスポンスで返すフィールドを指定する必要があります。返されるフィールドのデフォルト リストはありません。このリストを省略すると、メソッドはエラーを返します。詳細については、FieldMask をご覧ください。
- Text Search(新規)は、認証メカニズムとして API キーと OAuth トークンの両方をサポートしています。
- 新しいテキスト検索では、レスポンス形式として JSON のみがサポートされています。
テキスト検索(従来版)では、クエリ文字列で緯度と経度の座標を指定できます。例:
query=37.4239,-122.0925
。 このオプションはテキスト検索(新規)ではサポートされていません。リバース ジオコーディングを使用して座標で検索し、住所を返す。Nearby Search(新版)を使用して、特定の場所の周辺の場所を検索する。
- Text Search(新規)の 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'