บทนำ
รหัสสถานที่จะระบุสถานที่ในฐานข้อมูล Google Places และใน Google Maps โดยไม่ซ้ำกัน ระบบยอมรับรหัสสถานที่ในคำขอไปยัง Maps API ต่อไปนี้
- การดึงข้อมูลที่อยู่สำหรับรหัสสถานที่ใน Geocoding API และบริการการเข้ารหัสพิกัดภูมิศาสตร์, Maps JavaScript API
- การระบุจุดเริ่มต้น ปลายทาง และจุดอ้างอิงระดับกลางใน Routes API และ Directions API (เดิม) รวมถึงบริการเส้นทาง, Maps JavaScript API (เดิม)
- การระบุต้นทางและปลายทางใน Routes API และ Distance Matrix API (เดิม) และบริการเมทริกซ์ระยะทาง, Maps JavaScript API (เดิม)
- การดึงข้อมูลรายละเอียดสถานที่ใน Places API (ใหม่), Places SDK สำหรับ Android (ใหม่), Places SDK สำหรับ iOS (ใหม่) และ Places Library
- การใช้พารามิเตอร์รหัสสถานที่ใน Maps Embed API
- กำลังดึงข้อมูลคำค้นหาใน URL ของ Maps
- การแสดงขีดจำกัดความเร็วใน Roads API
- การค้นหาและการจัดรูปแบบรูปหลายเหลี่ยมขอบเขตในการจัดรูปแบบตามข้อมูลสำหรับขอบเขต
ค้นหารหัสของสถานที่ที่ต้องการ
คุณกำลังมองหารหัสสถานที่ของสถานที่ที่เฉพาะเจาะจงใช่ไหม ใช้เครื่องมือค้นหารหัสสถานที่ด้านล่างเพื่อค้นหาสถานที่และรับรหัส
หรือคุณจะดูเครื่องมือค้นหารหัสสถานที่พร้อมโค้ดในเอกสารประกอบของ Maps JavaScript API ก็ได้
ค้นหารหัสสถานที่จากโค้ดหรือ AI Agent
เครื่องมือค้นหารหัสสถานที่จะค้นหาสถานที่ได้ครั้งละ 1 แห่งในเบราว์เซอร์ หากต้องการค้นหารหัสสถานที่จากแอป สคริปต์ หรือ AI Agent ให้เรียกใช้ API แทน โดยทำดังนี้
- จากโค้ด:
เรียกใช้
Place.searchByText(ดูการค้นหาข้อความ (ใหม่)) และขอเฉพาะช่องidคำขอที่แสดงเฉพาะรหัสสถานที่จะเรียกเก็บเงินภายใต้ SKU Essentials ของการค้นหาข้อความใน Places API (รหัสเท่านั้น) - จาก AI Agent หรือแอป LLM: ใช้ Resolution API ในเครื่องมือ Maps Experience Agent เครื่องมือ MCP
resolve_namesและresolve_maps_urlsจะแปลงชื่อสถานที่ ที่อยู่ หรือ URL ของ Google Maps เป็นรหัสสถานที่ได้สูงสุด 20 รายการในแต่ละคำขอ วิธีการที่ใช้ได้จะเหมือนกับวิธีการ REST ของresolveNamesและresolveMapsUrls
ภาพรวม
รหัสสถานที่เป็นตัวระบุข้อความที่ระบุสถานที่โดยไม่ซ้ำกัน ความยาวของตัวระบุอาจแตกต่างกัน (ไม่มีความยาวสูงสุดสำหรับรหัสสถานที่) ตัวอย่าง
-
ChIJgUbEo8cfqokR5lP9_Wh_DaM -
GhIJQWDl0CIeQUARxks3icF8U8A -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E -
IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ
รหัสสถานที่มีให้บริการสำหรับสถานที่ส่วนใหญ่ ซึ่งรวมถึงธุรกิจ จุดสังเกต สวนสาธารณะ และทางแยก สถานที่หรือตำแหน่งเดียวกันอาจมีรหัสสถานที่ที่แตกต่างกันหลายรหัส รหัสสถานที่อาจเปลี่ยนแปลงเมื่อเวลาผ่านไป
คุณใช้รหัสสถานที่เดียวกันใน Places API และ API ของ Google Maps Platform หลายรายการได้ เช่น คุณสามารถใช้รหัสสถานที่เดียวกันเพื่ออ้างอิงสถานที่ใน Places API, Maps JavaScript API, Geocoding API, Maps Embed API และ Roads API
ดึงข้อมูลรายละเอียดสถานที่โดยใช้รหัสสถานที่
วิธีทั่วไปในการใช้รหัสสถานที่คือการค้นหาสถานที่โดยใช้ Places API หรือไลบรารี Places ใน Maps JavaScript API จากนั้นใช้รหัสสถานที่ที่แสดงผลเพื่อดึงข้อมูลรายละเอียดสถานที่ คุณสามารถจัดเก็บรหัสสถานที่และใช้เพื่อดึงข้อมูลรายละเอียดสถานที่เดียวกันในภายหลังได้ อ่านเกี่ยวกับการบันทึกรหัสสถานที่ได้ในส่วนถัดไปของเอกสารนี้
ตัวอย่างการใช้ Places Library ใน Maps JavaScript API
หากต้องการใช้รหัสสถานที่ในแอป JavaScript คุณต้องค้นหารหัสก่อน ซึ่งมีอยู่ใน PlaceResult ที่แสดงผลโดยการค้นหาสถานที่ หรือโดย getPlace() ในบริการการเติมสถานที่อัตโนมัติ (เดิม) จากนั้นคุณสามารถใช้รหัสสถานที่เพื่อค้นหารายละเอียดสถานที่ได้
var map; function initialize() { // Create a map centered in Pyrmont, Sydney (Australia). map = new google.maps.Map(document.getElementById('map'), { center: {lat: -33.8666, lng: 151.1958}, zoom: 15 }); // Search for Google's office in Australia. var request = { location: map.getCenter(), radius: '500', query: 'Google Sydney' }; var service = new google.maps.places.PlacesService(map); service.textSearch(request, callback); } // Checks that the PlacesServiceStatus is OK, and adds a marker // using the place ID and location from the PlacesService. function callback(results, status) { if (status == google.maps.places.PlacesServiceStatus.OK) { var marker = new google.maps.Marker({ map: map, place: { placeId: results[0].place_id, location: results[0].geometry.location } }); } } google.maps.event.addDomListener(window, 'load', initialize);
บันทึกรหัสสถานที่ไว้ใช้ในภายหลัง
รหัสสถานที่จะได้รับการยกเว้นจากข้อจำกัดการแคชที่ระบุไว้ในส่วนที่ 3.2.3(ข) ของข้อกำหนดในการให้บริการของ Google Maps Platform ดังนั้นคุณจึงจัดเก็บค่ารหัสสถานที่ไว้ใช้ในภายหลังได้
รีเฟรชรหัสสถานที่ที่จัดเก็บไว้
เนื่องจากรหัสสถานที่อาจเปลี่ยนแปลงเนื่องจากการอัปเดตในฐานข้อมูล Google Maps ทาง Google ขอแนะนำให้รีเฟรชรหัสสถานที่หากมีอายุมากกว่า 12 เดือน คุณสามารถรีเฟรชรหัสสถานที่ได้โดยไม่มีค่าใช้จ่ายด้วยการส่งคำขอรายละเอียดสถานที่โดยระบุเฉพาะช่อง place_id ในพารามิเตอร์ fields
การเรียกนี้จะทริกเกอร์ SKU รายละเอียดสถานที่ - การรีเฟรชรหัส
รหัสข้อผิดพลาดเมื่อใช้รหัสสถานที่
INVALID_REQUEST
รหัสสถานะ INVALID_REQUEST บ่งชี้ว่ารหัสสถานที่ที่ระบุไม่ถูกต้อง ระบบอาจแสดงผล INVALID_REQUEST เมื่อรหัสสถานที่มีการตัดให้สั้นลงหรือมีการแก้ไข และไม่ถูกต้องอีกต่อไป
NOT_FOUND
รหัสสถานะ NOT_FOUND บ่งชี้ว่ารหัสสถานที่ที่ระบุล้าสมัยแล้ว รหัสสถานที่จะล้าสมัยหากธุรกิจปิดหรือย้ายไปยังสถานที่ใหม่ นอกจากนี้ รหัสสถานที่อาจเปลี่ยนแปลงเนื่องจากการอัปเดตในฐานข้อมูล Google Maps ในกรณีเช่นนี้ สถานที่อาจได้รับรหัสสถานที่ใหม่ และรหัสเดิมจะแสดงผลลัพธ์เป็น NOT_FOUND
หากต้องการรีเฟรชผลลัพธ์ในกรณีที่รหัสสถานที่ไม่ถูกต้อง ให้จัดเก็บคำขอเดิมที่แสดงรหัสสถานที่แต่ละรหัสและส่งคำขออีกครั้งตามความจำเป็น โปรดทราบว่าระบบจะเรียกเก็บเงินสำหรับคำขอที่ออกใหม่ตาม SKU ที่เหมาะสม
รหัสสถานที่บางประเภทอาจทำให้เกิดการตอบกลับ NOT_FOUND ในบางครั้ง หรือ API อาจแสดงรหัสสถานที่อื่นในการตอบกลับ ประเภทรหัสสถานที่เหล่านี้ ได้แก่
- ที่อยู่ซึ่งไม่มีใน Google Maps เป็นที่อยู่ที่แน่นอน แต่เป็นการอนุมานจากช่วงของที่อยู่
- ส่วนของเส้นทางที่ยาว ซึ่งคำขอยังระบุเมืองหรือท้องถิ่นด้วย
- ทางแยก
- สถานที่ที่มีองค์ประกอบที่อยู่ประเภท
subpremise
รหัสเหล่านี้มักอยู่ในรูปแบบสตริงยาว (รหัสสถานที่ไม่จำกัดความยาวสูงสุด) เช่น
EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4