Method: computeInsights

Interfejs wywołania procedury żądania (RPC) Compute Insights

Ta metoda umożliwia uzyskiwanie statystyk dotyczących obszarów za pomocą różnych filtrów, takich jak obszar, typ miejsca, stan działania, poziom cen i oceny. Obecnie dostępne są statystyki „liczba” i „miejsca”. Dzięki statystykom „liczba” możesz uzyskać odpowiedzi na pytania w rodzaju „Ile restauracji w Kalifornii jest czynnych, niedrogich i ma średnią ocenę co najmniej 4 gwiazdek” (więcej informacji znajdziesz w enumeracji insight). Dzięki statystykom dotyczącym „miejsc” możesz określić, które miejsca pasują do wybranego filtra. Klienci mogą następnie używać tych nazw zasobów miejsc do pobierania szczegółowych informacji o poszczególnych miejscach za pomocą interfejsu Places API.

Żądanie HTTP

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

Adres URL używa składni transkodowania gRPC.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "insights": [
    enum (Insight)
  ],
  "filter": {
    object (Filter)
  }
}
Pola
insights[]

enum (Insight)

Wymagane. Statystyki do obliczenia. Obecnie obsługiwane są tylko parametry INSIGHT_COUNT i INSIGHT_PLACES.

filter

object (Filter)

Wymagane. Filtr statystyk.

Treść odpowiedzi

Odpowiedź dla wywołania RPC v1.computeInsights.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "placeInsights": [
    {
      object (PlaceInsight)
    }
  ],
  "count": string
}
Pola
placeInsights[]

object (PlaceInsight)

Wynik dla Insights.INSIGHT_PLACES.

count

string (int64 format)

Wynik dla Insights.INSIGHT_COUNT.

Zakresy autoryzacji

Wymaga następującego zakresu OAuth:

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

Statystyki

Obsługiwane statystyki

Wartości w polu enum
INSIGHT_UNSPECIFIED Nie określono.
INSIGHT_COUNT

Statystyka „Liczba”.

Gdy ta statystyka jest określona, v1.computeInsights zwraca liczbę miejsc, które pasują do określonych kryteriów filtra.

For example if the request is:
ComputeInsightsRequest {
  insights: INSIGHT_COUNT
  filter {
    locationFilter {region: <PlaceId of state of CA>}
    typeFilter {includedTypes: "restaurant"}
    operatingStatus: OPERATING_STATUS_OPERATIONAL
    priceLevels: PRICE_LEVEL_FREE
    priceLevels: PRICE_LEVEL_INEXPENSIVE
    minRating: 4.0
  }
}

The method will return the count of restaurants in California that are
operational, with price level free or inexpensive and have an average
rating of at least 4 starts.

Example response:
ComputeInsightsResponse {
  count: <number of places>
}
INSIGHT_PLACES

Miejsca zwrotu

Gdy ta statystyka jest określona, v1.computeInsights zwraca miejsca, które pasują do określonych kryteriów filtra.

For example if the request is:
ComputeInsightsRequest {
  insights: INSIGHT_PLACES
  filter {
    locationFilter {region: <PlaceId of state of CA>}
    typeFilter {includedTypes: "restaurant"}
    operatingStatus: OPERATING_STATUS_OPERATIONAL
    priceLevels: PRICE_LEVEL_FREE
    priceLevels: PRICE_LEVEL_INEXPENSIVE
    minRating: 4.0
  }
}

The method will return list of places of restaurants in
California that are operational, with price level free or inexpensive and
have an average rating of at least 4 stars.

Example response:
ComputeInsightsResponse {
  placeInsights { place: "places/ABC" }
  placeInsights { place: "places/PQR" }
  placeInsights { place: "places/XYZ" }
}

Filtr

Filtry dla RPC v1.computeInsights.

Zapis JSON
{
  "locationFilter": {
    object (LocationFilter)
  },
  "typeFilter": {
    object (TypeFilter)
  },
  "operatingStatus": [
    enum (OperatingStatus)
  ],
  "priceLevels": [
    enum (PriceLevel)
  ],
  "ratingFilter": {
    object (RatingFilter)
  }
}
Pola
locationFilter

object (LocationFilter)

