Package google.maps.areainsights.v1

索引

AreaInsights

Places Insights API 的服务定义。

ComputeInsights

rpc ComputeInsights(ComputeInsightsRequest) returns (ComputeInsightsResponse)

Compute Insights RPC

借助此方法,您可以使用各种过滤条件(例如地区、地点类型、营业状态、价格水平和评分)检索有关地区的数据分析。目前支持“count”和“places”数据分析。借助“计数”数据分析,您可以回答诸如“加利福尼亚州有多少家正在营业的餐厅价格实惠且平均评分至少为 4 星”之类的问题(如需了解详情,请参阅 insight 枚举)。借助“地点”数据分析,您可以确定哪些地点与请求的过滤条件匹配。然后,客户端可以使用这些地点资源名称使用 Google 地图 API 提取每个地点的更多详细信息。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/cloud-platform

ComputeInsightsRequest

对 ComputeInsights RPC 的请求。

字段
insights[]

Insight

必需。要计算的数据分析。目前仅支持 INSIGHT_COUNT 和 INSIGHT_PLACES。

filter

Filter

必需。数据分析过滤器。

ComputeInsightsResponse

ComputeInsights RPC 的响应。

字段
place_insights[]

PlaceInsight

Insights.INSIGHT_PLACES 的结果。

count

int64

Insights.INSIGHT_COUNT 的结果。

过滤

ComputeInsights RPC 的过滤条件。

字段
location_filter

LocationFilter

必需。将结果限制为位于地点过滤条件指定的区域内。

type_filter

TypeFilter

必需。地点类型过滤条件。

operating_status[]

OperatingStatus

可选。将结果限制为运营状态包含在此列表中的地点。如果未设置 operating_status,则默认使用 OPERATING_STATUS_OPERATIONAL。

price_levels[]

PriceLevel

可选。将结果限制为仅包含价位在此列表中的地点。如果未设置 price_levels,则结果中会包含所有价格级别。

rating_filter

RatingFilter

可选。将结果限制为用户平均评分在 rating_filter 指定的范围内的地点。如果未设置 rating_filter,则结果中会包含所有评分。

数据分析

支持的数据分析。

枚举
INSIGHT_UNSPECIFIED 未指定。
INSIGHT_COUNT

统计数据分析。

指定此数据洞见后,ComputeInsights 会返回与指定过滤条件匹配的地点数量。

示例请求:

{
  "insights": ["INSIGHT_COUNT"],
  "filter": {
    "locationFilter": {
      "region": {
        "place": "places/ChIJPV4oX_65j4ARVW8IJ6IJUYs"
      }
    },
    "typeFilter": {
      "includedTypes": ["restaurant"]
    },
    "operatingStatus": ["OPERATING_STATUS_OPERATIONAL"],
    "priceLevels": [
      "PRICE_LEVEL_FREE",
      "PRICE_LEVEL_INEXPENSIVE"
    ],
    "ratingFilter": {
      "minRating": 4.0
    }
  }
}

示例响应:

{
  "count": 1234
}
INSIGHT_PLACES

退货地点

指定此数据洞见后,ComputeInsights 会返回与指定过滤条件匹配的地点 ID。

示例请求:

{
  "insights": ["INSIGHT_PLACES"],
  "filter": {
    "locationFilter": {
      "region": {
        "place": "places/ChIJPV4oX_65j4ARVW8IJ6IJUYs"
      }
    },
    "typeFilter": {
      "includedTypes": ["restaurant"]
    },
    "operatingStatus": ["OPERATING_STATUS_OPERATIONAL"],
    "priceLevels": [
      "PRICE_LEVEL_FREE",
      "PRICE_LEVEL_INEXPENSIVE"
    ],
    "ratingFilter": {
      "minRating": 4.0
    }
  }
}

示例响应:

{
  "placeInsights": [
    {"place": "places/ABC"},
    {"place": "places/PQR"},
    {"place": "places/XYZ"}
  ]
}

LocationFilter

位置过滤条件。

指定数据洞见的关注区域。

字段
联合字段 area。必须指定以下某项。area 只能是下列其中一项:
circle

Circle

区域为圆形。

region

Region

