Package google.maps.areainsights.v1

Índice

AreaInsights

Definição de serviço para o RPC de agregação do Places.

ComputeInsights

rpc ComputeInsights(ComputeInsightsRequest) returns (ComputeInsightsResponse)

Esse método permite recuperar insights sobre áreas usando vários filtros, como área, tipo de lugar, status de operação, nível de preço e classificações. No momento, os insights "contagem" e "lugares" são aceitos. Com insights de "contagem", você pode responder a perguntas como "Quantos restaurantes na Califórnia são operacionais, baratos e têm uma classificação média de pelo menos 4 estrelas?" (consulte o tipo enumerado insight para mais detalhes). Com os insights de lugares, você pode determinar quais lugares correspondem ao filtro solicitado. Os clientes podem usar esses nomes de recursos de lugar para buscar mais detalhes sobre cada lugar usando a API Places.

Escopos de autorização

Requer o seguinte escopo OAuth:

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

ComputeInsightsRequest

Solicitação para o RPC ComputeInsights.

Campos
insights[]

Insight

Obrigatório. Insights a serem calculados. No momento, apenas INSIGHT_COUNT e INSIGHT_PLACES são aceitos.

filter

Filter

Obrigatório. Filtro de insights.

ComputeInsightsResponse

Resposta para o RPC ComputeInsights.

Campos
place_insights[]

PlaceInsight

Resultado para Insights.INSIGHT_PLACES.

count

int64

Resultado para Insights.INSIGHT_COUNT.

Filtro

Filtros para a RPC ComputeInsights.

Campos
location_filter

LocationFilter

Obrigatório. Restringe os resultados a lugares que estão na área especificada pelos filtros de local.

type_filter

TypeFilter

Obrigatório. Filtros de tipo de lugar.

operating_status[]

OperatingStatus

Opcional. Restringe os resultados a lugares cujo status de operação está incluído nesta lista. Se operating_status não estiver definido, OPERATING_STATUS_OPERATIONAL será usado por padrão.

price_levels[]

PriceLevel

Opcional. Restringe os resultados a lugares cujo nível de preço está incluído nesta lista. Se price_levels não estiver definido, todos os níveis de preço serão incluídos nos resultados.

rating_filter

RatingFilter

Opcional. Restringe os resultados a lugares com classificações médias dos usuários no intervalo especificado por rating_filter. Se rating_filter não estiver definido, todas as notas serão incluídas no resultado.

Insight

Insights compatíveis.

Enums
INSIGHT_UNSPECIFIED Não especificado.
INSIGHT_COUNT

Insight de contagem.

Quando esse insight é especificado, o ComputeInsights retorna o número de lugares que correspondem aos critérios de filtro especificados.

Exemplo de solicitação:

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

Exemplo de resposta:

{
  "count": 1234
}
INSIGHT_PLACES

Locais de devolução

Quando esse insight é especificado, o ComputeInsights retorna os IDs de lugares que correspondem aos critérios de filtro especificados.

Exemplo de solicitação:

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

Exemplo de resposta:

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

LocationFilter

Filtros de local.

Especifica a área de interesse do insight.

Campos
Campo de união area. É necessário especificar uma das opções a seguir. area pode ser apenas de um dos tipos a seguir:
circle

Circle

Área como um círculo.

region

Region

Área como região.

custom_area

CustomArea

Área personalizada especificada por um polígono.

Círculo

Um círculo é definido por um ponto central e um raio em metros.

Campos
radius

int32

Opcional. O raio do círculo em metros

Campo de união center. O centro do círculo. center pode ser apenas de um dos tipos a seguir:
lat_lng

LatLng

A latitude e a longitude do centro do círculo.

place

string

Formato:precisa estar no formato places/PLACE_ID, em que PLACE_ID é o identificador exclusivo de um lugar. Exemplo: places/ChIJgUbEo8cfqokR5lP9_Wh_DaM.

CustomArea

Área personalizada.

Campos
polygon

Polygon

Obrigatório. A área personalizada representada como um polígono

Polígono

