A
Destination
hace referencia a un lugar de interés importante o a una ubicación específica a la que un usuario
desea llegar o hacia la que desea navegar. Un Destination puede incluir información como puntos de navegación, lugares de interés, entradas y contornos de edificios.
El
SearchDestinations
método de la API de Geocoding te permite recuperar información detallada sobre varios
destinos en función de diferentes criterios de entrada, como una dirección, un ID de lugar o
coordenadas de latitud y longitud.
Solicitud de búsqueda de destinos
Una solicitud de búsqueda de destinos es una solicitud HTTP POST a una URL con el siguiente formato:
https://geocode.googleapis.com/v4/geocode/destinations
Pasa todos los parámetros en el cuerpo de la solicitud JSON o en los encabezados como parte de la solicitud POST. Por ejemplo:
curl -X POST -d '{
"place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
Puedes especificar la ubicación para buscar un destino de una de las siguientes 3 maneras:
- Dirección
- ID de lugar
- Coordenadas de latitud y longitud
Cómo buscar un destino por dirección
Puedes especificar la dirección como una cadena no estructurada. La geocodificación de direcciones no resuelve las coordenadas de latitud y longitud ni otras cadenas no estructuradas que no representan una dirección. No se admiten las solicitudes que usan esas cadenas, y pueden generar respuestas de error o un comportamiento no especificado. Estos son algunos ejemplos de consultas no admitidas:
| Tipo de consulta | Ejemplo |
|---|---|
| Coordenadas de latitud y longitud En su lugar, usa una consulta de ubicación. | "37.422131,-122.084801" |
| Demasiados conceptos o restricciones, como los nombres de varios lugares, rutas o ciudades en una sola consulta | "Market Street San Francisco San Jose Airport" |
| Elementos de dirección postal no representados en Google Maps |
"C/O John Smith 123 Main Street" "P.O. Box 13 San Francisco" |
| Nombres de empresas, cadenas o categorías combinados con ubicaciones en las que estas entidades no están disponibles | "Tesco near Dallas, Texas" |
| Consultas ambiguas con varias interpretaciones | "Charger drop-off" |
| Nombres históricos que ya no están en uso | "Middlesex United Kingdom" |
| Elementos o intents no geoespaciales | "How many boats are in Ventura Harbor?" |
| Nombres no oficiales o de vanidad |
"The Jenga" "The Helter Skelter" |
| Entidades políticas grandes (ciudades, estados, países) |
"New York City" "California" "USA" |
| Rutas sin direcciones específicas |
"1st Ave., NYC, NY" "I-95" |
curl -X POST -d '{
"addressQuery": {
"addressQuery": "601 S Bernardo Ave, Sunnyvale, CA 94087, USA"
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
o como a
postalAddress:
curl -X POST -d '{
"addressQuery": {
"address": {
"addressLines": ["601 S Bernardo Ave"],
"locality": "Sunnyvale",
"postalCode": "94087",
"administrativeArea": "CA",
"regionCode": "US"
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
Por lo general, usas el formato postalAddress cuando procesas componentes de dirección capturados en un formulario HTML.
Cómo buscar un destino por ID de lugar
Puedes recuperar un destino si proporcionas un ID de lugar:
curl -X POST -d '{
"place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
IDs de lugar admitidos
El método Search Destinations funciona mejor con IDs de lugar que representan destinos específicos y navegables. Por lo general, se admiten los IDs de lugar para tipos como establishment,
point_of_interest, premise, street_address, y subpremise son generalmente
compatibles. No se admiten los IDs de lugar que no representan ubicaciones discretas, como los que se infieren de rangos de direcciones (por ejemplo, "10-20 Main St"), secciones de una ruta sin un número específico o códigos plus. Tampoco se admiten los IDs de lugar para
resultados que son demasiado grandes en el área (por ejemplo, "Océano Pacífico")
no soportados.
Usa Places API Autocomplete (nuevo) con Search Destinations
Para garantizar la compatibilidad, usa Places API Autocomplete
(nuevo) para encontrar IDs
de lugar para usar con Search Destinations. Cuando uses Autocomplete, debes filtrar
los resultados por tipo con el
includedPrimaryTypes
parámetro. Search Destinations admite los IDs de lugar que Autocomplete muestra con el siguiente filtro recomendado:
"includedPrimaryTypes": [ "establishment", "point_of_interest", "premise", "street_address", "subpremise" ]
Además, no debes establecer el include_pure_service_area_businesses
indicador en true en tu solicitud de Autocomplete.
Cómo buscar un destino por ubicación
Puedes buscar un destino si proporcionas las coordenadas de latitud y longitud:
curl -X POST -d '{
"locationQuery": {
"location": {
"latitude": 37.37348780,
"longitude": -122.05678064
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
Usa OAuth para realizar una solicitud
La API de Geocoding v4 admite OAuth 2.0 para la autenticación. Para usar OAuth con la API de Geocoding, el token de OAuth debe tener asignado el permiso correcto. La API de Geocoding admite los siguientes permisos para usar con el método Destinations:
https://www.googleapis.com/auth/maps-platform.geocode: Se usa con todos los métodos de la API de Geocoding.
Además, puedes usar el permiso general https://www.googleapis.com/auth/cloud-platform para todos los métodos de la API de Geocoding. Ese permiso es útil durante el desarrollo, pero no en la producción, ya que es un permiso general que permite el acceso a todos los métodos.
Para obtener más información y ejemplos, consulta Usar OAuth.
Respuesta de búsqueda de destinos
La respuesta de Search Destinations proporciona un contexto enriquecido e hiperlocal sobre la ubicación.
En esta sección, se describen los campos de respuesta clave. Para obtener detalles completos sobre todos los campos de respuesta, consulta la referencia de la API.
primary
Es el lugar principal identificado por la consulta en la solicitud.
containingPlaces
Son entidades más grandes de las que forma parte el destino principal (por ejemplo, un centro comercial que contiene una tienda).
subDestinations
Son ubicaciones más específicas dentro del destino principal (por ejemplo, departamentos en un edificio).
entrances
Los objetos del array entrances[] tienen los siguientes campos:
locationEs un solo par de coordenadas de latitud y longitud que define la ubicación de un punto de entrada y salida a un lugar.
entrance_tags[]Es un array de etiquetas de entrada que describe las características de la entrada. Se admite el siguiente valor:
"PREFERRED"
Indica que es probable que esta entrada proporcione acceso físico al lugar que se muestra. Un lugar puede tener varias entradas preferidas. Si una entrada no tiene esta etiqueta, significa que está físicamente en el mismo edificio, pero no necesariamente proporciona acceso al lugar.
Por ejemplo, si el lugar que se muestra es un restaurante en un centro comercial, las
"PREFERRED"entradas serán las que conducen al restaurante mismo, mientras que las otras entradas que se muestran serán otras entradas del edificio, como entradas a otros restaurantes del centro comercial.Si el lugar que se muestra es un edificio, las entradas
"PREFERRED"serán las que conducen a la parte "principal" del edificio. Por ejemplo, en un centro comercial, las entradas"PREFERRED"serán las que permiten el acceso al área principal del vestíbulo, pero si una entrada solo proporciona acceso a una tienda en el costado del edificio, no será una entrada"PREFERRED".
structureType
Es el tipo de estructura que representa este lugar.
POINTEs una ubicación de punto.
SECTIONEs una subsección de un edificio.
BUILDINGEs un edificio.
GROUNDSEs un área grande que suele contener varios edificios, como un campus universitario, un complejo de departamentos o un centro comercial.
navigationPoints
El campo navigationPoints dentro de la respuesta de Geocoding contiene una lista de puntos que son útiles para navegar hacia el lugar. En particular, se deben usar como puntos de partida o de destino cuando se enruta en una red de rutas desde o hacia el lugar. Cada punto de navegación contiene los siguientes valores:
navigationPointTokenes un token que contiene la información contextual en el camponavigationPoints. Puedes enviar este token a las APIs de enrutamiento y navegación para mejorar el enrutamiento y la experiencia de navegación en tu app. Consulta Enruta con tokens de puntos de navegación para obtener más información.locationcontiene el valor de latitud y longitud del punto de navegación. Esta ubicación siempre estará muy cerca de la red de rutas y representa un punto de partida o de parada ideal para navegar hacia un lugar y desde él. El punto se desplaza intencionalmente un poco del centro de la ruta para marcar claramente el lado de la ruta en el que se encuentra el lugar.travelModeses una lista de modos de viaje a los que se puede acceder desde el punto de navegación:"DRIVE"es el modo de viaje que corresponde a las indicaciones para conducir."WALK"es el modo de viaje que corresponde a las indicaciones para caminar.
usageses una lista de usos admitidos por el punto de navegación. Los usos pueden ser los siguientes:"DROPOFF""PICKUP""PARKING"
arrivalSummary
Son estadísticas potenciadas por IA para ayudar con la llegada. Consulta Resúmenes potenciados por IA.
landmarks
Son lugares cercanos destacados para ayudar a los usuarios a comprender los alrededores del destino.
Formato de respuesta
SearchDestinations muestra una
SearchDestinationsResponse
con el siguiente formato JSON:
{ "destinations": [ { "primary": { "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w", "displayName": { "text": "Arby's", "languageCode": "en" }, "primaryType": "fast_food_restaurant", "types": [ "fast_food_restaurant", "sandwich_shop", "deli", "meal_takeaway", "food_delivery", "american_restaurant", "restaurant", "food_store", "store", "food", "point_of_interest", "establishment" ], "formattedAddress": "Arby's, 601 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "601 S Bernardo Ave" ] }, "structureType": "BUILDING", "location": { "latitude": 37.3734545, "longitude": -122.05693269999998 }, "displayPolygon": { "type": "Polygon", "coordinates": [ [ [ -122.056930138027, 37.3735253692531 ], [ -122.056960139391, 37.3735372663597 ], [ -122.056994129366, 37.3734828786847 ], [ -122.056969677395, 37.3734731161089 ], [ -122.057061762447, 37.3733261309656 ], [ -122.056979388817, 37.3732935577128 ], [ -122.056798860285, 37.3735818838642 ], [ -122.056875858081, 37.3736121235316 ], [ -122.056930138027, 37.3735253692531 ] ] ] } }, "containingPlaces": [ { "place": "places/ChIJYfdAFum2j4ARIcL2tjME3Sw", "displayName": { "text": "Cherry Chase Shopping Center", "languageCode": "en" }, "primaryType": "shopping_mall", "types": [ "shopping_mall", "point_of_interest", "establishment" ], "formattedAddress": "Cherry Chase Shopping Center, 663 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1020", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "663 S Bernardo Ave" ] }, "structureType": "GROUNDS", "location": { "latitude": 37.3731231, "longitude": -122.0578211 }, "displayPolygon": { "type": "Polygon", "coordinates": [ [ [ -122.057112227103, 37.3714618008523 ], [ -122.057076849821, 37.3715743611411 ], [ -122.056963607756, 37.3719081793948 ], [ -122.056865279559, 37.3722026053835 ], [ -122.056687872374, 37.3727258358476 ], [ -122.056580005889, 37.3730511370747 ], [ -122.056498845827, 37.3732994782583 ], [ -122.056338259713, 37.3737878663325 ], [ -122.056618678291, 37.373887693582 ], [ -122.056912102521, 37.3740010327191 ], [ -122.057532418159, 37.3742476426462 ], [ -122.057673926626, 37.3742441740031 ], [ -122.057735663106, 37.3742328516943 ], [ -122.057766531332, 37.3742220604378 ], [ -122.057797572967, 37.37420520725 ], [ -122.057828267759, 37.3741852342085 ], [ -122.058060299297, 37.3740060842535 ], [ -122.058199726081, 37.3737861673422 ], [ -122.05836707267, 37.373524542556 ], [ -122.058569622393, 37.3732018598683 ], [ -122.0587638478, 37.3728890198039 ], [ -122.058934661823, 37.3726036257774 ], [ -122.059164956851, 37.3722498383629 ], [ -122.058997784906, 37.3721804442035 ], [ -122.057936479838, 37.3717605636234 ], [ -122.057495827092, 37.3715860151634 ], [ -122.057112227103, 37.3714618008523 ] ] ] } } ], "landmarks": [ { "place": { "place": "places/ChIJXXTe7Oi2j4ARoMTA-D6Hjpg", "displayName": { "text": "Chase Bank", "languageCode": "en" }, "primaryType": "bank", "types": [ "bank", "atm", "finance", "point_of_interest", "establishment" ], "formattedAddress": "Chase Bank, 1234 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1234 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.373579, "longitude": -122.05752700000001 } }, "relationalDescription": { "text": "Near Chase Bank", "languageCode": "en" }, "tags": [ "ARRIVAL", "ADDRESS" ], "straightLineDistanceMeters": 61.182193756103516, "travelDistanceMeters": 63.075645446777344 }, { "place": { "place": "places/ChIJteQ0Fum2j4ARGi3tqK4Zm14", "displayName": { "text": "Safeway", "languageCode": "en" }, "primaryType": "grocery_store", "types": [ "grocery_store", "butcher_shop", "florist", "deli", "supermarket", "bakery", "food_delivery", "market", "manufacturer", "food_store", "store", "food", "service", "point_of_interest", "establishment" ], "formattedAddress": "Safeway, 639 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "639 S Bernardo Ave" ] }, "structureType": "POINT", "location": { "latitude": 37.3727912, "longitude": -122.0581172 } }, "relationalDescription": { "text": "Around the corner from Safeway", "languageCode": "en" }, "tags": [ "ARRIVAL", "ADDRESS" ], "straightLineDistanceMeters": 158.65606689453125, "travelDistanceMeters": 131.1669921875 }, { "place": { "place": "places/ChIJu-PSYui2j4ARNiwOwBApGqk", "displayName": { "text": "Oil Changers", "languageCode": "en" }, "types": [ "car_repair", "service", "point_of_interest", "establishment" ], "formattedAddress": "Oil Changers, 1240 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1240 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.3743054, "longitude": -122.0584272 } }, "relationalDescription": { "text": "Down the road from Oil Changers", "languageCode": "en" }, "tags": [ "ARRIVAL" ], "straightLineDistanceMeters": 140.52459716796875, "travelDistanceMeters": 143.24220275878906 }, { "place": { "place": "places/ChIJKRbl5oG3j4ARwuvPGUmtCj0", "displayName": { "text": "Apni Mandi Farmers Market Sunnyvale", "languageCode": "en" }, "primaryType": "grocery_store", "types": [ "grocery_store", "cake_shop", "supermarket", "asian_grocery_store", "indian_restaurant", "meal_takeaway", "bakery", "manufacturer", "wholesaler", "restaurant", "food_store", "store", "food", "point_of_interest", "establishment" ], "formattedAddress": "Apni Mandi Farmers Market Sunnyvale, 1111 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1056", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1111 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.3737199, "longitude": -122.0522958 } }, "relationalDescription": { "text": "Near Apni Mandi Farmers Market Sunnyvale", "languageCode": "en" }, "tags": [ "ADDRESS" ], "straightLineDistanceMeters": 410.37435913085938, "travelDistanceMeters": 479.49893188476562 }, { "place": { "place": "places/ChIJ8enMlui2j4AR2xXK5EHDhBs", "displayName": { "text": "Starbird Chicken", "languageCode": "en" }, "primaryType": "chicken_restaurant", "types": [ "chicken_restaurant", "fast_food_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "Starbird Chicken, 1241 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1028", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1241 W El Camino Real" ] }, "structureType": "BUILDING", "location": { "latitude": 37.3746764, "longitude": -122.05708860000001 }, "displayPolygon": { "coordinates": [ [ [ -122.057003840785, 37.3747648209809 ], [ -122.057136852459, 37.3747919153144 ], [ -122.057205005705, 37.3745815131859 ], [ -122.057071994114, 37.3745544186944 ], [ -122.057003840785, 37.3747648209809 ] ] ], "type": "Polygon" } }, "relationalDescription": { "text": "Near Starbird Chicken", "languageCode": "en" }, "tags": [ "ADDRESS" ], "straightLineDistanceMeters": 87.348007202148438, "travelDistanceMeters": 214.08084106445312 } ], "entrances": [ { "location": { "latitude": 37.3735328, "longitude": -122.05694879999999 }, "tags": [ "PREFERRED" ], "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w" } ], "navigationPoints": [ { "navigationPointToken": "ChIJeMt61tqvQkARWT2716SDXsASEgljyy_n6LaPgBH9LoGUMNHjbBoSCWPLL-foto-AEf0ugZQw0eNsIhIJhf5y6ei2j4ARz7yBW5KAPI4", "location": { "latitude": 37.3738659, "longitude": -122.05693620000001 }, "travelModes": [ "DRIVE", "WALK" ], "usages": [ "PARKING" ] } ] } ] }
Parámetros obligatorios
- Uno de los siguientes 3 parámetros debe estar en la solicitud a la API, que
especifica la dirección, el lugar o la ubicación para buscar un destino:
addressQuery- Es la dirección que se debe buscar.place- Es el ID de lugar del lugar que se debe buscar.locationQuery- Son las coordenadas de latitud y longitud de la ubicación que se debe buscar.
FieldMask
Para especificar la lista de campos que se deben mostrar 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
$fieldsofields, o bien con el encabezado HTTPX-Goog-FieldMask. Por ejemplo, la siguiente solicitud solo mostrará las entradas, los puntos de navegación y el ID de lugar del destino principal.curl -X POST -d '{"place": "places/ChIJG3kh4hq6j4AR_XuFQnV0_t8"}' \ -H "X-Goog-Api-Key: API_KEY" \ -H "Content-Type: application/json" \ -H "X-Goog-FieldMask: destinations.entrances,destinations.navigationPoints,destinations.primary.place" \ https://geocode.googleapis.com/v4/geocode/destinationsNo hay una lista predeterminada de campos que se muestran en la respuesta. Si omites la máscara de campo, el método muestra un error. Establece la máscara de campo en
*para mostrar todos los campos. Consulta Elige los campos que se mostrarán para obtener más detalles.
Parámetros opcionales
-
travelModes
Especifica qué tipos de
navigationPointsse deben mostrar. Se filtrarán los puntos de navegación para otros modos de viaje. SitravelModesno está configurado, se pueden mostrar los puntos de navegación de todos los modos de viaje. languageCode
Es el idioma en el que se muestran 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 usaende forma predeterminada. Si especificas un código de idioma no válido, la API muestra unINVALID_ARGUMENTerror. - 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 secuencia de comandos legible para el usuario si es necesario, respetando 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 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 que se muestran. El geocodificador interpreta las abreviaturas de manera 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 como un código CLDR de dos caracteres valor. No hay un valor predeterminado. La mayoría de los códigos CLDR son idénticos a los códigos ISO 3166-1.
Cuando se geocodifica una dirección, geocodificación directa, este parámetro puede influir en los resultados del servicio para la región especificada, pero no los restringe por completo. Cuando se geocodifica una ubicación o un lugar, geocodificación inversa o geocodificación de lugares, este parámetro se puede usar para dar formato a la dirección. En todos los casos, este parámetro puede afectar los resultados según la ley aplicable.
-
placeFilter
Te permite filtrar los resultados de una
locationQuerybúsqueda para satisfacer tus requisitos, como mostrar solo los destinos que son edificios o solo los destinos que tienen direcciones claras.Filtrar por granularidad estructural
El filtro
structureTypete permite especificar el tipo de estructuras que muestra la consulta:- Aislamiento de edificios: Usa
"structureType": "BUILDING"para mostrar los contornos de los edificios en un mapa o para obtener detalles de una estructura específica. - Comprensión de complejos: Usa
"structureType": "GROUNDS"para asegurarte de que el resultado principal sea el terreno general. Esto es útil cuando se realizan consultas sobre áreas más grandes, como campus universitarios o centros comerciales. - Enfoque en unidades o secciones: Usa
"structureType": "SECTION"para identificar secciones dentro de un edificio.
Garantiza direcciones útiles
No todos los lugares tienen direcciones claras a nivel de la calle. El filtro
addressabilityte ayuda a controlar la calidad de las direcciones en tus resultados:- Requiere una dirección principal clara: Para asegurarte de que el resultado del destino principal
siempre tenga una dirección o un nombre a nivel de la calle, usa
"addressability": "PRIMARY". Esto es útil para fines de navegación o visualización en los que una dirección clara es fundamental. - Permite direcciones en subdestinos: En los casos en que el lugar principal no tenga una dirección, pero sí unidades dentro de él (como departamentos en un edificio),
"addressability": "WEAK"garantiza que, al menos, el lugar principal o uno de sus subdestinos tenga una dirección. - Cualquier resultado: Si la presencia de la dirección no es relevante para tu caso de uso, usa
"addressability": "ANY".
Ejemplo: Filtrado de edificios direccionables
curl -X POST -d '{ "locationQuery": { "location": { "latitude": 37.37348780, "longitude": -122.05678064 }, "placeFilter": { "structureType": "BUILDING", "addressability": "PRIMARY" } }, "languageCode": "en" }' \\ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \\ -H "X-Goog-FieldMask: place" \\ https://geocode.googleapis.com/v4/geocode/destinations - Aislamiento de edificios: Usa