Cómo migrar a Nearby Search (nuevo)

La API de Places admite la API de Nearby Search. Si ya conoces la función de Nearby Search existente, la nueva versión de Nearby Search realiza los siguientes cambios:

  • La nueva Búsqueda de Nearby usa solicitudes HTTP POST. Pasa parámetros en el cuerpo de la solicitud o en los encabezados como parte de una solicitud HTTP POST. para cada solicitud. Por el contrario, con la búsqueda de Nearby, pasas parámetros de URL mediante una solicitud GET de HTTP.
  • El enmascaramiento de campo es obligatorio. Debes especificar qué campos quieres que se devuelvan en la respuesta. No hay una lista predeterminada de los campos que se muestran. Si omites esta lista, los métodos devuelven un error. Para obtener más información, consulta FieldMask.
  • La nueva función de Nearby Search admite Claves de API y OAuth tokens como el mecanismo de autenticación.
  • Solo se admite JSON como formato de respuesta en el nuevo Nearby Search.
  • Todas las solicitudes que incluyan una consulta de texto ahora deberían usar Text Search (nueva) porque Nearby Search (nuevo) no admite entradas de texto.
  • Formato de respuesta JSON para Nearby Search (nuevo) El formato de la API cambió. Para obtener más detalles, consulta Migra la respuesta de la API de Places.

En la siguiente tabla, se enumeran los parámetros de la Nearby Search que se renombra o modifica para el nueva de Nearby Search o parámetros que ya no son no es compatible.

Parámetro actual Parámetro nuevo Notas
keyword No compatible. Usa Text Search (nueva) en su lugar.
language languageCode
location locationRestriction Obligatorio.
maxprice/minprice No compatible.
maxResultCount Parámetro nuevo.
opennow No compatible.
pagetoken No compatible.
radius Usa locationRestriction ahora.
rankby rankPreference
regionCode Parámetro nuevo.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
Los parámetros nuevos también aceptan varios valores de tipo. La API existente solo acepta un único valor.

Ejemplo de solicitud

El siguiente ejemplo de solicitud GET usa el Nearby Search. En este ejemplo, solicitas un archivo JSON respuesta que contiene información sobre lugares de tipo restaurant y pasa todos 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'

Con Nearby Search (nuevo), puedes hacer una solicitud POST y Pasar todos los parámetros en el cuerpo de la solicitud JSON o en los encabezados como parte de la solicitud POST para cada solicitud. En este ejemplo, también se usa una máscara de campo para que la respuesta solo incluya el nombre visible y dirección con formato del 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