Migrer vers Text Search (nouveau)

L'API Places est compatible avec Text Search existant. Si vous connaissez l'API Text Search existante, la nouvelle version de Text Search apporte les modifications suivantes:

  • La nouvelle recherche Text Search utilise des requêtes HTTP POST. Transmettez des paramètres dans le corps de la requête ou dans des en-têtes dans une requête HTTP POST. En revanche, avec Text Search existant, vous transmettez les paramètres d'URL à l'aide d'une requête HTTP GET.
  • Vous devez masquer le champ. Vous devez spécifier les champs qui doivent être renvoyés 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 version de Text Search accepte les clés API et les jetons OAuth en tant que mécanisme d'authentification.
  • Seul le format JSON est accepté comme format de réponse dans la nouvelle fonctionnalité Text Search.
  • Text Search existant 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 nouvelle recherche textuelle.

    Utilisez le geocoding inversé pour effectuer une recherche à partir de coordonnées et renvoyer une adresse, ou la fonctionnalité Recherche à proximité (nouveau) pour trouver des lieux à proximité d'un lieu donné.

  • Le format de réponse JSON de l'API Text Search (New) a changé par rapport au format des API existantes. Pour en savoir plus, consultez Migrer la réponse de l'API Places.

Le tableau suivant répertorie les paramètres de Text Search existants qui ont été renommés ou modifiés pour la nouvelle fonctionnalité Text Search, ou ceux 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 Non compatible.
query textQuery Obligatoire dans toutes les requêtes.
radius locationBias Spécifiez le rayon lorsque vous définissez un élément 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 l'élément Text Search existant. Dans cet exemple, vous demandez une réponse JSON contenant des informations sur la "nourriture végétarienne épicée à Sydney, en 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 Text Search (New), 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 cette requête. 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'