Una vez que tengas un ID de lugar, podrás solicitar más detalles sobre un establecimiento o lugar de interés específico mediante el inicio de una solicitud de Place Details (nuevo). Una solicitud de Place Details (nuevo) muestra información más completa sobre el lugar indicado, como su dirección completa, el número de teléfono, las calificaciones y las opiniones de los usuarios.
Existen muchas formas de obtener un ID de lugar. Puedes usar:
- Text Search (nuevo) o Nearby Search (nuevo)
- API de Geocoding
- API de Routes
- API de Address Validation
- Place Autocomplete
El Explorador de APIs te permite realizar solicitudes en tiempo real para que puedas familiarizarte con la API y sus opciones:
PruébalaSolicitudes de Place Details (nuevo)
Una solicitud de Place Details es una solicitud HTTP GET que tiene 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 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 (nuevo) 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 pasada 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. Para ello, crea una máscara de campo de respuesta. Pasa la máscara de campo de respuesta al método mediante el parámetro de URL
$fields
ofields
, o bien con el encabezado HTTPX-Goog-FieldMask
. No hay una lista predeterminada de los campos que se muestran en la respuesta. Si omites la máscara de campo, el método mostrará un error.El enmascaramiento de campo 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 innecesarios.
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 de Place Details (solo IDs):
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
yviewport
Los siguientes campos activan el SKU de Place Details (Basic):
accessibilityOptions
,businessStatus
,displayName
,googleMapsUri
,iconBackgroundColor
,iconMaskBaseUri
,primaryType
,primaryTypeDisplayName
,subDestinations
,utcOffsetMinutes
Los siguientes campos activan el SKU de Place Details (Advanced):
currentOpeningHours
,currentSecondaryOpeningHours
,internationalPhoneNumber
,nationalPhoneNumber
,priceLevel
,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
,servesBeer
,servesBreakfast
/{2,}/{2,}/{2,}/servesBeer
servesBrunch
servesCocktails
servesCoffee
servesDesserts
servesDinner
servesLunch
servesVegetarianFood
servesWine
takeout
-
placeId
Es un identificador textual que identifica un lugar de forma exclusiva y que se obtiene de una función Text Search (nuevo) o Nearby Search (nuevo). 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 denomina nombre del recurso del lugar. En la respuesta de una solicitud de Place Details (nuevo), Nearby Search (nuevo) y Text Search (nuevo), esta cadena se encuentra en el camponame
de la respuesta. El ID de lugar independiente se encuentra en el campoid
de la respuesta.
Parámetros opcionales
languageCode
El idioma en el que se mostrarán los resultados.
- Consulta la lista de idiomas disponibles. Google actualiza con frecuencia los idiomas admitidos, por lo que es posible que esta lista no sea exhaustiva.
-
Si no se proporciona
languageCode
, el valor predeterminado de la API esen
. Si especificas un código de idioma no válido, la API mostrará un errorINVALID_ARGUMENT
. - La API hace todo lo posible para proporcionar una dirección que sea legible tanto para el usuario como para los locales. Para lograr ese objetivo, muestra las direcciones en el idioma local, transliteradas en una secuencia de comandos que el usuario puede leer si es necesario, teniendo en cuenta el idioma preferido. Todas las demás direcciones se muestran en el idioma preferido. Todos los componentes de dirección se muestran en el mismo idioma, que se elige 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 una pequeña influencia en el conjunto de resultados que la API elige mostrar y el orden en el que se muestran. El geocodificador interpreta las abreviaturas de forma diferente según el idioma; por ejemplo, las abreviaturas para los tipos de calles o los sinónimos que pueden ser válidos en un idioma, pero no en otro.
regionCode
El código regional 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 conregionCode
, el código de país se omite 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". La función Autocomplete (nuevo) usa tokens de sesión para agrupar las fases de consulta y selección de lugares de una búsqueda con autocompletado de un usuario en una sesión discreta con fines de facturación. Los tokens de sesión se pasan a llamadas de Place Details (nuevo) que siguen a las llamadas de 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 mediante 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 Plus Code 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 puedas familiarizarte con la API y sus opciones.
Para realizar una solicitud, sigue estos pasos:
- Selecciona el ícono de la API, , a la derecha de la página.
- De manera opcional, establece el parámetro
name
en: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.