Una vez que tengas un ID de lugar, puedes solicitar más detalles sobre un establecimiento o un lugar de interés en particular si inicias una solicitud de Place Details (nuevo). Una solicitud de Place Details (nuevo) muestra información más completa sobre el lugar indicado, como la dirección completa, el número de teléfono y las calificaciones y opiniones de los usuarios.
Existen muchas maneras 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 tiempo real para que puedas familiarizarte con la API y sus opciones:
PruébaloSolicitudes 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 debe mostrar 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 mostrados 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 deseas que se muestren. 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):
attributions
,id
,name
*,photos
* El camponame
contiene el nombre del 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
,reviews
,servesBeer
,servesBreakfast
,delivery
,delivery
,delivery
,delivery
,delivery
,delivery
,delivery
,delivery
,delivery
,delivery
,delivery
,servesBeer
,delivery
, {2//},servesBeer
,servesBeer
, {2//}, {2//},servesBeer
,servesBeer
,delivery
,delivery
,delivery
,servesBeer
,delivery
,delivery
,delivery
,servesBeer
,delivery
,delivery
,delivery
,delivery
,servesBeer
,delivery
, 9. /},servesBeer
, 2.2/}) .servesBeer
,curbsidePickup
/}.servesBrunch
servesCocktails
servesCoffee
servesDessert
servesDinner
servesLunch
servesVegetarianFood
servesWine
takeout
-
placeId
Es un identificador textual que identifica un lugar de forma exclusiva y que se muestra a partir de Text Search (nueva) o 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 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 compatibles. Con frecuencia, Google actualiza los idiomas admitidos, 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 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 usuarios locales. Para lograr ese objetivo, muestra las direcciones en el idioma local, transliteradas a una secuencia de comandos legible para el usuario si es necesario, que observa 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 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 en el orden en el que se muestran. El geocodificador interpreta las abreviaturas de manera diferente según el idioma; por ejemplo, las abreviaturas para los tipos de calle 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 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 del "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 búsqueda y selección de lugares de una búsqueda de autocompletado del 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 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
.
Entonces, la respuesta tendrá 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, haz lo siguiente:
- Selecciona el ícono de la API, , en el lado derecho de la página.
- De manera opcional, configura el parámetro
name
de la siguiente manera:places/PLACE_ID
- De manera opcional, puedes expandir Mostrar parámetros estándar y establecer 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 Explorador de API, selecciona el ícono de expansión, , para expandir la ventana del Explorador de API.