Um polígono é representado por uma série de coordenadas conectadas em uma sequência ordenada no sentido anti-horário. As coordenadas formam um loop fechado e definem uma região preenchida. As coordenadas inicial e final são equivalentes e precisam conter valores idênticos. O formato é uma versão simplificada dos polígonos do GeoJSON. Só aceitamos um anel externo no sentido anti-horário.

Campos
coordinates[]

LatLng

Opcional. As coordenadas que definem o polígono.

Região

Uma região é um limite geográfico, como cidades, CEPs, condados, estados etc.

Campos
Campo de união region. Define uma região geográfica. Só é possível especificar um tipo de região (por exemplo, lugar) por vez. region pode ser apenas de um dos tipos a seguir:
place

string

O identificador exclusivo de uma região geográfica específica.

OperatingStatus

Status de funcionamento do lugar.

Enums
OPERATING_STATUS_UNSPECIFIED Não especificado. Este valor não deve ser usado.
OPERATING_STATUS_OPERATIONAL O lugar está funcionando e está aberto durante o horário definido.
OPERATING_STATUS_PERMANENTLY_CLOSED O lugar não existe mais.
OPERATING_STATUS_TEMPORARILY_CLOSED O local está temporariamente fechado e deve ser reaberto no futuro.

PlaceInsight

Contém informações sobre um lugar

Campos
place

string

O identificador exclusivo do lugar. Esse nome de recurso pode ser usado para extrair detalhes sobre o lugar usando a API Places.

PriceLevel

Nível de preço do lugar.

Enums
PRICE_LEVEL_UNSPECIFIED Não especificado. Este valor não deve ser usado.
PRICE_LEVEL_FREE O lugar oferece serviços sem custo financeiro.
PRICE_LEVEL_INEXPENSIVE O lugar oferece serviços baratos.
PRICE_LEVEL_MODERATE O lugar oferece serviços com preços moderados.
PRICE_LEVEL_EXPENSIVE O lugar oferece serviços caros.
PRICE_LEVEL_VERY_EXPENSIVE O lugar oferece serviços muito caros.

RatingFilter

Filtros de avaliação média do usuário.

Campos
min_rating

float

Opcional. Restringe os resultados a lugares com classificação média do usuário maior ou igual a min_rating. Os valores precisam estar entre 1,0 e 5,0.

max_rating

float

Opcional. Restringe os resultados a lugares com uma classificação média do usuário menor ou igual a max_rating. Os valores precisam estar entre 1,0 e 5,0.

TypeFilter

Filtros de tipo de lugar.

Somente os tipos de lugar da tabela a são aceitos.

Um lugar só pode ter um tipo principal associado. Por exemplo, o tipo principal pode ser "mexican_restaurant" ou "steak_house". Use "included_primary_types" e "excluded_primary_types" para filtrar os resultados no tipo principal de um lugar.

Um lugar também pode ter vários valores de tipo associados a ele. Por exemplo, um restaurante pode ter os seguintes tipos: "seafood_restaurant", "restaurant", "food", "point_of_interest", "establishment". Use "included_types" e "excluded_types" para filtrar os resultados na lista de tipos associados a um lugar.

Se uma pesquisa for especificada com várias restrições de tipo, apenas os lugares que atenderem a todas as restrições serão retornados. Por exemplo, se você especificar {"included_types": ["restaurant"], "excluded_primary_types": ["steak_house"]}, os lugares retornados oferecem serviços relacionados a "restaurant", mas não funcionam principalmente como "steak_house".

Se houver tipos conflitantes, ou seja, um tipo aparece nos tipos "included_types" e "excluded_types" ou "included_primary_types" e "excluded_primary_types", um erro INVALID_ARGUMENT será retornado.

Um dos campos "included_types" ou "included_primary_types" precisa ser definido.

Campos
included_types[]

string

Opcional. Tipos de lugar incluídos.

excluded_types[]

string

Opcional. Tipos de lugar excluídos.

included_primary_types[]

string

Opcional. Incluiu os tipos de lugar principais.

excluded_primary_types[]

string

Opcional. Tipos de lugar principais excluídos.