Migrar para o Nearby Search (novo)

A API Places oferece suporte à Pesquisa Nearby (legado). Se você já conhece o Nearby Search (legado), o Nearby Search (novo) faz as seguintes mudanças:

  • A nova Pesquisa nas proximidades 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 o Nearby Search (legado), 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 Pesquisa nas proximidades (nova) oferece suporte a chaves de API e tokens OAuth como mecanismo de autenticação.
  • Somente JSON é aceito como formato de resposta na Pesquisa por voz (nova).
  • Todas as solicitações que incluem uma consulta de texto agora precisam usar o Text Search (New), porque o Nearby Search (New) não oferece suporte à entrada de texto.
  • O formato da resposta JSON para a Pesquisa por proximidade (nova) mudou do formato das APIs legadas. Para mais detalhes, consulte Migrar a resposta da API Places.

A tabela a seguir lista parâmetros no Nearby Search (legado) que foram renomeados ou modificados para o Nearby Search (novo) ou que não têm mais suporte.

Parâmetro atual Novo parâmetro Observações
keyword Incompatível. Use a Pesquisa de texto (novo).
language languageCode
location locationRestriction Obrigatório.
maxprice/minprice Incompatível.
maxResultCount Novo parâmetro.
opennow Incompatível.
pagetoken Incompatível.
radius Use locationRestriction agora.
rankby rankPreference
regionCode Novo parâmetro.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
Os novos parâmetros também aceitam vários valores de tipo. A API legada só aceita um único valor.

Exemplo de solicitação

O exemplo de solicitação GET a seguir usa a Pesquisa por proximidade (legado). Neste exemplo, você solicita uma resposta JSON contendo informações sobre lugares do tipo restaurant e transmite todos os parâmetros como parâmetros de URL:

curl -L -X GET \
'https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=37.7937%2C-122.3965&radius=500&type=restaurant&key=API_KEY'

Com o Nearby Search (novo), você faz uma solicitação POST e transmite todos os parâmetros no corpo da solicitação JSON ou em 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 lugar:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965},
      "radius": 500.0
    }
  }
}' \
-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:searchNearby