Migrer vers Text Search (nouveau)

L'ancienne API Places est compatible avec Text Search (ancienne version). Si vous connaissez Text Search (ancienne version), Text Search (nouvelle version) apporte les modifications suivantes:

  • La recherche dans le texte (nouvelle) 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. En revanche, avec Text 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 recherche textuelle (nouvelle) est compatible à la fois 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 de texte (ancienne) 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 compatible avec la recherche textuelle (nouvelle interface).

    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 Text 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 Text Search (ancienne version) qui ont été renommés ou modifiés pour Text Search (nouvelle version), 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 (ancienne). Dans cet exemple, vous demandez une réponse JSON contenant des informations sur "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'