ID tempat secara unik mengidentifikasi tempat di database Google Places dan Google Maps. ID tempat diterima dalam permintaan ke Maps API berikut:
- Mengambil alamat untuk ID Tempat di layanan web Geocoding API dan Geocoding Service, Maps JavaScript API.
- Menentukan titik jalan asal, tujuan, dan perantara di layanan web Routes API dan Directions API serta Directions Service, Maps JavaScript API.
- Menentukan asal dan tujuan di layanan web Routes API dan Distance Matrix API serta Distance Matrix Service, Maps JavaScript API.
- Mengambil Place Details di layanan web Places API, Places SDK for Android, Places SDK for iOS, dan Places Library.
- Menggunakan parameter Place ID di Maps Embed API.
- Mengambil kueri penelusuran di URL Maps.
- Menampilkan batas kecepatan di Roads API.
- Menemukan dan menata gaya poligon batas dalam gaya visual berbasis data untuk batas.
Menemukan ID tempat tertentu
Anda mencari ID tempat tertentu? Gunakan pencari ID tempat di bawah ini untuk menelusuri tempat dan mendapatkan ID-nya:
Atau, Anda dapat melihat pencari ID tempat beserta kodenya dalam dokumentasi Maps JavaScript API.
Ringkasan
ID tempat adalah ID tekstual yang secara unik mengidentifikasi tempat. Panjang ID dapat bervariasi (tidak ada panjang maksimum untuk ID Tempat). Contoh:
-
ChIJgUbEo8cfqokR5lP9_Wh_DaM
-
GhIJQWDl0CIeQUARxks3icF8U8A
-
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
-
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E
-
IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ
ID Tempat tersedia untuk sebagian besar lokasi, termasuk lokasi bisnis, tempat terkenal, taman, dan persimpangan. Tempat atau lokasi yang sama dapat memiliki beberapa ID tempat yang berbeda. ID tempat dapat berubah seiring waktu.
Anda dapat menggunakan ID tempat yang sama di seluruh Places API dan sejumlah Google Maps Platform API. Misalnya, Anda dapat menggunakan ID tempat yang sama untuk mereferensikan tempat dalam Places API, Maps JavaScript API, Geocoding API, Maps Embed API, dan Roads API.
Mengambil detail tempat menggunakan ID tempat
Cara umum untuk menggunakan ID tempat adalah dengan menelusuri suatu tempat (menggunakan Places API atau Library Tempat di Maps JavaScript API, misalnya) lalu menggunakan ID tempat yang ditampilkan untuk mengambil detail tempat. Anda juga bisa menyimpan ID tempat dan menggunakannya untuk mengambil detail tempat yang sama nanti. Baca cara menyimpan ID tempat di bawah.
Contoh berikut menunjukkan cara meminta URL ikon untuk Places API (Baru) dan Places API.
Places API (Baru)
Dengan menggunakan Places API, Anda dapat menemukan ID tempat dengan melakukan Penelusuran Teks (Baru) permintaan.
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'
Responsnya menyertakan ID tempat di kolom id
, seperti yang ditunjukkan di bawah ini:
{ "places": [ { "id": "ChIJs5ydyTiuEmsR0fRSlU0C7k0", "formattedAddress": "29 King St, Sydney NSW 2000, Australia", "displayName": { "text": "Peace Harmony", "languageCode": "en" } }, ... }
Sekarang Anda dapat membuat Place Details (Baru) permintaan Anda dengan menyertakan ID tempat dalam URL permintaan:
https://places.googleapis.com/v1/places/ChIJs5ydyTiuEmsR0fRSlU0C7k0?fields=id,displayName&key=API_KEY
Places API
Dengan menggunakan Places API, Anda dapat menemukan ID tempat dengan melakukan Permintaan Place Search.
Contoh berikut adalah permintaan penelusuran tempat dengan jenis 'restaurant' dalam radius 1.500 m dari suatu titik di Sydney, Australia, yang berisi kata 'cruise':
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY
Responsnya menyertakan ID tempat di kolom place_id
, seperti
yang ditampilkan dalam cuplikan ini:
{ "html_attributions" : [], "results" : [ { "geometry" : { "location" : { "lat" : -33.870775, "lng" : 151.199025 } }, ... "place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0", ... } ], "status" : "OK" }
Sekarang Anda dapat mengirim
Permintaan Place Details,
menempatkan ID tempat dalam parameter place_id
:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEY
Menyimpan ID tempat untuk digunakan nanti
ID tempat dikecualikan dari pembatasan penyimpanan cache yang disebutkan di Pasal 3.2.3(b) dalam Persyaratan Layanan Google Maps Platform. Oleh karena itu, Anda dapat menyimpan nilai ID tempat untuk digunakan nanti.
Memperbarui ID tempat tersimpan
Sebaiknya perbarui ID tempat jika sudah lebih dari 12 bulan. Anda
dapat memperbarui ID Tempat tanpa biaya, dengan melakukan
Permintaan Place Details, yang hanya menentukan ID tempat
di parameter fields
.
Places API (Baru)
Misalnya, menggunakan Place Details (Baru):
https://places.googleapis.com/v1/places/ChIJ05IRjKHxEQ0RJLV_5NLdK2w?fields=id&key=API_KEY
Places API
Misalnya, menggunakan API Place Details lama:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=API_KEY
Permintaan ini mungkin juga menampilkan status NOT_FOUND
pada kode sumber. Salah satu strateginya adalah dengan menyimpan permintaan asli yang menampilkan setiap ID tempat. Jika ID tempat menjadi tidak valid, Anda dapat menerbitkan ulang permintaan tersebut untuk mendapatkan hasil yang baru. Hasil ini mungkin menyertakan atau tidak menyertakan tempat asli. Namun, permintaan ini
dapat dikenakan biaya.
Kode error saat menggunakan ID tempat
Kode status INVALID_REQUEST
menunjukkan bahwa ID tempat yang ditentukan tidak valid. INVALID_REQUEST
dapat ditampilkan jika ID tempat terpotong atau diubah, dan tidak lagi tepat.
Kode status NOT_FOUND
menunjukkan bahwa ID tempat yang ditentukan sudah tidak digunakan lagi. ID tempat mungkin sudah tidak berlaku jika bisnis tutup atau pindah ke lokasi baru. ID Tempat dapat berubah karena pembaruan skala besar pada database Google Maps. Dalam kasus seperti itu, tempat dapat menerima ID tempat baru, dan ID lama akan menampilkan respons NOT_FOUND
.
Secara khusus, beberapa jenis ID tempat terkadang dapat menyebabkan respons NOT_FOUND
, atau API dapat menampilkan ID tempat yang berbeda dalam respons. Jenis ID tempat ini meliputi:
- Alamat yang tidak ada di Google Maps sebagai alamat akurat, tetapi diambil dari rentang alamat.
- Segmen dari rute yang panjang, dengan permintaan juga menentukan kota atau lokalitas.
- Persimpangan.
- Tempat dengan komponen alamat jenis
subpremise
.
ID ini sering berbentuk string panjang (tidak ada panjang maksimum untuk ID Tempat). Contoh:
EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4