プレイス ID を取得したら、Place Details(New)リクエストを開始することで、特定の施設やスポットに関する詳細情報をリクエストできます。Place Details(New)リクエストは、完全な住所、電話番号、ユーザーの評価、クチコミなど、指定された場所に関するより包括的な情報を返します。
プレイス ID はさまざまな方法で取得できます。次を使用できます。
- Text Search (New) または Nearby Search(New)
- Geocoding API
- Routes API
- Address Validation API
- Place Autocomplete
API Explorer を使用すると、ライブ リクエストを行って、API と API オプションについての理解を深めることができます。
試してみるPlace Details(New)リクエスト
Place Details リクエストは、次の形式の HTTP GET リクエストです。
https://places.googleapis.com/v1/places/PLACE_ID
すべてのパラメータを URL パラメータとして、または GET リクエストの一部としてヘッダーで渡します。次に例を示します。
https://places.googleapis.com/v1/places/ChIJj61dQgK6j4AR4GeTYWZsKWw?fields=id,displayName&key=API_KEY
または、cURL コマンドで次のようにします。
curl -X GET -H 'Content-Type: application/json' \ -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: id,displayName" \ https://places.googleapis.com/v1/places/ChIJj61dQgK6j4AR4GeTYWZsKWw
Place Details(New)レスポンス
Place Details(New)は、 レスポンスとして JSON オブジェクトを返します。レスポンスの説明:
- レスポンスは
Place
オブジェクトで表されます。Place
オブジェクトには、場所に関する詳細情報が格納されます。 - リクエストで渡される FieldMask は、
Place
オブジェクトで返されるフィールドのリストを指定します。
完全な JSON オブジェクトの形式は次のとおりです。
{ "name": "places/ChIJkR8FdQNB0VQRm64T_lv1g1g", "id": "ChIJkR8FdQNB0VQRm64T_lv1g1g", "displayName": { "text": "Trinidad" } ... }
必須パラメータ
-
FieldMask
レスポンス フィールド マスクを作成して、レスポンスで返すフィールドのリストを指定します。URL パラメータ
$fields
またはfields
を使用するか、HTTP ヘッダーX-Goog-FieldMask
を使用して、レスポンス フィールド マスクをメソッドに渡します。レスポンスには、返されるフィールドのデフォルト リストはありません。フィールド マスクを省略すると、メソッドはエラーを返します。フィールド マスキングは、不要なデータをリクエストしないようにするための優れた設計上の方法です。これにより、不要な処理時間と課金を回避できます。
返す場所データの種類をカンマ区切りのリストで指定します。たとえば、場所の表示名と住所を取得できます。
X-Goog-FieldMask: displayName,formattedAddress
すべてのフィールドを取得するには、
*
を使用します。X-Goog-FieldMask: *
以下のフィールドを 1 つ以上指定します。
以下のフィールドによって Place Details(IDs のみ)SKU がトリガーされます。
id
、name
*、photos
*name
フィールドには、places/PLACE_ID
の形式で場所のリソース名が含まれます。場所の名前のテキストにアクセスするには、displayName
を使用します。以下のフィールドによって Place Details(Location Only)SKU がトリガーされます。
addressComponents
、adrFormatAddress
、formattedAddress
、location
、plusCode
、shortFormattedAddress
、types
、viewport
以下のフィールドによって Place Details(Basic)SKU がトリガーされます。
accessibilityOptions
、businessStatus
、displayName
、googleMapsUri
、iconBackgroundColor
、iconMaskBaseUri
、primaryType
、primaryTypeDisplayName
、subDestinations
、utcOffsetMinutes
以下のフィールドによって Place Details(Advanced)SKU がトリガーされます。
currentOpeningHours
、currentSecondaryOpeningHours
、internationalPhoneNumber
、nationalPhoneNumber
、priceLevel
、rating
、regularOpeningHours
、regularSecondaryOpeningHours
、userRatingCount
、websiteUri
以下のフィールドによって Place Details(Preferred)SKU がトリガーされます。
allowsDogs
、curbsidePickup
、delivery
、dineIn
、editorialSummary
、evChargeOptions
、fuelOptions
、goodForChildren
、goodForGroups
、goodForWatchingSports
、liveMusic
、menuForChildren
、parkingOptions
、paymentOptions
、outdoorSeating
、reservable
、restroom
、reviews
、servesBeer
、servesBeer
、servesBeer
、servesBeer
、servesBreakfast
servesBrunch
servesCocktails
servesCoffee
servesDesserts
servesDinner
servesLunch
servesVegetarianFood
servesWine
takeout
-
placeId
場所を一意に識別するテキスト表記の ID。Text Search(New)またはNearby Search(New)から返されます。プレイス ID について詳しくは、プレイス ID の概要をご覧ください。
文字列
places/PLACE_ID
は、プレイスのリソース名とも呼ばれます。Place Details(New)、Nearby Search(New)、Text Search(New)の各リクエストに対するレスポンスでは、この文字列はレスポンスのname
フィールドに格納されます。独立したプレイス ID はレスポンスのid
フィールドに含まれます。
省略可能なパラメータ
languageCode
結果を返す言語。
- サポートされている言語の一覧をご覧ください。サポート対象の言語は頻繁に更新されるため、このリストがすべての言語を網羅しているとは限りません。
-
languageCode
が指定されていない場合、API はデフォルトでen
になります。無効な言語コードを指定すると、API からINVALID_ARGUMENT
エラーが返されます。 - この API は、ユーザーとローカルの双方が判読できる住所を提供するように最善を尽くします。この目的を達成するために、ローカル言語で番地を返し、必要に応じてユーザーが読み取れるスクリプトに文字変換して、優先言語を監視します。その他の住所はすべて優先言語で返されます。住所コンポーネントはすべて、最初のコンポーネントから選択された同じ言語で返されます。
- 優先言語で名前を利用できない場合、API は最も近い言語を使用します。
- 優先言語は、API が返す結果のセットや、返される順序にわずかな影響を及ぼします。ジオコーダは、言語によって略語の解釈方法が異なります。たとえば、通りの略語や、ある言語では有効な同義語は別の言語では使用できない同義語などがこれに該当します。
regionCode
レスポンスのフォーマットに使用するリージョン コード。 2 文字の CLDR コード値で指定します。デフォルト値はありません。
レスポンスの
formattedAddress
フィールドの国名がregionCode
と一致する場合、formattedAddress
から国コードが省略されます。このパラメータは、常に国名を含むadrFormatAddress
またはshortFormattedAddress
(国名が含まれない)では効果がありません。ほとんどの CLDR コードは ISO 3166-1 コードと同一ですが、いくつか注意が必要な例外もあります。たとえば、英国の ccTLD は「uk」(.co.uk)ですが、ISO 3166-1 コードは「gb」(厳密には「グレート ブリテンおよび北アイルランド連合王国」の法人を意味します)です。パラメータは、適用される法律に基づいて結果に影響を与える可能性があります。
-
sessionToken
セッション トークンは、オートコンプリート(新機能)の呼び出しを「セッション」としてトラッキングする、ユーザー生成の文字列です。Autocomplete(新機能)は、セッション トークンを使用して、ユーザーによるオートコンプリート検索におけるクエリと場所の選択フェーズを個別のセッションにグループ化し、請求処理に使用します。セッション トークンは、Autocomplete(New)呼び出しに続く Place Details(New)呼び出しに渡されます。詳細については、セッション トークンをご覧ください。
Place Details の例
次の例では、placeId
によって場所の詳細をリクエストしています。
curl -X GET -H 'Content-Type: application/json' \ -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: id,displayName" \ https://places.googleapis.com/v1/places/ChIJj61dQgK6j4AR4GeTYWZsKWw
X-Goog-FieldMask
ヘッダーにより、レスポンスに id,displayName
のデータ フィールドが含まれることが指定されています。レスポンスは次の形式になります。
{ "id": "ChIJj61dQgK6j4AR4GeTYWZsKWw", "displayName": { "text": "Googleplex", "languageCode": "en" } }
フィールド マスクにデータ型を追加して、追加情報を返します。たとえば、formattedAddress,plusCode
を追加して、レスポンスに住所と Plus Code を含めます。
curl -X GET -H 'Content-Type: application/json' \ -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: id,displayName,formattedAddress,plusCode" \ https://places.googleapis.com/v1/places/ChIJj61dQgK6j4AR4GeTYWZsKWw
レスポンスは次の形式になります。
{ "id": "ChIJj61dQgK6j4AR4GeTYWZsKWw", "formattedAddress": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", "plusCode": { "globalCode": "849VCWC7+RW", "compoundCode": "CWC7+RW Mountain View, CA, USA" }, "displayName": { "text": "Googleplex", "languageCode": "en" } }
試してみよう:
API Explorer では、API と API オプションに慣れるためにサンプル リクエストを行うことができます。
リクエストを行うには:
- ページの右側にある API アイコン を選択します。
- 必要に応じて、
name
パラメータをplaces/PLACE_ID
に設定します。 - 必要に応じて、[標準パラメータを表示] を展開し、
fields
パラメータをフィールド マスクに設定します。 - [Execute] ボタンを選択します。ポップアップで、リクエストに使用するアカウントを選択します。
[API Explorer] パネルで展開アイコン を選択して、[API Explorer] ウィンドウを展開します。