Una vez que tengas un ID de lugar, puedes iniciar una solicitud de Place Details (New) para solicitar más detalles sobre un establecimiento o lugar de interés en particular. Una solicitud de Place Details (New) muestra información más completa sobre el lugar indicado, como su dirección completa, su número de teléfono, su calificación y sus opiniones.
Existen muchas formas de obtener un ID de lugar. Puedes usar:
- Text Search (nueva) o Nearby Search (nueva)
- API de Geocoding
- API de Routes
- API de Address Validation
- Place Autocomplete
El Explorador de APIs te permite realizar solicitudes en vivo para que puedas familiarizarte con la API y sus opciones:
Solicitudes de Place Details (nuevas)
Una solicitud de Place Details es una solicitud HTTP GET con el siguiente formato:
https://places.googleapis.com/v1/places/PLACE_ID
Pasa todos los parámetros como parámetros de URL o en encabezados como parte de la solicitud GET. Por ejemplo:
https://places.googleapis.com/v1/places/ChIJj61dQgK6j4AR4GeTYWZsKWw?fields=id,displayName&key=API_KEY
O bien, en un comando 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
Respuestas de Place Details (nuevo)
Place Details (New) muestra un objeto JSON como respuesta. En la respuesta, figura lo siguiente:
- La respuesta se representa con un objeto
Place
. El objetoPlace
contiene información detallada sobre el lugar. - La FieldMask que se pasa en la solicitud especifica la lista de campos que se muestran en el objeto
Place
.
El objeto JSON completo tiene el siguiente formato:
{ "name": "places/ChIJkR8FdQNB0VQRm64T_lv1g1g", "id": "ChIJkR8FdQNB0VQRm64T_lv1g1g", "displayName": { "text": "Trinidad" } ... }
Parámetros obligatorios
-
FieldMask
Para especificar la lista de campos que se mostrarán en la respuesta, crea una máscara de campo de respuesta. Pasa la máscara de campo de respuesta al método con el parámetro de URL
$fields
ofields
, o con el encabezado HTTPX-Goog-FieldMask
. No hay una lista predeterminada de campos que se muestran en la respuesta. Si omites la máscara de campo, el método mostrará un error.El enmascaramiento de campos es una práctica de diseño recomendada para garantizar que no solicites datos innecesarios, lo que ayuda a evitar tiempos de procesamiento y cargos de facturación adicionales.
Especifica una lista separada por comas de los tipos de datos de lugar que se mostrarán. Por ejemplo, para recuperar el nombre visible y la dirección del lugar.
X-Goog-FieldMask: displayName,formattedAddress
Usa
*
para recuperar todos los campos.X-Goog-FieldMask: *
Especifica uno o más de los siguientes campos:
Los siguientes campos activan el SKU Place Details (solo IDs):
attributions
,id
,name
*,photos
* El camponame
contiene el nombre de recurso del lugar expresado de la siguiente forma:places/PLACE_ID
. UtilizadisplayName
para acceder al nombre del lugar en forma de texto.Los siguientes campos activan el SKU de Place Details (solo ubicación):
addressComponents
,adrFormatAddress
,formattedAddress
,location
,plusCode
,shortFormattedAddress
,types
,viewport
Los siguientes campos activan el SKU de Place Details (Basic):
accessibilityOptions
,businessStatus
,containingPlaces
,displayName
,googleMapsLinks
*,googleMapsUri
,iconBackgroundColor
,iconMaskBaseUri
,primaryType
,primaryTypeDisplayName
,pureServiceAreaBusiness
,subDestinations
,utcOffsetMinutes
* El campogoogleMapsLinks
se encuentra en la etapa de vista previa de la fase previa a la DG y no se cobra, lo que significa que la facturación es de USD 0 por el uso durante la vista previa.Los siguientes campos activan el SKU de Place Details (Advanced):
currentOpeningHours
,currentSecondaryOpeningHours
,internationalPhoneNumber
,nationalPhoneNumber
,priceLevel
,priceRange
,rating
,regularOpeningHours
,regularSecondaryOpeningHours
,userRatingCount
,websiteUri
Los siguientes campos activan el SKU de Place Details (Preferred):
allowsDogs
,curbsidePickup
,delivery
,dineIn
,editorialSummary
,evChargeOptions
,fuelOptions
,goodForChildren
,goodForGroups
,goodForWatchingSports
,liveMusic
,menuForChildren
,parkingOptions
,paymentOptions
,outdoorSeating
,reservable
,restroom
,reviews
,routingSummaries
,*servesBeer
,servesBreakfast
,servesBrunch
,servesCocktails
,servesCoffee
,servesDessert
,servesDinner
,servesLunch
,servesVegetarianFood
,servesWine
,takeout
* Solo Búsqueda de texto y Búsqueda cercana
-
placeId
Es un identificador textual que identifica un lugar de forma exclusiva y que se muestra en una Text Search (nueva) o una Nearby Search (nueva). Para obtener más información sobre los IDs de lugar, consulta la descripción general de los IDs de lugar.
La cadena
places/PLACE_ID
también se conoce como el nombre de recurso del lugar. En la respuesta de una solicitud de Place Details (nuevo), Nearby Search (nuevo) y Text Search (nuevo), esta cadena se incluye en el camponame
de la respuesta. El ID de lugar independiente se encuentra en el campoid
de la respuesta.
Parámetros opcionales
languageCode
Es el idioma en el que se muestran los resultados.
- Consulta la lista de idiomas admitidos. Google actualiza con frecuencia los idiomas compatibles, por lo que es posible que esta lista no sea exhaustiva.
-
Si no se proporciona
languageCode
, la API se establece de forma predeterminada enen
. Si especificas un código de idioma no válido, la API muestra un errorINVALID_ARGUMENT
. - La API hace todo lo posible para proporcionar una dirección que sea legible para el usuario y los locales. Para lograr ese objetivo, muestra las direcciones en el idioma local, transliteradas a una escritura legible por el usuario si es necesario, y respeta el idioma preferido. Todas las demás direcciones se muestran en el idioma preferido. Todos los componentes de la dirección se muestran en el mismo idioma, que se elige en el primer componente.
- Si un nombre no está disponible en el idioma preferido, la API usa la coincidencia más cercana.
- El idioma preferido tiene una pequeña influencia en el conjunto de resultados que la API elige mostrar y en el orden en que se muestran. El geocodificador interpreta las abreviaturas de forma diferente según el idioma, como las abreviaturas de los tipos de calles o los sinónimos que pueden ser válidos en un idioma, pero no en otro.
regionCode
Es el código de región que se usa para dar formato a la respuesta, especificado como un valor de código CLDR de dos caracteres. No hay un valor predeterminado.
Si el nombre del país del campo
formattedAddress
en la respuesta coincide con elregionCode
, se omite el código de país deformattedAddress
. Este parámetro no tiene efecto enadrFormatAddress
, que siempre incluye el nombre del país, ni enshortFormattedAddress
, que nunca lo incluye.La mayoría de los códigos CLDR son idénticos a los códigos ISO 3166-1, con algunas excepciones notables. Por ejemplo, el ccTLD del Reino Unido es "uk" (.co.uk), mientras que su código ISO 3166-1 es "gb" (técnicamente para la entidad "Reino Unido de Gran Bretaña e Irlanda del Norte"). El parámetro puede afectar los resultados según la ley aplicable.
-
sessionToken
Los tokens de sesión son cadenas generadas por el usuario que hacen un seguimiento de las llamadas de Autocomplete (nuevo) como "sesiones". Autocomplete (nuevo) usa tokens de sesión para agrupar las fases de consulta y selección de lugar de una búsqueda de autocompletado del usuario en una sesión discreta para realizar la facturación correspondiente. Los tokens de sesión se pasan a las llamadas a Place Details (nuevo) que siguen a las llamadas a Autocomplete (nuevo). Para obtener más información, consulta Tokens de sesión.
Ejemplo de Place Details
En el siguiente ejemplo, se solicitan los detalles de un lugar por 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
Ten en cuenta que el encabezado X-Goog-FieldMask
especifica que la respuesta contiene los siguientes campos de datos: id,displayName
.
La respuesta tiene el siguiente formato:
{ "id": "ChIJj61dQgK6j4AR4GeTYWZsKWw", "displayName": { "text": "Googleplex", "languageCode": "en" } }
Agrega más tipos de datos a la máscara de campo para mostrar información adicional.
Por ejemplo, agrega formattedAddress,plusCode
para incluir la dirección y el código Plus en la respuesta:
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
La respuesta ahora tiene el siguiente formato:
{ "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" } }
Pruébalo
El Explorador de APIs te permite realizar solicitudes de muestra para que te familiarices con la API y sus opciones.
Selecciona el ícono de API api en el lado derecho de la página.
De manera opcional, edita los parámetros de la solicitud.
Selecciona el botón Ejecutar. En el cuadro de diálogo, elige la cuenta que deseas usar para realizar la solicitud.
En el panel del Explorador de APIs, selecciona el ícono de pantalla completa fullscreen para expandir la ventana del Explorador de APIs.