รหัสสถานที่

เลือกแพลตฟอร์ม: Android iOS JavaScript เว็บเซอร์วิส
นักพัฒนาซอฟต์แวร์ในเขตเศรษฐกิจยุโรป (EEA)

บทนำ

รหัสสถานที่จะระบุสถานที่ในฐานข้อมูล 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 แทน โดยทำดังนี้

ภาพรวม

รหัสสถานที่เป็นตัวระบุข้อความที่ระบุสถานที่โดยไม่ซ้ำกัน ความยาวของตัวระบุอาจแตกต่างกัน (ไม่มีความยาวสูงสุดสำหรับรหัสสถานที่) ตัวอย่าง

  • 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 จากนั้นใช้รหัสสถานที่ที่แสดงผลเพื่อดึงข้อมูลรายละเอียดสถานที่ คุณสามารถจัดเก็บรหัสสถานที่และใช้เพื่อดึงข้อมูลรายละเอียดสถานที่เดียวกันในภายหลังได้ อ่านเกี่ยวกับการบันทึกรหัสสถานที่ได้ในส่วนถัดไปของเอกสารนี้

ตัวอย่างต่อไปนี้แสดงวิธีขอ URL ไอคอนสำหรับ Places API (ใหม่) และ Places API (เดิม)

Places API (ใหม่)

เมื่อใช้ Places API คุณจะค้นหารหัสสถานที่ได้โดยส่งคำขอการค้นหาข้อความ (ใหม่)

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'

การตอบกลับจะมีรหัสสถานที่ในฟิลด์ id ดังที่แสดงด้านล่าง

{
  "places": [
    {
      "id": "ChIJs5ydyTiuEmsR0fRSlU0C7k0",
      "formattedAddress": "29 King St, Sydney NSW 2000, Australia",
      "displayName": {
        "text": "Peace Harmony",
        "languageCode": "en"
      }
    },
  ...
}

ตอนนี้คุณสามารถส่งคำขอรายละเอียดสถานที่ (ใหม่) โดยใส่รหัสสถานที่ใน URL คำขอได้แล้ว

https://places.googleapis.com/v1/places/ChIJs5ydyTiuEmsR0fRSlU0C7k0?fields=id,displayName&key=API_KEY

Places API (เดิม)

เมื่อใช้ Places API คุณจะค้นหารหัสสถานที่ได้โดยส่งคำขอการค้นหาสถานที่

ตัวอย่างต่อไปนี้เป็นคำขอค้นหาสถานที่ประเภท "ร้านอาหาร" ภายในรัศมี 1,500 เมตรจากจุดหนึ่งในซิดนีย์ ประเทศออสเตรเลีย ซึ่งมีคำว่า "ล่องเรือ"

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY

การตอบกลับจะมีรหัสสถานที่ในช่อง place_id ดังที่แสดงในข้อมูลโค้ดนี้

{
  "html_attributions" : [],
  "results" : [
    {
      "geometry" : {
        "location" : {
          "lat" : -33.870775,
          "lng" : 151.199025
        }
      },
      ...
      "place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0",
      ...
    }
  ],
  "status" : "OK"
}

ตอนนี้คุณสามารถส่งคำขอรายละเอียดสถานที่ (เดิม) โดยใส่รหัสสถานที่ในพารามิเตอร์ place_id ได้แล้ว

https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEY

บันทึกรหัสสถานที่ไว้ใช้ในภายหลัง

รหัสสถานที่จะได้รับการยกเว้นจากข้อจำกัดการแคชที่ระบุไว้ในส่วนที่ 3.2.3(ข) ของข้อกำหนดในการให้บริการของ Google Maps Platform ดังนั้นคุณจึงจัดเก็บค่ารหัสสถานที่ไว้ใช้ในภายหลังได้

รีเฟรชรหัสสถานที่ที่จัดเก็บไว้

เนื่องจากรหัสสถานที่อาจเปลี่ยนแปลงเนื่องจากการอัปเดตในฐานข้อมูล Google Maps ทาง Google ขอแนะนำให้รีเฟรชรหัสสถานที่หากมีอายุมากกว่า 12 เดือน คุณสามารถรีเฟรชรหัสสถานที่ได้โดยไม่มีค่าใช้จ่ายด้วยการส่งคำขอรายละเอียดสถานที่ โดยระบุเฉพาะช่องรหัสสถานที่ในพารามิเตอร์ fields

Places API (ใหม่)

เช่น การใช้รายละเอียดสถานที่ (ใหม่)

https://places.googleapis.com/v1/places/ChIJ05IRjKHxEQ0RJLV_5NLdK2w?fields=id&key=API_KEY

Places API (เดิม)

เช่น การใช้ Places API (เดิม)

https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=API_KEY

การเรียกนี้จะทริกเกอร์ 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