Exemples

Cette section présente une série d'exemples de requêtes à l'API Places Insights.

Pour utiliser computeInsights, envoyez une requête HTTP POST au format suivant:

https://areainsights.googleapis.com/v1:computeInsights

Afficher les lieux dans un cercle

Afficher tous les restaurants situés dans un rayon de 200 mètres autour de Trafalgar Square, Londres.

  • La zone de recherche est un cercle centré sur une latitude et une longitude spécifiques. Le rayon de ce cercle est de 200 mètres, ce qui détermine la taille la zone de recherche.
  • Le type de lieu demandé est "restaurant". Ce lieu est transmis via included_types sous type_filters.
  • Le nombre est demandé à l'aide de INSIGHTS_COUNT, et les ID de lieu sont demandés à l'aide de INSIGHTS_PLACES.
{
  "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"],
  "filter": {
    "location_filter": {
      "circle": {
        "lat_lng": { "latitude": 51.508, "longitude": -0.128},
        "radius": 200
      }
    },
    "type_filter": { "included_types": "restaurant" }
  }
}

Exclure des types de lieux

Vous pouvez également exclure des types de lieux.

La requête suivante est identique au premier exemple, mais ajoute excluded_types à type_filters. Vous pouvez utiliser une chaîne ou un tableau de chaînes pour included_types et excluded_types.

Cet exemple exclut deux types de lieux (cafe et bakery) du Nombre de restaurant.

{
    "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"],
    "filter": {
        "location_filter": {
            "circle": {
                "lat_lng": { "latitude": 51.508, "longitude": -0.128},
                "radius": 200
            }
        },
        "type_filter": {
            "included_types": "restaurant",
            "excluded_types": [
                "cafe",
                "bakery"
            ]
        }
    }
}

Utiliser le type principal

Cet exemple modifie la requête du premier pour n'inclure que les lieux dont le décompte comporte un primaryType de restaurant.

{
  "insights": ["INSIGHT_COUNT", "INSIGHT_PLACES"],
  "filter": {
    "location_filter": {
      "circle": {
        "lat_lng": { "latitude": 51.508, "longitude": -0.128},
        "radius": 200
      }
    },
    "type_filter": { "included_primary_types": "restaurant" }
  }
}

Polygone personnalisé

Cet exemple montre comment utiliser un polygone personnalisé pour définir votre recherche. dans une zone géographique spécifique. Notez que si vous spécifiez INSIGHTS_PLACES, la recherche est limitée des zones suffisamment petites pour afficher jusqu'à 100 identifiants de lieu. Pour les zones plus vastes, utilisez INSIGHTS_COUNT pour contourner cette limitation afin que le service n'ait pas besoin de renvoyer des ID de lieu individuels.

Comme précédemment, le type de lieu utilisé est restaurant. Cet exemple présente également trois autres filtres:

  • operating_status: cet exemple ne comptabilise que les lieux opérationnels.
  • price_level: dans cet exemple, seuls les prix abordables et aux tarifs modérés sont indiqués. à différents endroits.
  • rating_filter : cet exemple ne compte que les lieux dont la note est comprise entre 4,0 et 5,0.
{
    "insights": [ "INSIGHT_COUNT" ],
    "filter": {
        "location_filter": {
            "custom_area": {
                "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 }
                    ]
                }
            }
        },
        "type_filter": {
            "included_types": "restaurant"
        },
        "operating_status": [ "OPERATING_STATUS_OPERATIONAL" ],
        "price_levels": [ "PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE" ],
        "rating_filter": { "min_rating": 4.0, "max_rating": 5.0 }
    }
}

Zone géographique

Cet exemple utilise un ID de lieu de zone géographique pour définir la zone de recherche. Ces ID de lieu incluent la géométrie d'un lieu (par exemple, une ville). La l'ID de lieu utilisé ici est ChIJiQHsW0m3j4ARm69rRkrUF3w, qui correspond au ville de Mountain View, Californie.

La transmission de l'ID de lieu à l'API Places Insights définit la zone de recherche sur les limites de la zone géographique. L'ID de lieu est transmis à l'aide de place, au format places/<place_ID>

Vous pouvez obtenir un ID de lieu pour une zone géographique de l'une des manières suivantes :

{
    "insights": [
        "INSIGHT_COUNT"
    ],
    "filter": {
        "location_filter": {
            "region": {
                "place": "places/ChIJiQHsW0m3j4ARm69rRkrUF3w"
            }
        },
        "type_filter": {
            "included_types": [
                "restaurant"
            ]
        }
    }
}