Method: places.autocomplete

Retorna previsões para a entrada especificada.

Solicitação HTTP

POST https://places.googleapis.com/v1/places:autocomplete

O URL usa a sintaxe de transcodificação gRPC.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "input": string,
  "locationBias": {
    object (LocationBias)
  },
  "locationRestriction": {
    object (LocationRestriction)
  },
  "includedPrimaryTypes": [
    string
  ],
  "includedRegionCodes": [
    string
  ],
  "languageCode": string,
  "regionCode": string,
  "origin": {
    object (LatLng)
  },
  "inputOffset": integer,
  "includeQueryPredictions": boolean,
  "sessionToken": string,
  "includePureServiceAreaBusinesses": boolean
}
Campos
input

string

Obrigatório. A string de texto em que pesquisar.

locationBias

object (LocationBias)

Opcional. Direciona os resultados para um local especificado.

No máximo um de locationBias ou locationRestriction precisa ser definido. Se nenhum deles estiver definido, os resultados serão enviesados pelo endereço IP, ou seja, o endereço IP será mapeado para um local impreciso e usado como um sinal enviesado.

locationRestriction

object (LocationRestriction)

Opcional. Restringir os resultados a um local especificado.

No máximo um de locationBias ou locationRestriction precisa ser definido. Se nenhum deles estiver definido, os resultados serão enviesados pelo endereço IP, ou seja, o endereço IP será mapeado para um local impreciso e usado como um sinal enviesado.

includedPrimaryTypes[]

string

