はじめに
Places API(旧版)は、 テキスト検索(旧版)をサポートしています。テキスト検索(旧版)をご存じの場合は、 テキスト検索(新版) で次の変更が行われます。
- テキスト検索(新版)では HTTP POST リクエストを使用します。パラメータは、HTTP POST リクエストの一部としてリクエスト本文またはヘッダーで渡します。一方、テキスト検索(旧版)では、 URL パラメータを HTTP GET リクエストを使用して渡します。
- フィールド マスクは必須です。レスポンスで返されるフィールドを指定する必要があります。 返されるフィールドのデフォルトのリストはありません。このリストを省略すると、メソッドからエラーが返されます。詳しくは、 FieldMask をご覧ください。
- テキスト検索(新版)では、認証メカニズムとして API キー と OAuth トークンの両方がサポートされています。
- テキスト検索(新版)では、レスポンス形式として JSON のみがサポートされています。
テキスト検索(旧版)では、クエリ文字列で緯度と経度 座標を指定できます。例:
query=37.4239,-122.0925。 このオプションは、テキスト検索(新版)ではサポートされていません。座標で検索して住所を返すには リバース ジオコーディング を使用し、特定の場所の周辺の場所を検索するには Nearby Search(新版) を使用します。
- テキスト検索(新版)の JSON レスポンス形式は、旧版 API の形式から変更されています。詳しくは、 Places API レスポンスを移行するをご覧ください。
次の表に、テキスト検索(旧版)のパラメータのうち、テキスト検索(新版)で名前が変更されたパラメータ、変更されたパラメータ、サポートされなくなったパラメータを示します。
| 現在のパラメータ | 新しいパラメータ | メモ |
|---|---|---|
evOptions |
新しいパラメータ。 | |
language |
languageCode |
|
location |
locationBias |
|
maxprice/minprice |
priceLevels |
|
opennow |
openNow |
|
pagetoken |
pageToken |
|
query |
textQuery |
すべてのリクエストで必須。 |
radius |
locationBias |
locationBias を定義するときに半径を指定します。 |
region |
regionCode |
|
type |
includedType |
単一の値のみを受け取ります。 |
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
テキスト検索(新版)では、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'