Wymagane. Ogranicza wyniki do miejsc znajdujących się w obszarze określonym przez filtry lokalizacji.

typeFilter

object (TypeFilter)

Wymagane. Filtry typu miejsca.

operatingStatus[]

enum (OperatingStatus)

Opcjonalnie: Ogranicza wyniki do miejsc, których stan działania znajduje się na tej liście. Jeśli operatingStatus nie jest ustawiony, domyślnie używana jest wartość OPERATING_STATUS_OPERATIONAL.

priceLevels[]

enum (PriceLevel)

Opcjonalnie: Ogranicza wyniki do miejsc, których poziom ceny jest uwzględniony na tej liście. Jeśli parametr price_level nie jest ustawiony, w wynikach uwzględniane są wszystkie poziomy cen.

ratingFilter

object (RatingFilter)

Opcjonalnie: Ogranicza wyniki do miejsc, których średnie oceny użytkowników mieszczą się w zakresie określonym przez ratingFilter. Jeśli parametr ratingFilter nie jest ustawiony, w wyniku uwzględniane są wszystkie oceny.

LocationFilter

Filtry lokalizacji.

Określa obszar, który Cię interesuje.

Zapis JSON
{

  // Union field area can be only one of the following:
  "circle": {
    object (Circle)
  },
  "region": {
    object (Region)
  },
  "customArea": {
    object (CustomArea)
  }
  // End of list of possible types for union field area.
}
Pola
Pole unii area. Musisz podać jeden z tych elementów. area może być tylko jednym z tych elementów:
circle

object (Circle)

Pole koła.

region

object (Region)

Obszar jako region.

customArea

object (CustomArea)

Obszar niestandardowy określony przez wielokąt.

Okrąg

Okrąg jest definiowany przez punkt środkowy i promień w metrach.

Zapis JSON
{
  "radius": integer,

  // Union field center can be only one of the following:
  "latLng": {
    object (LatLng)
  },
  "place": string
  // End of list of possible types for union field center.
}
Pola
radius

integer

Opcjonalnie: Promień koła w metrach

Pole unii center. środek okręgu, center może być tylko jednym z tych elementów:
latLng

object (LatLng)

Szerokość i długość geograficzna środka koła.

place

string

Nazwa zasobu Miejsce odpowiadająca środkowi okręgu. Obsługiwane są tylko punkty.

LatLng

Obiekt reprezentujący parę szerokości i długości geograficznej. Jest to para liczb podwójnie po przecinku reprezentująca stopnie szerokości i długości geograficznej. O ile nie określono inaczej, obiekt musi być zgodny ze standardem WGS84. Wartości muszą mieścić się w normalizowanych zakresach.

Zapis JSON
{
  "latitude": number,
  "longitude": number
}
Pola
latitude

number

Szerokość geograficzna w stopniach. Musi mieścić się w zakresie [-90,0, +90,0].

longitude

number

Długość geograficzna w stopniach. Musi mieścić się w zakresie [-180,0, +180,0].

Region

Region to granica geograficzna, np. miasto, kod pocztowy, województwo, stan itp.

Zapis JSON
{

  // Union field region can be only one of the following:
  "place": string
  // End of list of possible types for union field region.
}
Pola
Pole unii region. Określa region geograficzny. Możesz określić tylko jeden typ regionu (np. miejsce). region może być tylko jednym z tych elementów:
place

string

Unikalny identyfikator konkretnego regionu geograficznego.

CustomArea

Obszar niestandardowy.

Zapis JSON
{
  "polygon": {
    object (Polygon)
  }
}
Pola
polygon

object (Polygon)

Wymagane. Obszar niestandardowy reprezentowany przez wielokąt

Wielokąt

Wielokąt jest reprezentowany przez serię połączonych współrzędnych w kolejności przeciwnej do ruchu wskazówek zegara. Współrzędne tworzą zamkniętą pętlę i określają wypełniony obszar. Pierwsze i ostatnie współrzędne są równoważne i muszą zawierać identyczne wartości. Jest to uproszczona wersja wielokątów GeoJSON (obsługujemy tylko 1 zewnętrzny pierścień przeciwny do ruchu wskazówek zegara).

Zapis JSON
{
  "coordinates": [
    {
      object (LatLng)
    }
  ]
}
Pola
coordinates[]

