Package google.maps.areainsights.v1

索引

AreaInsights

Places Aggregate RPC 的服務定義。

ComputeInsights

rpc ComputeInsights(ComputeInsightsRequest) returns (ComputeInsightsResponse)

您可以使用這項方法,透過各種篩選條件 (例如區域、地點類型、營業狀態、價格等級和評分) 擷取區域相關洞察資料。目前支援「計數」和「地點」洞察資料。您可以利用「計數」洞察資料回答問題,例如「加州有多少家餐廳正在營業,價格低廉且平均評分至少 4 顆星?」 (詳情請參閱 insight 列舉項目)。您可以透過「地點」洞察資料,判斷哪些地點符合要求的篩選條件。接著,用戶端可以使用這些地點資源名稱,透過 Places 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 是地點的專屬 ID。例如:places/ChIJgUbEo8cfqokR5lP9_Wh_DaM

CustomArea

自訂區域。

欄位
polygon

Polygon

必要欄位。以多邊形表示的自訂區域

多邊形

多邊形由一系列以逆時針順序連接的座標組成。座標會形成封閉迴圈,並定義填滿區域。第一個和最後一個座標是等價的,且必須包含相同的值。這項格式是 GeoJSON 多邊形的簡化版本 (我們只支援一個逆時針外環)。

欄位
coordinates[]

LatLng

選用設定。定義多邊形的座標。

區域

區域是指地理邊界,例如城市、郵遞區號、縣、州等。

欄位
聯集欄位 region。定義地理區域。一次只能指定一種區域類型 (例如地點)。region 只能是下列其中一項:
place

string

特定地理區域的專屬 ID。

OperatingStatus

地點的營業狀態。

列舉
OPERATING_STATUS_UNSPECIFIED 不指定。請勿使用此值。
OPERATING_STATUS_OPERATIONAL 該地點正在營業,且在指定營業時間開放。
OPERATING_STATUS_PERMANENTLY_CLOSED 該地點已停止營業。
OPERATING_STATUS_TEMPORARILY_CLOSED 該地點目前暫停營業,預計日後會重新營業。

PlaceInsight

儲存地點資訊

欄位
place

string

地點的專屬 ID。您可以使用這個資源名稱,透過 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

刊登位置類型篩選器。

僅支援表 1所列的地點類型。

地點只能與單一主要類型建立關聯。舉例來說,主要類型可能是「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"]},系統會傳回提供「restaurant」相關服務,但主要不是以「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

選用設定。排除的主要地點類型。