将区域作为地区。

custom_area

CustomArea

由多边形指定的自定义区域。

圆形

圆形由中心点和半径(以米为单位)定义。

字段
radius

int32

可选。圆的半径(以米为单位)

联合字段 center。圆心。center 只能是下列其中一项:
lat_lng

LatLng

圆心的纬度和经度。

place

string

格式:必须采用 places/PLACE_ID 格式,其中 PLACE_ID 是地点的唯一标识符。例如:places/ChIJgUbEo8cfqokR5lP9_Wh_DaM

CustomArea

自定义区域。

字段
polygon

Polygon

必需。表示为多边形的自定义区域

多边形

多边形由一系列以逆时针顺序连接的坐标表示。坐标形成一个闭合环路,并定义一个填充区域。第一个坐标和最后一个坐标是等效的,并且必须包含相同的值。该格式是 GeoJSON 多边形的简化版本(我们仅支持一个逆时针外环)。

字段
coordinates[]

LatLng

可选。用于定义多边形的坐标。

区域

地区是指地理边界,例如城市、邮政编码、郡/县、州/省级行政区等。

字段
联合字段 region。定义地理区域。一次只能指定一种类型的区域(例如地点)。region 只能是下列其中一项:
place

string

某个特定地理区域的唯一标识符。

OperatingStatus

地点的营业状态。

枚举
OPERATING_STATUS_UNSPECIFIED 未指定。请勿使用此值。
OPERATING_STATUS_OPERATIONAL 地点正在营业,并在其指定的营业时间内开放。
OPERATING_STATUS_PERMANENTLY_CLOSED 相应地点已停止营业。
OPERATING_STATUS_TEMPORARILY_CLOSED 该地点已暂停营业,预计日后会重新开业。

PlaceInsight

包含地点的相关信息

字段
place

string

地点的唯一标识符。此资源名称可用于使用 Places API 检索地点的详细信息。

PriceLevel

地点的价格水平。

枚举
PRICE_LEVEL_UNSPECIFIED 未指定。请勿使用此值。
PRICE_LEVEL_FREE 相应地点提供免费服务。
PRICE_LEVEL_INEXPENSIVE 相应地点提供价格实惠的服务。
PRICE_LEVEL_MODERATE 相应地点提供价格适中的服务。
PRICE_LEVEL_EXPENSIVE 相应地点提供的服务价格较高。
PRICE_LEVEL_VERY_EXPENSIVE 相应地点提供的服务价格非常高。

RatingFilter

“用户评分平均值”过滤条件。

字段
min_rating

float

可选。将结果限制为平均用户评分大于或等于 min_rating 的地点。值必须介于 1.0 到 5.0 之间。

max_rating

float

可选。将结果限制为平均用户评分严格小于或等于 max_rating 的地点。值必须介于 1.0 到 5.0 之间。

TypeFilter

地点类型过滤条件。

仅支持表 a 中的地点类型。

一个地点只能有一个主要类型与其相关联。例如,主要类型可能是“mexican_restaurant”或“steak_house”。使用 included_primary_types 和 excluded_primary_types 可按地点的主要类型过滤结果。

地点还可以有多个与其关联的类型值。例如,餐厅可能具有以下类型:“seafood_restaurant”“restaurant”“food”“point_of_interest”“establishment”。使用 included_types 和 excluded_types 过滤与地点关联的类型列表中的结果。

如果在搜索时指定了多个类型限制,系统只会返回满足所有限制的地点。例如,如果您指定 {"included_types": ["restaurant"], "excluded_primary_types": ["steak_house"]}, 则返回的地点提供与“餐厅”相关的服务,但主要经营的不是“steak_house”。

如果存在任何冲突的类型(即某个类型同时出现在 included_types 和 excluded_types 或 included_primary_types 和 excluded_primary_types 中),系统会返回 INVALID_ARGUMENT 错误。

必须设置 included_types 或 included_primary_types 之一。

字段
included_types[]

string

可选。包含的地点类型。

excluded_types[]

string

可选。排除的地点类型。

included_primary_types[]

string

可选。包含的主要地点类型。

excluded_primary_types[]

string

可选。排除的主要地点类型。