Cómo migrar a Nearby Search (nuevo)

Desarrolladores del Espacio Económico Europeo (EEE)

Introducción

La API de Places admite Nearby Search (Legacy). Si conoces Nearby Search (Legacy), el Nearby Search (New) realiza los siguientes cambios:

  • Nearby Search (New) usa solicitudes HTTP POST. Pasa parámetros en el cuerpo de la solicitud o en los encabezados como parte de una solicitud HTTP POST request. Por el contrario, con Nearby Search (heredado), pasas parámetros de URL con una solicitud GET HTTP.
  • Se requiere el enmascaramiento de campos. Debes especificar qué campos quieres que se muestren en la respuesta. No hay una lista predeterminada de campos que se muestran. Si omites esta lista, los métodos mostrarán un error. Para obtener más información, consulta FieldMask.
  • Nearby Search (New) admite claves de API y OAuth como mecanismo de autenticación.
  • Solo se admite JSON como formato de respuesta en Nearby Search (New).
  • Todas las solicitudes que incluyen una consulta de texto ahora deben usar Text Search (New) ya que Nearby Search (New) no admite la entrada de texto.
  • El formato de respuesta JSON para Nearby Search (New) cambió con respecto al formato de las APIs heredadas. Para obtener más detalles, consulta Cómo migrar la respuesta de la API de Places.

En la siguiente tabla, se enumeran los parámetros de Nearby Search (Legacy) que se cambiaron de nombre o se modificaron para Nearby Search (New), o los parámetros que ya no son compatibles.

Parámetro actual Parámetro nuevo Notas
keyword No admitido. En su lugar, usa Text Search (New).
language languageCode
location locationRestriction Obligatorio.
maxprice/minprice No admitido.
maxResultCount Parámetro nuevo.
opennow No admitido.
pagetoken No admitido.
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 heredada solo acepta un valor.

Ejemplo de solicitud

En el siguiente ejemplo de solicitud GET, se usa Nearby Search (Legacy). En este ejemplo, solicitas una respuesta JSON que contiene información sobre lugares de tipo restaurant y pasas todos los 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'

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