示例

本部分介绍了向 Places Insights API 发出的一系列示例请求。

如需使用 computeInsights,请使用以下格式提交 HTTP POST 请求:

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

返回圆内的地点

返回伦敦特拉法加广场 200 米半径范围内的所有餐厅。

  • 搜索区域是以特定经纬度为中心的圆圈。 这个圆的半径为 200 米 。
  • 请求的地点类型为餐厅,此值会使用 type_filters 中的 included_types 传递。
  • 系统使用 INSIGHTS_COUNT 请求计数,并使用 INSIGHTS_PLACES 请求地点 ID
{
  "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 传递给 type_filters。您可以使用字符串或数组 included_typesexcluded_types 的字符串。

在此示例中,系统会从 restaurant 计数中排除两个地点类型:cafebakery

{
    "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"
            ]
        }
    }
}

使用主要类型

此示例将第一个示例中的请求修改为仅包含地点 其 primaryTyperestaurant

{
  "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" }
  }
}

自定义多边形

此示例演示了如何使用自定义多边形来定义搜索 区域。请注意,指定 INSIGHTS_PLACES 会将搜索范围限制为 足够小,最多可返回 100 个地点 ID。对于较大的区域,请使用 INSIGHTS_COUNT 来绕过此限制,这样该服务就无需 返回单个地点 ID。

与之前一样,使用的地点类型为 restaurant。此示例还介绍了 另外三个过滤器:

  • operating_status:此示例仅统计运营中的位置。
  • price_level:此示例仅统计价格低廉和价格适中的地点。
  • rating_filter:此示例仅统计评价得分介于以下二者之间的地点: 4.0 和 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 }
    }
}

地理区域

此示例使用地理区域地点 ID 设置搜索区域。这些地点 ID 包含地点(例如城镇或城市)的几何图形。此处使用的地点 ID 为 ChIJiQHsW0m3j4ARm69rRkrUF3w,对应于加利福尼亚州山景城

将地点 ID 传递给 Places Insights API 可将搜索区域设置为边界 地理区域地点 ID 使用 place 传递,格式为 places/<place_ID>

您可以通过以下任意方式获取地理区域地点 ID:

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