L'API Places est compatible avec la recherche à proximité existante. Si vous connaissez la version actuelle de Nearby Search, la nouvelle version de Nearby Search apporte les modifications suivantes:
- La nouvelle recherche à proximité utilise des requêtes HTTP POST. Transmettez des paramètres dans le corps de la requête ou dans les en-têtes dans le cadre d'une requête HTTP POST. À l'inverse, avec la recherche à proximité existante, 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 la section FieldMask.
- La nouvelle recherche à proximité est compatible avec les clés API et les 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'est pas compatible avec la saisie de texte.
- Le format de réponse JSON de l'API Nearby Search (New) a changé par rapport à celui des API existantes. Pour en savoir plus, consultez la section Migrer la réponse de l'API Places.
Le tableau suivant liste les paramètres de la recherche à proximité existante qui ont été renommés ou modifiés pour la nouvelle recherche à proximité, ou les paramètres qui ne sont plus acceptés.
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 |
|
Utilisez locationRestriction dès maintenant. |
rankby |
rankPreference |
|
regionCode |
Nouveau paramètre. | |
type |
includedTypes excludedTypes includedPrimaryTypes excludedPrimaryTypes
|
Les nouveaux paramètres acceptent également plusieurs valeurs de type. L'API existante n'accepte qu'une seule valeur. |
Exemple de requête
L'exemple de requête GET suivant utilise la recherche à proximité existante. 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 de la requête POST. Cet exemple utilise également un masque de champ afin 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