Opcional. Incluir o tipo de lugar principal (por exemplo, "restaurante" ou "posto_de_gasolina") nos tipos de lugar (https://developers.google.com/maps/documentation/places/web-service/place-types)), ou apenas (regions) ou (cities). Um lugar só é retornado se o tipo principal dele estiver incluído nessa lista. É possível especificar até cinco valores. Se nenhum tipo for especificado, todos os tipos de lugar serão retornados.

includedRegionCodes[]

string

Opcional. Incluir apenas resultados nas regiões especificadas, especificadas como até 15 códigos de região de dois caracteres CLDR. Um conjunto vazio não restringe os resultados. Se locationRestriction e includedRegionCodes estiverem definidos, os resultados serão localizados na área de interseção.

languageCode

string

Opcional. O idioma em que os resultados serão retornados. O padrão é "en-US". Os resultados podem estar em idiomas diferentes se o idioma usado em input for diferente de languageCode ou se o lugar retornado não tiver uma tradução do idioma local para languageCode.

regionCode

string

Opcional. O código da região, especificado como um código de região CLDR de dois caracteres. Isso afeta a formatação do endereço, a classificação dos resultados e pode influenciar quais resultados são retornados. Isso não restringe os resultados à região especificada. Para restringir os resultados a uma região, use region_code_restriction.

origin

object (LatLng)

Opcional. O ponto de origem a partir do qual a distância geodésica é calculada até o destino (retornado como distanceMeters). Se esse valor for omitido, a distância geodésica não será retornada.

inputOffset

integer

Opcional. Um deslocamento de caractere Unicode com base em zero de input indicando a posição do cursor em input. A posição do cursor pode influenciar as previsões retornadas.

Se estiver vazio, o padrão será o comprimento de input.

includeQueryPredictions

boolean

Opcional. Se verdadeiro, a resposta vai incluir as previsões de lugar e de consulta. Caso contrário, a resposta vai retornar apenas previsões de lugares.

sessionToken

string

Opcional. Uma string que identifica uma sessão de preenchimento automático para fins de faturamento. Precisa ser uma string base64 segura para URL e nome de arquivo com no máximo 36 caracteres ASCII. Caso contrário, um erro INVALID_ARGUMENT será retornado.

A sessão começa quando o usuário começa a digitar uma consulta e termina quando ele seleciona um lugar e uma chamada para o Place Details ou a Validação de endereço é feita. Cada sessão pode ter várias consultas, seguidas por uma solicitação de Place Details ou Address Validation. As credenciais usadas para cada solicitação em uma sessão precisam pertencer ao mesmo projeto do console do Google Cloud. Após a conclusão de uma sessão, o token perde a validade. Seu app precisa gerar um novo token para cada sessão. Se o parâmetro sessionToken for omitido ou você reutilizar um token, a sessão vai ser cobrada como se nenhum token de sessão tivesse sido fornecido e cada solicitação será faturada separadamente.

Recomendamos as seguintes diretrizes:

  • Use tokens de sessão para todas as chamadas do Place Autocomplete.
  • Gere um novo token para cada sessão. Recomendamos o uso de um UUID da versão 4.
  • Verifique se as credenciais usadas para todas as solicitações de Place Autocomplete, Place Details e Address Validation em uma sessão pertencem ao mesmo projeto do Cloud Console.
  • Transmita um token de sessão exclusivo para cada sessão nova. Se você usar o mesmo token para mais de uma sessão, cada solicitação vai ser faturada individualmente.
includePureServiceAreaBusinesses

boolean

Opcional. Inclua empresas de serviço local puro se o campo estiver definido como verdadeiro. Uma empresa de serviço local é aquela que faz visitas ou entregas, mas não atende no endereço comercial. Por exemplo, prestadores de serviços de limpeza ou encanadores. Essas empresas não têm um endereço físico ou local no Google Maps. O Places não vai retornar campos como location, plusCode e outros campos relacionados à localização para essas empresas.

Corpo da resposta

Proto de resposta para places.autocomplete.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
Campos
suggestions[]

object (Suggestion)

Contém uma lista de sugestões, ordenadas em ordem decrescente de relevância.

Escopos de autorização

Requer o seguinte escopo OAuth:

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

LocationBias

A região a ser pesquisada. Os resultados podem ser tendenciosos na região especificada.

Representação JSON
{

  // Union field type can be only one of the following:
  "rectangle": {
    object (Viewport)
  },
  "circle": {
    object (Circle)
  }
  // End of list of possible types for union field type.
}
Campos

Campo de união type.

type pode ser apenas de um dos tipos a seguir:

rectangle

object (Viewport)

Uma viewport definida por um canto nordeste e um sudoeste.

circle

object (Circle)

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

LocationRestriction

A região a ser pesquisada. Os resultados serão restritos à região especificada.

Representação JSON
{

  // Union field type can be only one of the following:
  "rectangle": {
    object (Viewport)
  },
  "circle": {
    object (Circle)
  }
  // End of list of possible types for union field type.
}
Campos

Campo de união type.

type pode ser apenas de um dos tipos a seguir:

rectangle

object (Viewport)

Uma viewport definida por um canto nordeste e um sudoeste.

circle

object (Circle)

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

Sugestão

Um resultado de sugestão de preenchimento automático.

Representação JSON
{

  // Union field kind can be only one of the following:
  "placePrediction": {
    object (PlacePrediction)
  },
  "queryPrediction": {
    object (QueryPrediction)
  }
  // End of list of possible types for union field kind.
}
Campos

Campo de união kind.

kind pode ser apenas de um dos tipos a seguir:

placePrediction

object (PlacePrediction)

Uma previsão de um lugar.

queryPrediction

object (QueryPrediction)

Uma previsão para uma consulta.

PlacePrediction

Resultados da previsão de um lugar do Place Autocomplete.

Representação JSON
{
  "place": string,
  "placeId": string,
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  },
  "types": [
    string
  ],
  "distanceMeters": integer
}
Campos
place

string

O nome do recurso do lugar sugerido. Esse nome pode ser usado em outras APIs que aceitam nomes de lugares.

placeId

string

O identificador exclusivo do lugar sugerido. Esse identificador pode ser usado em outras APIs que aceitam IDs de lugar.

text

object (FormattableText)

Contém o nome legível para o resultado retornado. Para resultados de estabelecimentos, geralmente é o nome e o endereço da empresa.

O text é recomendado para desenvolvedores que querem mostrar um único elemento da interface. Os desenvolvedores que querem mostrar dois elementos de interface separados, mas relacionados, podem usar structuredFormat. Elas são duas maneiras diferentes de representar uma previsão de lugar. Os usuários não devem tentar analisar structuredFormat em text ou vice-versa.

Esse texto pode ser diferente do displayName retornado por places.get.

Pode ser em idiomas diferentes se a solicitação input e languageCode estiver em idiomas diferentes ou se o lugar não tiver uma tradução do idioma local para languageCode.

