Les ID de lieu identifient de façon unique un lieu dans la base de données Google Places et sur Google Maps. Ils sont acceptés dans les requêtes envoyées aux API Google Maps suivantes :
- Obtenir l'adresse d'un ID de lieu dans le service Web de l'API Geocoding et dans le service Geocoding de l'API Maps JavaScript
- Spécifier les points de cheminement de départ, de destination et intermédiaires dans le service Web de l'API Routes et de l'API Directions, et dans le service Directions de l'API Maps JavaScript
- Spécifier des points de départ et de destination dans le service Web de l'API Routes et de l'API Distance Matrix, et dans le service Distance Matrix de l'API Maps JavaScript
- Obtenir des détails sur un lieu dans le service Web de l'API Places, le SDK Places pour Android, le SDK Places pour iOS et la bibliothèque Places
- utiliser des paramètres d'ID de lieu dans l'API Maps Embed ;
- récupérer des requêtes de recherche dans les URL Maps ;
- Afficher les limites de vitesse dans l'API Roads.
- Rechercher et styliser des polygones de limite dans les styles basés sur les données pour les limites.
Rechercher l'ID d'un lieu spécifique
Vous recherchez l'ID de lieu d'un endroit spécifique ? Utilisez l'outil de recherche d'ID de lieu ci-dessous pour rechercher un lieu et son ID :
Vous pouvez également afficher l'outil de recherche d'ID de lieu avec son code dans la documentation de l'API Maps JavaScript.
Présentation
Un ID de lieu est un identifiant texte qui identifie un lieu de façon unique. La longueur de l'identifiant peut varier (il n'y a pas de longueur maximale pour les ID de lieu). Exemples :
-
ChIJgUbEo8cfqokR5lP9_Wh_DaM
-
GhIJQWDl0CIeQUARxks3icF8U8A
-
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
-
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E
-
IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ
Des ID de lieu sont disponibles pour la plupart des points géographiques, y compris ceux qui correspondent à des entreprises, des points de repère, des parcs et des intersections. Un même endroit peut avoir plusieurs ID de lieu différents. Les ID de lieu peuvent changer au fil du temps.
Vous pouvez utiliser le même ID de lieu dans l'API Places et plusieurs API Google Maps Platform. Par exemple, vous pouvez utiliser le même ID de lieu pour référencer un lieu dans l'API Places, l'API Maps JavaScript, l'API Geocoding, l'API Maps Embed et l'API Roads.
Obtenir des détails sur un lieu à l'aide de l'ID de lieu
Les ID de lieu sont souvent utilisés pour rechercher un lieu (à l'aide de l'API Places ou de la bibliothèque Places de l'API Maps JavaScript, par exemple). L'ID renvoyé vous permet ensuite d'obtenir des détails sur le lieu. Vous pouvez stocker l'ID de lieu et l'utiliser pour extraire des détails sur ce même lieu ultérieurement. Découvrez comment enregistrer des ID de lieu ci-dessous.
Les exemples suivants montrent comment demander une URL d'icône pour l'API Places (nouvelle) et l'API Places.
API Places (New)
Avec l'API Places, vous pouvez trouver un ID de lieu en effectuant une requête Text Search (New) (Recherche de texte (nouvelle version)).
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.id,places.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'
La réponse inclut un ID de lieu dans le champ id
, comme illustré ci-dessous:
{ "places": [ { "id": "ChIJs5ydyTiuEmsR0fRSlU0C7k0", "formattedAddress": "29 King St, Sydney NSW 2000, Australia", "displayName": { "text": "Peace Harmony", "languageCode": "en" } }, ... }
Vous pouvez désormais envoyer une requête Place Details (New) (Informations sur le lieu (nouveau)) en incluant l'ID de lieu dans l'URL de la requête:
https://places.googleapis.com/v1/places/ChIJs5ydyTiuEmsR0fRSlU0C7k0?fields=id,displayName&key=API_KEY
API Places
Avec l'API Places, vous pouvez trouver un ID de lieu en effectuant une requête Place Search.
L'exemple suivant est une requête de recherche de lieux de type "restaurant" dans un rayon de 1 500 m d'un point à Sydney, en Australie, contenant le mot "croisière":
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY
La réponse inclut un ID de lieu dans le champ place_id
, comme illustré dans cet extrait:
{ "html_attributions" : [], "results" : [ { "geometry" : { "location" : { "lat" : -33.870775, "lng" : 151.199025 } }, ... "place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0", ... } ], "status" : "OK" }
Vous pouvez maintenant envoyer une requête Place Details en incluant l'ID de lieu dans le paramètre place_id
:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEY
Enregistrer des ID de lieu pour une utilisation ultérieure
Les ID de lieu ne sont pas soumis aux restrictions de mise en cache stipulées dans la section 3.2.3(b) des conditions d'utilisation de Google Maps Platform. Vous pouvez donc stocker des ID de lieu pour les utiliser ultérieurement.
Actualiser les ID de lieu stockés
Nous vous recommandons d'actualiser les ID de lieu s'ils datent de plus de 12 mois. Vous pouvez actualiser les ID de lieu sans frais en effectuant une requête Place Details, en ne spécifiant que le champ d'identifiant de lieu dans le paramètre fields
.
API Places (New)
Par exemple, avec Place Details (New) (Informations sur un lieu (nouveau)) :
https://places.googleapis.com/v1/places/ChIJ05IRjKHxEQ0RJLV_5NLdK2w?fields=id&key=API_KEY
API Places
Par exemple, en utilisant l'ancienne API Place Details:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=API_KEY
Cette requête peut également renvoyer le code d'état NOT_FOUND
. Une stratégie possible consiste à stocker la requête d'origine qui a renvoyé chaque ID de lieu. Vous pourrez ainsi relancer cette requête pour obtenir des résultats actualisés s'il s'avère qu'un ID de lieu n'est plus valide. Ces résultats peuvent inclure ou non le lieu d'origine. Toutefois, cette requête est facturable.
Codes d'erreur lors de l'utilisation d'ID de lieu
Le code d'état INVALID_REQUEST
indique que l'ID de lieu spécifié n'est pas valide. INVALID_REQUEST
peut être renvoyé lorsque l'ID de lieu a été tronqué ou modifié et n'est plus correct.
Le code d'état NOT_FOUND
indique que l'ID de lieu spécifié est obsolète. Un ID de lieu peut devenir obsolète si un établissement ferme ou déménage. Les ID de lieu peuvent changer en raison de modifications de la base de données Google Maps. Dans ce cas, un lieu peut recevoir un nouvel ID, et l'ancien ID renvoie une réponse NOT_FOUND
.
En particulier, certains types d'ID de lieu peuvent parfois déclencher une réponse NOT_FOUND
, ou bien l'API peut renvoyer un ID de lieu différent dans la réponse. Ces types d'ID de lieu incluent :
- les adresses postales qui n'existent pas dans Google Maps en tant qu'adresses précises, mais qui sont déduites d'une plage d'adresses ;
- les segments d'un long itinéraire, où la requête spécifie également une ville ou une localité ;
- les intersections ;
- les lieux avec un composant d'adresse de type
subpremise
.
Ces ID se présentent souvent sous la forme d'une longue chaîne (il n'y a pas de longueur maximale pour les ID de lieu). Exemple :
EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4