L'API Places est compatible avec la recherche dans le texte existante. Si vous connaissez la version actuelle de Text Search, la nouvelle version de Text Search apporte les modifications suivantes:
- La nouvelle recherche dans le texte utilise des requêtes HTTP POST. Transmettez les paramètres dans le corps de la requête ou dans les en-têtes dans le cadre d'une requête POST HTTP. À l'inverse, avec la recherche textuelle 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 textuelle 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 textuelle.
La recherche textuelle existante vous permet de spécifier des coordonnées de latitude et de longitude dans la chaîne de requête. Exemple :
query=37.4239,-122.0925
. Cette option n'est pas disponible dans la nouvelle recherche textuelle.Utilisez le geocoding inversé pour rechercher des coordonnées et afficher une adresse, ou Nearby Search (nouveau) pour trouver des lieux à proximité d'un emplacement donné.
- Le format de réponse JSON de l'API Text 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 textuelle existante qui ont été renommés ou modifiés pour la nouvelle recherche textuelle, ou les paramètres qui ne sont plus acceptés.
Paramètre actuel | Nouveau paramètre | Remarques |
---|---|---|
evOptions |
Nouveau paramètre. | |
language |
languageCode |
|
location |
locationBias |
|
maxprice/minprice |
priceLevels |
|
opennow |
openNow |
|
pagetoken |
pageToken |
|
query |
textQuery |
Obligatoire pour toutes les requêtes. |
radius |
locationBias |
Spécifiez le rayon lorsque vous définissez un locationBias . |
region |
regionCode |
|
type |
includedType |
N'accepte qu'une seule valeur. |
strictTypeFiltering |
Nouveau paramètre. |
Exemple de requête
L'exemple de requête GET suivant utilise la recherche de texte existante. Dans cet exemple, vous demandez une réponse JSON contenant des informations sur "Spicy Vegetarian Food in Sydney, Australia" (Nourriture végétarienne épicée à Sydney, Australie) et transmettez tous les paramètres en tant que paramètres d'URL:
curl -L -X GET \ 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY
Avec la recherche textuelle (nouvelle), 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 '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -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:searchText'