structuredFormat

object (StructuredFormat)

Um detalhamento da previsão do lugar em texto principal com o nome do lugar e texto secundário com recursos de eliminação de ambiguidade (como uma cidade ou região).

O structuredFormat é recomendado para desenvolvedores que querem mostrar dois elementos de interface separados, mas relacionados. Os desenvolvedores que querem mostrar um único elemento da interface podem usar text. Elas são duas maneiras diferentes de representar uma previsão de lugar. Os usuários não devem tentar analisar structuredFormat em text ou vice-versa.

types[]

string

Lista de tipos que se aplicam a esse lugar da Tabela A ou B em https://developers.google.com/maps/documentation/places/web-service/place-types.

Um tipo é uma categorização de um lugar. Os lugares com tipos compartilhados têm características semelhantes.

distanceMeters

integer

O comprimento da geodésica em metros a partir de origin, se origin for especificado. Algumas previsões, como rotas, podem não preencher esse campo.

FormattableText

Texto que representa uma previsão de lugar ou consulta. O texto pode ser usado como está ou formatado.

Representação JSON
{
  "text": string,
  "matches": [
    {
      object (StringRange)
    }
  ]
}
Campos
text

string

Texto que pode ser usado como está ou formatado com matches.

matches[]

object (StringRange)

Uma lista de intervalos de string que identificam onde a solicitação de entrada correspondeu a text. Os intervalos podem ser usados para formatar partes específicas de text. As subcadeias podem não ser correspondências exatas de input se a correspondência foi determinada por outros critérios além da correspondência de string (por exemplo, correções ortográficas ou transliterações).

Esses valores são deslocamentos de caracteres Unicode de text. Os intervalos são ordenados em valores de deslocamento crescentes.

StringRange

Identifica uma substring em um determinado texto.

Representação JSON
{
  "startOffset": integer,
  "endOffset": integer
}
Campos
startOffset

integer

Deslocamento baseado em zero do primeiro caractere Unicode da string (inclusive).

endOffset

integer

Deslocamento baseado em zero do último caractere Unicode (exclusivo).

StructuredFormat

Contém um detalhamento da previsão de um lugar ou consulta em texto principal e secundário.

Para previsões de lugar, o texto principal contém o nome específico do lugar. Para previsões de consulta, o texto principal contém a consulta.

O texto secundário contém outros recursos de eliminação de ambiguidade (como uma cidade ou região) para identificar melhor o lugar ou refinar a consulta.

Representação JSON
{
  "mainText": {
    object (FormattableText)
  },
  "secondaryText": {
    object (FormattableText)
  }
}
Campos
mainText

object (FormattableText)

Representa o nome do lugar ou da consulta.

secondaryText

object (FormattableText)

Representa outros recursos de eliminação de ambiguidade (como uma cidade ou região) para identificar melhor o lugar ou refinar a consulta.

QueryPrediction

Resultados da previsão de preenchimento automático de consulta.

Representação JSON
{
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  }
}
Campos
text

object (FormattableText)

O texto previsto. Esse texto não representa um lugar, mas sim uma consulta de texto que pode ser usada em um endpoint de pesquisa (por exemplo, a pesquisa de texto).

O text é recomendado para desenvolvedores que querem mostrar um único elemento da interface. Os desenvolvedores que querem mostrar dois elementos de interface separados, mas relacionados, podem usar structuredFormat. Elas são duas maneiras diferentes de representar uma previsão de consulta. Os usuários não devem tentar analisar structuredFormat em text ou vice-versa.

Pode ser em idiomas diferentes se a solicitação input e languageCode estiver em idiomas diferentes ou se parte da consulta não tiver uma tradução do idioma local para languageCode.

structuredFormat

object (StructuredFormat)

Um detalhamento da previsão da consulta em texto principal com a consulta e texto secundário com outros recursos de eliminação de ambiguidade (como uma cidade ou região).

O structuredFormat é recomendado para desenvolvedores que querem mostrar dois elementos de interface separados, mas relacionados. Os desenvolvedores que querem mostrar um único elemento da interface podem usar text. Elas são duas maneiras diferentes de representar uma previsão de consulta. Os usuários não devem tentar analisar structuredFormat em text ou vice-versa.