object (LatLng)

Opcjonalnie: Współrzędne definiujące wielokąt.

TypeFilter

Filtry typu miejsca.

Obsługiwane są tylko typy miejsc z tabeli a.

Z miejscem może być powiązany tylko jeden podstawowy typ. Na przykład główny typ może być „mexican_restaurant” lub „steak_house”. Użyj parametrów includedPrimaryTypes i excludedPrimaryTypes, aby filtrować wyniki według głównego typu miejsca.

Z miejscem może być powiązanych wiele wartości typu. Na przykład restauracja może mieć te typy: „seafood_restaurant”, „restaurant”, „food”, „point_of_interest”, „establishment”. Użyj elementów includedTypes i excludedTypes, aby filtrować wyniki na liście typów powiązanych z miejscem.

Jeśli wyszukiwanie jest określone z wieloma ograniczeniami typu, zwracane są tylko miejsca, które spełniają wszystkie ograniczenia. Jeśli na przykład podasz {"includedTypes": ["restaurant"], "excludedPrimaryTypes": ["steak_house"]}, zwrócone miejsca oferują usługi związane z „restauracją”, ale nie działają głównie jako „steak_house”.

Jeśli występują sprzeczne typy, np. typ występuje zarówno w typach includedTypes i excludedTypes, jak i w typach includedPrimaryTypes i excludedPrimaryTypes, zwracany jest błąd INVALID_ARGUMENT.

Musisz ustawić jeden z parametrów includedTypes lub includedPrimaryTypes.

Zapis JSON
{
  "includedTypes": [
    string
  ],
  "excludedTypes": [
    string
  ],
  "includedPrimaryTypes": [
    string
  ],
  "excludedPrimaryTypes": [
    string
  ]
}
Pola
includedTypes[]

string

Opcjonalnie: Uwzględnione typy miejsc.

excludedTypes[]

string

Opcjonalnie: Wykluczone typy miejsc.

includedPrimaryTypes[]

string

Opcjonalnie: Uwzględnione podstawowe typy miejsc

excludedPrimaryTypes[]

string

Opcjonalnie: Wykluczone główne typy miejsc

OperatingStatus

Stan działania miejsca.

Wartości w polu enum
OPERATING_STATUS_UNSPECIFIED Nie określono.
OPERATING_STATUS_OPERATIONAL Miejsce jest czynne i otwarte w określonych godzinach.
OPERATING_STATUS_PERMANENTLY_CLOSED Miejsce nie działa już.
OPERATING_STATUS_TEMPORARILY_CLOSED Miejsce jest tymczasowo zamknięte i spodziewamy się, że zostanie ponownie otwarte w przyszłości.

PriceLevel

Poziom cen w danym miejscu.

Wartości w polu enum
PRICE_LEVEL_UNSPECIFIED Poziom ceny miejsca jest nieokreślony lub nieznany.
PRICE_LEVEL_FREE Miejsce oferuje bezpłatne usługi.
PRICE_LEVEL_INEXPENSIVE Miejsce oferuje niedrogie usługi.
PRICE_LEVEL_MODERATE Miejsce oferuje usługi w rozsądnych cenach.
PRICE_LEVEL_EXPENSIVE Miejsce oferuje drogie usługi.
PRICE_LEVEL_VERY_EXPENSIVE Miejsce oferuje bardzo drogie usługi.

RatingFilter

Filtry średniej oceny użytkowników.

Zapis JSON
{
  "minRating": number,
  "maxRating": number
}
Pola
minRating

number

Opcjonalnie: Ogranicza wyniki do miejsc, których średnia ocena użytkowników jest większa lub równa minRating. Wartości muszą się mieścić w przedziale od 1,0 do 5,0.

maxRating

number

Opcjonalnie: Ogranicza wyniki do miejsc, których średnia ocena użytkowników jest mniejsza niż maxRating lub równa tej wartości. Wartości muszą się mieścić w przedziale od 1,0 do 5,0.

PlaceInsight

Zawiera informacje o miejscu

Zapis JSON
{
  "place": string
}
Pola
place

string

Unikalny identyfikator miejsca. Za pomocą tego identyfikatora zasobu możesz pobierać szczegóły dotyczące miejsca za pomocą interfejsu Places API.