- HTTP 请求
- 请求正文
- 响应正文
- 授权范围
- 数据分析
- 过滤
- LocationFilter
- 圆形
- LatLng
- 区域
- CustomArea
- Polygon
- TypeFilter
- OperatingStatus
- PriceLevel
- RatingFilter
- PlaceInsight
- 试试看!
Compute Insights RPC
借助此方法,您可以使用各种过滤条件(例如地区、地点类型、营业状态、价格水平和评分)检索有关地区的数据洞见。目前支持“count”和“places”数据分析。借助“计数”数据分析,您可以回答诸如“加利福尼亚州有多少家正在营业的餐厅价格低廉且平均评分至少为 4 星”之类的问题(如需了解详情,请参阅 insight
枚举)。借助“地点”数据分析,您可以确定哪些地点与请求的过滤条件匹配。然后,客户端可以使用这些地点资源名称使用 Google 地图 API 提取每个地点的更多详细信息。
HTTP 请求
POST https://areainsights.googleapis.com/v1:computeInsights
网址采用 gRPC 转码语法。
请求正文
请求正文中包含结构如下的数据:
JSON 表示法 |
---|
{ "insights": [ enum ( |
字段 | |
---|---|
insights[] |
必需。要计算的数据分析。目前仅支持 INSIGHT_COUNT 和 INSIGHT_PLACES。 |
filter |
必需。数据分析过滤器。 |
响应正文
v1.computeInsights RPC 的响应。
如果成功,响应正文将包含结构如下的数据:
JSON 表示法 |
---|
{
"placeInsights": [
{
object ( |
字段 | |
---|---|
place |
Insights.INSIGHT_PLACES 的结果。 |
count |
Insights.INSIGHT_COUNT 的结果。 |
授权范围
需要以下 OAuth 范围:
https://www.googleapis.com/auth/cloud-platform
数据分析
支持的数据分析。
枚举 | |
---|---|
INSIGHT_UNSPECIFIED |
未指定。 |
INSIGHT_COUNT |
统计数据分析。 指定此数据分析后,v1.computeInsights 会返回与指定过滤条件匹配的地点数量。
|
INSIGHT_PLACES |
退货地点 指定此数据分析后,v1.computeInsights 会返回与指定过滤条件匹配的地点。
|
过滤
v1.computeInsights RPC 的过滤条件。
JSON 表示法 |
---|
{ "locationFilter": { object ( |
字段 | |
---|---|
location |
必需。将结果限制为位于地点过滤条件指定的区域内。 |
type |
必需。地点类型过滤条件。 |
operating |
可选。将结果限制为运营状态包含在此列表中的地点。如果未设置 operatingStatus,则默认使用 OPERATING_STATUS_OPERATIONAL。 |
price |
可选。将结果限制为仅包含价位在此列表中的地点。如果未设置 price_level,则结果中会包含所有价格层级。 |
rating |
可选。将结果限制为用户平均评分在 ratingFilter 指定的范围内的地点。如果未设置 ratingFilter,则结果中会包含所有评分。 |
LocationFilter
位置过滤条件。
指定数据洞见的关注区域。
JSON 表示法 |
---|
{ // Union field |
字段 | |
---|---|
联合字段 area 。必须指定以下某项。area 只能是下列其中一项: |
|
circle |
区域为圆形。 |
region |
将区域作为地区。 |
custom |
由多边形指定的自定义区域。 |
圆形
圆形由中心点和半径(以米为单位)定义。
JSON 表示法 |
---|
{ "radius": integer, // Union field |
字段 | |
---|---|
radius |
可选。圆的半径(以米为单位) |
联合字段 center 。圆心。center 只能是下列其中一项: |
|
lat |
圆心的纬度和经度。 |
place |
圆心的位置资源名称。仅支持地点地图项。 |
LatLng
表示纬度/经度对的对象。该对象以一对双精度数表示,分别代表纬度度数和经度度数。除非另有说明,否则该对象必须符合 WGS84 标准。值必须介于标准化范围内。
JSON 表示法 |
---|
{ "latitude": number, "longitude": number } |
字段 | |
---|---|
latitude |
纬度(以度为单位)。它必须在 [-90.0, +90.0] 范围内。 |
longitude |
经度(以度为单位)。它必须在 [-180.0, +180.0] 范围内。 |
区域
地区是指地理边界,例如城市、邮政编码、郡/县、州/省级行政区等。
JSON 表示法 |
---|
{ // Union field |
字段 | |
---|---|
联合字段 region 。定义地理区域。一次只能指定一种类型的区域(例如地点)。region 只能是下列其中一项: |
|
place |
某个特定地理区域的唯一标识符。 |
CustomArea
自定义区域。
JSON 表示法 |
---|
{
"polygon": {
object ( |
字段 | |
---|---|
polygon |
必需。表示为多边形的自定义区域 |
多边形
多边形由一系列以逆时针顺序连接的坐标表示。坐标会形成一个闭合环路,并定义一个填充区域。第一个坐标和最后一个坐标是等效的,并且必须包含相同的值。该格式是 GeoJSON 多边形的简化版本(我们仅支持一个逆时针外环)。
JSON 表示法 |
---|
{
"coordinates": [
{
object ( |
字段 | |
---|---|
coordinates[] |
可选。用于定义多边形的坐标。 |
TypeFilter
地点类型过滤条件。
仅支持表 a 中的地点类型。
一个地点只能有一个主要类型与其相关联。例如,主要类型可能是“mexican_restaurant”或“steak_house”。使用 includedPrimaryTypes 和 excludedPrimaryTypes 可按地点的主要类型过滤结果。
地点还可以有多个与其关联的类型值。例如,餐厅可能具有以下类型:“seafood_restaurant”“restaurant”“food”“point_of_interest”“establishment”。使用 includedTypes 和 excludedTypes 过滤与地点关联的类型列表中的结果。
如果在搜索时指定了多个类型限制,系统只会返回满足所有限制的地点。例如,如果您指定 {"includedTypes": ["restaurant"], "excludedPrimaryTypes": ["steak_house"]}, 则返回的地点提供与“餐厅”相关的服务,但主要经营的不是“steak_house”。
如果存在任何冲突的类型(即某个类型同时出现在 includedTypes 和 excludedTypes 类型或 includedPrimaryTypes 和 excludedPrimaryTypes 中),系统会返回 INVALID_ARGUMENT 错误。
必须设置 includedTypes 或 includedPrimaryTypes 之一。
JSON 表示法 |
---|
{ "includedTypes": [ string ], "excludedTypes": [ string ], "includedPrimaryTypes": [ string ], "excludedPrimaryTypes": [ string ] } |
字段 | |
---|---|
included |
可选。包含的地点类型。 |
excluded |
可选。排除的地点类型。 |
included |
可选。包含的主要地点类型。 |
excluded |
可选。排除的主要地点类型。 |
OperatingStatus
地点的营业状态。
枚举 | |
---|---|
OPERATING_STATUS_UNSPECIFIED |
未指定。 |
OPERATING_STATUS_OPERATIONAL |
相应地点正在营业,并在其指定的营业时间内开放。 |
OPERATING_STATUS_PERMANENTLY_CLOSED |
相应地点已停止营业。 |
OPERATING_STATUS_TEMPORARILY_CLOSED |
该地点暂时关闭,预计日后会重新开放。 |
PriceLevel
地点的价格水平。
枚举 | |
---|---|
PRICE_LEVEL_UNSPECIFIED |
地点价格级别未指定或未知。 |
PRICE_LEVEL_FREE |
相应地点提供免费服务。 |
PRICE_LEVEL_INEXPENSIVE |
相应地点提供价格实惠的服务。 |
PRICE_LEVEL_MODERATE |
相应地点提供价格适中的服务。 |
PRICE_LEVEL_EXPENSIVE |
该地提供的服务价格昂贵。 |
PRICE_LEVEL_VERY_EXPENSIVE |
相应地点提供的服务价格非常高。 |
RatingFilter
“用户评分平均值”过滤条件。
JSON 表示法 |
---|
{ "minRating": number, "maxRating": number } |
字段 | |
---|---|
min |
可选。将结果限制为平均用户评分大于或等于 minRating 的地点。值必须介于 1.0 到 5.0 之间。 |
max |
可选。将结果限制为平均用户评分严格低于或等于 maxRating 的地点。值必须介于 1.0 到 5.0 之间。 |
PlaceInsight
包含地点的相关信息
JSON 表示法 |
---|
{ "place": string } |
字段 | |
---|---|
place |
地点的唯一标识符。此资源名称可用于使用 Places API 检索地点的详细信息。 |