Migrar para o Text Search (novo)

A API Places oferece suporte à Pesquisa de texto. Se você já conhece a Text Search atual, a nova versão faz as seguintes mudanças:

  • A nova pesquisa de texto usa solicitações HTTP POST. Transmita parâmetros no corpo da solicitação ou em cabeçalhos como parte de uma solicitação HTTP POST. Por outro lado, com a Pesquisa de texto atual, você transmite parâmetros de URL usando uma solicitação HTTP GET.
  • O mascaramento de campo é obrigatório. É necessário especificar quais campos você quer que sejam retornados na resposta. Não há uma lista padrão de campos retornados. Se você omitir essa lista, os métodos vão retornar um erro. Para mais informações, consulte FieldMask.
  • A nova Pesquisa de texto oferece suporte a chaves de API e tokens OAuth como mecanismo de autenticação.
  • Somente JSON é aceito como um formato de resposta na nova Pesquisa de texto.
  • A Pesquisa de texto atual permite especificar coordenadas de latitude e longitude na string de consulta. Por exemplo, query=37.4239,-122.0925. Essa opção não é compatível com a nova Pesquisa de texto.

    Use a geocodificação inversa para pesquisar em coordenadas e retornar um endereço ou o Nearby Search (novo) para encontrar lugares em torno de um determinado local.

  • O formato da resposta JSON da API Text Search (New) mudou em relação ao formato das APIs atuais. Para mais detalhes, consulte Migrar a resposta da API Places.

A tabela a seguir lista parâmetros na pesquisa de texto atual que foram renomeados ou modificados para a nova pesquisa de texto ou que não são mais compatíveis.

Parâmetro atual Novo parâmetro Observações
evOptions Novo parâmetro.
language languageCode
location locationBias
maxprice/minprice priceLevels
opennow openNow
pagetoken pageToken
query textQuery Obrigatório em todas as solicitações.
radius locationBias Especifique o raio ao definir um locationBias.
region regionCode
type includedType Aceita apenas um valor.
strictTypeFiltering Novo parâmetro.

Exemplo de solicitação

O exemplo de solicitação GET a seguir usa a pesquisa de texto existente. Neste exemplo, você solicita uma resposta JSON contendo informações sobre "Spicy Vegetarian Food in Sydney, Australia" e transmite todos os parâmetros como parâmetros de URL:

curl -L -X GET \
'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY

Com a pesquisa de texto (nova), você faz uma solicitação POST e transmite todos os parâmetros no corpo da solicitação JSON ou nos cabeçalhos como parte da solicitação POST. Este exemplo também usa uma máscara de campo para que a resposta inclua apenas o nome de exibição e o endereço formatado do local:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \
'https://places.googleapis.com/v1/places:searchText'