Migrer vers la recherche à proximité (nouveau)

Développeurs de l'Espace économique européen (EEE)

Introduction

L'API Places est compatible avec Nearby Search (ancienne version). Si vous connaissez Nearby Search (ancienne version), sachez que Nearby Search (nouveau) apporte les modifications suivantes :

  • La nouvelle recherche à proximité utilise des requêtes HTTP POST. Transmettez les paramètres dans le corps ou les en-têtes de la requête dans le cadre d'une requête HTTP POST. En revanche, avec Nearby Search (ancienne version), vous transmettez les paramètres d'URL à l'aide d'une requête HTTP GET.
  • Le masquage de champ est obligatoire. Vous devez spécifier les champs que vous souhaitez renvoyer dans la réponse. Il n'existe pas de liste par défaut des champs renvoyés. Si vous omettez cette liste, les méthodes renvoient une erreur. Pour en savoir plus, consultez FieldMask.
  • La nouvelle recherche à proximité est compatible avec les clés API et les jetons OAuth comme mécanisme d'authentification.
  • Seul le format JSON est accepté comme format de réponse dans la nouvelle recherche à proximité.
  • Toutes les requêtes qui incluent une requête textuelle doivent désormais utiliser Text Search (New), car Nearby Search (New) n'accepte pas les entrées de texte.
  • Le format de réponse JSON pour Nearby Search (New) a changé par rapport à celui des anciennes API. Pour en savoir plus, consultez Migrer la réponse de l'API Places.

Le tableau suivant liste les paramètres de la recherche à proximité (ancienne version) qui ont été renommés ou modifiés pour la recherche à proximité (nouvelle version), ou les paramètres qui ne sont plus compatibles.

Paramètre actuel Nouveau paramètre Remarques
keyword Non compatible. Utilisez plutôt Text Search (nouvelle version).
language languageCode
location locationRestriction Obligatoire.
maxprice/minprice Non compatible.
maxResultCount Nouveau paramètre.
opennow Non compatible.
pagetoken Non compatible.
radius Utiliser locationRestriction
rankby rankPreference
regionCode Nouveau paramètre.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
Les nouveaux paramètres acceptent également plusieurs valeurs de type. L'ancienne API n'accepte qu'une seule valeur.

Exemple de requête

L'exemple de requête GET suivant utilise la recherche à proximité (ancienne version). Dans cet exemple, vous demandez une réponse JSON contenant des informations sur les lieux de type restaurant et transmettez tous les paramètres en tant que paramètres d'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'

Avec Nearby Search (nouveau), vous effectuez une requête POST et transmettez tous les paramètres dans le corps de la requête JSON ou dans les en-têtes dans le cadre de la requête POST. Cet exemple utilise également un masque de champ pour que la réponse n'inclue que le nom à afficher et l'adresse formatée du lieu :

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