En esta sección, se incluye una serie de solicitudes de ejemplo a la API de Places Insights.
Cómo mostrar lugares dentro de un círculo
Muestra todos los restaurantes dentro de un radio de 200 m de Trafalgar Square, Londres.
- El área de búsqueda es un círculo centrado en una latitud y longitud específicas. El radio de este círculo es de 200 metros, lo que determina el tamaño del área de búsqueda.
- El tipo de lugar solicitado es restaurante, y se pasa con
includedTypes
dentro detypeFilters
. - El recuento se solicita con
INSIGHTS_COUNT
, y los IDs de lugares se solicitan conINSIGHTS_PLACES
.
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \ --header 'X-Goog-Api-Key: API_KEY' \ --header 'Content-Type: application/json' \ --data '{ "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"], "filter": { "locationFilter": { "circle": { "latLng": { "latitude": 51.508, "longitude": -0.128}, "radius": 200 } }, "typeFilter": { "includedTypes": "restaurant" } } }'
Cómo excluir tipos de lugares
Puedes excluir tipos de lugares del recuento.
La siguiente solicitud es igual que la del primer ejemplo, pero agrega excludedTypes
a typeFilters
. Puedes usar una cadena o un array de cadenas para includedTypes
y excludedTypes
.
En este ejemplo, se excluyen dos tipos de lugares: cafe
y bakery
, del recuento de restaurant
.
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \ --header 'X-Goog-Api-Key: API_KEY' \ --header 'Content-Type: application/json' \ --data '{ "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"], "filter": { "locationFilter": { "circle": { "latLng": { "latitude": 51.508, "longitude": -0.128}, "radius": 200 } }, "typeFilter": { "includedTypes": "restaurant", "excludedTypes": [ "cafe", "bakery" ] } } }'
Usa el tipo principal
En este ejemplo, se modifica la solicitud del primer ejemplo para incluir solo los lugares que tienen un primaryType
de restaurant
en el recuento.
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \ --header 'X-Goog-Api-Key: API_KEY' \ --header 'Content-Type: application/json' \ --data '{ "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"], "filter": { "locationFilter": { "circle": { "latLng": { "latitude": 51.508, "longitude": -0.128}, "radius": 200 } }, "typeFilter": { "includedPrimaryTypes": "restaurant" } } }'
Polígono personalizado
En este ejemplo, se muestra cómo usar un polígono personalizado para definir tu área de búsqueda. Ten en cuenta que especificar INSIGHTS_PLACES
restringe la búsqueda a áreas lo suficientemente pequeñas como para mostrar hasta 100 IDs de lugares. Para áreas más grandes, usa INSIGHTS_COUNT
para omitir esta limitación, de modo que el servicio no tenga que mostrar los IDs de lugares individuales.
Al igual que antes, el tipo de lugar que se usa es restaurant
. En este ejemplo, también se presentan otros tres filtros:
operatingStatus
: En este ejemplo, solo se cuentan los lugares en funcionamiento.priceLevel
: En este ejemplo, solo se cuentan los lugares con precios moderados y económicos.ratingFilter
: En este ejemplo, solo se cuentan los lugares con una puntuación de opiniones entre 4.0 y 5.0.
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \ --header 'X-Goog-Api-Key: API_KEY' \ --header 'Content-Type: application/json' \ --data '{ "insights": [ "INSIGHT_COUNT" ], "filter": { "locationFilter": { "customArea": { "polygon": { "coordinates": [ { "latitude": 37.776, "longitude": -122.666 }, { "latitude": 37.130, "longitude": -121.898 }, { "latitude": 37.326, "longitude": -121.598 }, { "latitude": 37.912, "longitude": -122.247 }, { "latitude": 37.776, "longitude": -122.666 } ] } } }, "typeFilter": { "includedTypes": "restaurant" }, "operatingStatus": [ "OPERATING_STATUS_OPERATIONAL" ], "priceLevels": [ "PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE" ], "ratingFilter": { "minRating": 4.0, "maxRating": 5.0 } } }'
Área geográfica
En este ejemplo, se usa un ID de lugar de área geográfica para establecer el área de búsqueda.
Estos IDs de lugar incluyen la geometría de un lugar, como un pueblo o una ciudad. El ID de lugar que se usa aquí es ChIJiQHsW0m3j4ARm69rRkrUF3w
, que corresponde a la ciudad de Mountain View, California.
Pasar el ID de lugar a la API de Places Insights establece el área de búsqueda en los límites de la área geográfica. El ID de lugar se pasa con place
, en el formato places/place_ID
.
Puedes obtener un ID de lugar de área geográfica de cualquiera de las siguientes maneras:
- API de Geocoding
- Búsqueda de texto (nueva)
- Nearby Search (nuevo)
- API de Address Validation
- Place Autocomplete
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \ --header 'X-Goog-Api-Key: API_KEY' \ --header 'Content-Type: application/json' \ --data '{ "insights": [ "INSIGHT_COUNT" ], "filter": { "locationFilter": { "region": { "place": "places/ChIJiQHsW0m3j4ARm69rRkrUF3w" } }, "typeFilter": { "includedTypes": [ "restaurant" ] } } }'