Introduzione
Gli ID luogo identificano in modo unico un luogo nel database di Google Places e su Google Maps. Gli ID luogo sono accettati nelle richieste alle seguenti API di Google Maps:
- Recupero di un indirizzo per un ID luogo nell'API Geocoding e nel servizio Geocoding, API Maps JavaScript.
- Specifica dei waypoint di partenza, di destinazione e intermedi nell'API Routes e nell'API Directions (legacy) e nel servizio Directions, API Maps JavaScript (legacy).
- Specifica di origini e destinazioni nell'API Routes e nell'API Distance Matrix (legacy) e nel servizio Distance Matrix, API Maps JavaScript (legacy).
- Recupero dei dettagli del luogo nelle API Places (nuovo), SDK Places per Android (nuovo), SDK Places per iOS (nuovo) e libreria Places.
- Utilizzo dei parametri ID luogo nell'API Maps Embed.
- Recupero delle query di ricerca negli URL di Maps.
- Visualizzazione dei limiti di velocità nell'API Roads.
- Trovare e applicare stili ai poligoni dei confini negli stili basati sui dati per i confini.
Trovare l'ID di un luogo specifico
Stai cercando l'ID luogo di un luogo specifico? Utilizza lo strumento di ricerca degli ID luogo di seguito per cercare un luogo e ottenere il relativo ID:
In alternativa, puoi visualizzare il cercatore di ID luogo con il relativo codice nella documentazione dell'API Maps JavaScript.
Panoramica
Un ID luogo è un identificatore testuale che identifica in modo univoco un luogo. La lunghezza dell'identificatore può variare (non esiste una lunghezza massima per gli ID località). Esempi:
-
ChIJgUbEo8cfqokR5lP9_Wh_DaM -
GhIJQWDl0CIeQUARxks3icF8U8A -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E -
IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ
Gli ID luogo sono disponibili per la maggior parte delle località, tra cui attività, punti di riferimento, parchi e incroci. È possibile che lo stesso luogo o posizione abbia più ID luogo diversi. Gli ID luogo possono cambiare nel tempo.
Puoi utilizzare lo stesso ID luogo nell'API Places e in una serie di API di Google Maps Platform. Ad esempio, puoi utilizzare lo stesso ID luogo per fare riferimento a un luogo nell'API Places, nell'API Maps JavaScript, nell'API Geocoding, nell'API Maps Embed e nell'API Roads.
Recuperare i Place Details utilizzando l'ID luogo
Un modo comune per utilizzare gli ID luogo è cercare un luogo utilizzando l'API Places o la libreria Places nell'API Maps JavaScript. Quindi, utilizza l'ID luogo restituito per recuperare i dettagli del luogo. Puoi memorizzare l'ID luogo e utilizzarlo per recuperare in un secondo momento gli stessi dettagli del luogo. Scopri di più sul salvataggio degli ID luogo più avanti in questo documento.
Gli esempi seguenti mostrano come richiedere un URL dell'icona per l'API Places (New) e l'API Places (legacy).
API Places (Novità)
Utilizzando l'API Places, puoi trovare un ID luogo effettuando una richiesta di Ricerca testuale (nuova).
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 risposta include un ID luogo nel campo id, come mostrato di seguito:
{
"places": [
{
"id": "ChIJs5ydyTiuEmsR0fRSlU0C7k0",
"formattedAddress": "29 King St, Sydney NSW 2000, Australia",
"displayName": {
"text": "Peace Harmony",
"languageCode": "en"
}
},
...
}Ora puoi effettuare una richiesta Dettagli luogo (nuovo) includendo l'ID luogo nell'URL della richiesta:
https://places.googleapis.com/v1/places/ChIJs5ydyTiuEmsR0fRSlU0C7k0?fields=id,displayName&key=API_KEY
API Places (legacy)
Utilizzando l'API Places, puoi trovare un ID luogo eseguendo una richiesta di Place Search.
L'esempio seguente è una richiesta di ricerca di luoghi di tipo "ristorante" entro un raggio di 1500 metri da un punto di Sydney, in Australia, contenente la parola "crociera":
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 risposta include un ID luogo nel campo place_id, come
mostrato in questo snippet:
{
"html_attributions" : [],
"results" : [
{
"geometry" : {
"location" : {
"lat" : -33.870775,
"lng" : 151.199025
}
},
...
"place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0",
...
}
],
"status" : "OK"
}Ora puoi inviare una
richiesta Dettagli luogo (legacy),
inserendo l'ID luogo nel parametro place_id:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEYSalva gli ID luogo per utilizzarli in un secondo momento
Gli ID luogo sono esenti dalle limitazioni di memorizzazione nella cache indicate nella sezione 3.2.3(b) dei Termini di servizio di Google Maps Platform. Pertanto, puoi memorizzare i valori dell'ID luogo per utilizzarli in un secondo momento.
Aggiornare gli ID luogo memorizzati
Poiché gli ID luogo potrebbero cambiare a causa degli aggiornamenti del database di Google Maps, Google consiglia
di aggiornarli se risalgono a più di 12 mesi fa. Puoi aggiornare gli ID luogo senza
costi effettuando una
richiesta di Place Details, specificando solo il campo ID luogo
nel parametro fields.
API Places (Novità)
Ad esempio, utilizzando Dettagli luogo (novità):
https://places.googleapis.com/v1/places/ChIJ05IRjKHxEQ0RJLV_5NLdK2w?fields=id&key=API_KEY
API Places (legacy)
Ad esempio, utilizzando l'API Places (legacy):
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=API_KEY
Questa chiamata attiva lo SKU Place Detail New Essentials IDs Only o Places Details - ID Refresh.
Codici di errore durante l'utilizzo degli ID luogo
INVALID_REQUEST
Il codice di stato INVALID_REQUEST indica che l'ID luogo specificato non è valido. INVALID_REQUEST può essere restituito quando l'ID luogo è stato troncato o modificato in altro modo e non è più corretto.
NOT_FOUND
Il codice di stato NOT_FOUND indica che l'ID luogo specificato
è obsoleto. Un ID luogo può diventare obsoleto se un'attività chiude o si trasferisce in
una nuova sede. Gli ID luogo possono anche cambiare a causa di aggiornamenti del database di Google Maps. In questi casi, un luogo potrebbe ricevere un nuovo ID luogo e l'ID precedente restituisce una risposta NOT_FOUND.
Per aggiornare i risultati in caso di ID luogo obsoleto, memorizza la richiesta originale che ha restituito ogni ID luogo e inviala nuovamente se necessario. Tieni presente che la richiesta riemessa viene fatturata con lo SKU appropriato.
Alcuni tipi di ID luogo a volte possono causare una risposta NOT_FOUND oppure l'API può restituire un ID luogo diverso nella risposta. Questi tipi di ID luogo includono:
- Indirizzi che non esistono in Google Maps come indirizzi precisi, ma vengono dedotti da un intervallo di indirizzi.
- Segmenti di un percorso lungo, in cui la richiesta specifica anche una città o una località.
- Incroci.
- Luoghi con un componente di indirizzo di tipo
subpremise.
Questi ID spesso assumono la forma di una stringa lunga (non esiste una lunghezza massima per gli ID luogo). Ad esempio:
EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4