A API Places é compatível com a Nearby Search já existente. Se você já conhece a Pesquisa por perto, a nova versão faz as seguintes mudanças:
- A nova Pesquisa nas proximidades usa solicitações HTTP POST. Transmita parâmetros no corpo da solicitação ou nos cabeçalhos como parte de uma solicitação POST HTTP. Por outro lado, com o Nearby Search existente, 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 nas proximidades oferece suporte a chaves de API e tokens OAuth como mecanismo de autenticação.
- Somente JSON é aceito como formato de resposta no novo Nearby Search.
- Todas as solicitações que incluem uma consulta de texto agora precisam usar o Text Search (novo), porque o Nearby Search (novo) não tem suporte para entrada de texto.
- O formato da resposta JSON da API Nearby 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 Próxima que foram renomeados ou modificados para a nova Pesquisa Próximos ou que não são mais compatíveis.
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 atual só aceita um único valor. |
Exemplo de solicitação
O exemplo de solicitação GET a seguir usa a Pesquisa por perto. Neste exemplo, você solicita uma resposta JSON com informações sobre locais 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 passa todos os parâmetros no corpo da solicitação JSON ou nos cabeçalhos como parte dela. 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 '{ "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