Una vez que tengas un ID de lugar, puedes solicitar más detalles sobre un establecimiento o punto de interés determinado iniciando una solicitud de Place Details (New). Una solicitud de Place Details (New) devuelve información más exhaustiva sobre el lugar indicado, como su dirección completa, el número de teléfono, la calificación de usuarios y las opiniones.
Hay 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 te familiarices con la API y sus opciones:
PruébaloSolicitudes de Place Details (nuevas)
Una solicitud de detalles de un lugar 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
Especifica la lista de campos que se mostrarán en la respuesta creando 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 de forma exclusiva un lugar y se obtiene a partir de una búsqueda de texto (nueva) o una búsqueda cercana (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 devolverán los resultados.
- Consulta la lista de idiomas admitidos. Google actualiza con frecuencia los idiomas admitidos, por lo que es posible que esta lista no sea completa.
-
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 legible para el usuario y los locales. Para alcanzar este objetivo, muestra las direcciones en el idioma local transliterada en una secuencia de comandos legible para el usuario, si es necesario, que respete el idioma preferido. Todas las demás direcciones se muestran en el idioma preferido. Los componentes de la dirección se muestran en el mismo idioma, que se selecciona a partir del primer componente.
- Si un nombre no está disponible en el idioma preferido, la API usa la coincidencia más cercana.
- El idioma preferido tiene poco efecto en el conjunto de resultados que la API selecciona para mostrar y el orden en el que se muestran. El geocodificador interpreta las abreviaturas de forma diferente según el idioma, como las abreviaturas para tipos de calle o 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 de "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 la búsqueda con autocompletado de un 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.
Para realizar una solicitud, sigue estos pasos:
- Selecciona el ícono de la API, , en el lado derecho de la página.
- De forma opcional, establece el parámetro
name
en lo siguiente:places/PLACE_ID
- De manera opcional, expande Mostrar parámetros estándar y establece el parámetro
fields
en la máscara de campo. - Selecciona el botón Ejecutar. En la ventana emergente, elige la cuenta que deseas usar para realizar la solicitud.
En el panel del Explorador de API, selecciona el ícono de expansión, , para expandir la ventana del Explorador de API.