ค้นหาจุดหมาย

นักพัฒนาซอฟต์แวร์ในเขตเศรษฐกิจยุโรป (EEA)

A Destination หมายถึงจุดที่น่าสนใจหรือสถานที่ตั้งที่เฉพาะเจาะจงซึ่งผู้ใช้ ต้องการไปถึงหรือนำทางไป Destination อาจมีข้อมูล เช่น จุดนำทาง สถานที่สำคัญ ทางเข้า และโครงร่างอาคาร

ปลายทาง SearchDestinations ของ Geocoding API ช่วยให้คุณดึงข้อมูลโดยละเอียดเกี่ยวกับ จุดหมายต่างๆ ตามเกณฑ์การป้อนข้อมูลที่แตกต่างกัน เช่น ที่อยู่ รหัสสถานที่ หรือพิกัดละติจูดและลองจิจูด

คำขอค้นหาจุดหมาย

คำขอค้นหาสถานที่ คือคำขอ HTTP POST ไปยัง URL ในรูปแบบต่อไปนี้

https://geocode.googleapis.com/v4beta/geocode/destinations

ส่งพารามิเตอร์ทั้งหมดในเนื้อหาคำขอ JSON หรือในส่วนหัวโดยเป็นส่วนหนึ่งของคำขอ POST เช่น

curl -X POST -d '{
  "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4beta/geocode/destinations

คุณระบุสถานที่เพื่อค้นหาปลายทางได้ 3 วิธีดังนี้

  • ที่อยู่
  • รหัสสถานที่
  • พิกัดละติจูดและลองจิจูด

ค้นหาจุดหมายตามที่อยู่

คุณระบุที่อยู่เป็นสตริงที่ไม่มีโครงสร้างได้ การแปลงที่อยู่เป็นพิกัดทางภูมิศาสตร์จะไม่ แปลงพิกัดละติจูดและลองจิจูด หรือสตริงที่ไม่มีโครงสร้างอื่นๆ ซึ่งไม่ได้แสดงถึงที่อยู่ ระบบไม่รองรับคำขอที่ใช้สตริงดังกล่าว และอาจทำให้เกิดการตอบกลับข้อผิดพลาดหรือลักษณะการทำงานที่ไม่ได้ระบุ ตัวอย่างคำค้นหาที่ไม่รองรับมีดังนี้

ประเภทคำค้นหา ตัวอย่าง
พิกัดละติจูดและลองจิจูด โปรดใช้คําค้นหาสถานที่แทน "37.422131,-122.084801"
แนวคิดหรือข้อจำกัดมากเกินไป เช่น ชื่อสถานที่ ถนน หรือเมืองหลายแห่งในการค้นหาครั้งเดียว "Market Street San Francisco San Jose Airport"
องค์ประกอบที่อยู่ไปรษณีย์ที่ไม่ได้แสดงใน Google Maps "C/O John Smith 123 Main Street"
"P.O. Box 13 San Francisco"
ชื่อของธุรกิจ เครือข่าย หรือหมวดหมู่ที่รวมกับสถานที่ตั้งที่ไม่มีเอนทิตีเหล่านี้ "Tesco ใกล้แดลลัส รัฐเท็กซัส"
คำค้นหาที่คลุมเครือซึ่งตีความได้หลายแบบ "การส่งคืนที่ชาร์จ"
ชื่อเดิมที่ไม่ได้ใช้แล้ว "Middlesex สหราชอาณาจักร"
องค์ประกอบหรือเจตนาที่ไม่ใช่เชิงพื้นที่ "ท่าเรือเวนทูรามีเรือกี่ลำ"
ชื่อที่ไม่เป็นทางการหรือชื่อที่ตั้งขึ้นเอง "The Jenga"
"The Helter Skelter"
หน่วยงานทางการเมืองขนาดใหญ่ (เมือง รัฐ ประเทศ) "นครนิวยอร์ก"
"แคลิฟอร์เนีย"
"สหรัฐอเมริกา"
เส้นทางที่ไม่มีที่อยู่ที่เฉพาะเจาะจง "1st Ave., NYC, NY"
"I-95"
curl -X POST -d '{
  "addressQuery": {
    "addressQuery": "601 S Bernardo Ave, Sunnyvale, CA 94087, USA"
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4beta/geocode/destinations

หรือเป็น postalAddress

curl -X POST -d '{
  "addressQuery": {
    "address": {
      "addressLines": ["601 S Bernardo Ave"],
      "locality": "Sunnyvale",
      "postalCode": "94087",
      "administrativeArea": "CA",
      "regionCode": "US"
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4beta/geocode/destinations

โดยปกติแล้วคุณจะใช้รูปแบบ postalAddress เมื่อประมวลผลคอมโพเนนต์ที่อยู่ที่บันทึกไว้ในแบบฟอร์ม HTML

ค้นหาจุดหมายตามรหัสสถานที่

คุณสามารถดึงข้อมูลปลายทางได้โดยระบุรหัสสถานที่

curl -X POST -d '{
  "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4beta/geocode/destinations

รหัสสถานที่ที่รองรับ

ปลายทาง Search Destinations ทำงานได้ดีที่สุดกับรหัสสถานที่ที่แสดงถึง จุดหมายที่เฉพาะเจาะจงและนำทางได้

โดยทั่วไปแล้ว ระบบจะรองรับรหัสสถานที่สำหรับประเภทต่างๆ เช่น establishment, point_of_interest, premise, street_address และ subpremise

ระบบไม่รองรับรหัสสถานที่ที่ไม่ได้แสดงถึงสถานที่ที่แยกจากกัน เช่น รหัสที่อนุมานจาก ช่วงที่อยู่ (เช่น "10-20 Main St") ส่วนของเส้นทางที่ไม่มี หมายเลขที่เฉพาะเจาะจง หรือ Plus Code

หากต้องการให้มั่นใจว่าใช้งานร่วมกันได้เมื่อใช้ Place Autocomplete เพื่อค้นหารหัสสถานที่ ให้ลองกรองผลลัพธ์ตามประเภท คุณใช้พารามิเตอร์ includedPrimaryTypes ในคำขอเติมข้อความอัตโนมัติเพื่อรวมเฉพาะประเภทที่รองรับ ที่ระบุไว้ข้างต้นได้

"includedPrimaryTypes": [ "establishment", "point_of_interest", "premise", "street_address", "subpremise" ]

เพื่อให้มั่นใจว่ารหัสสถานที่ที่ฟีเจอร์เติมข้อความอัตโนมัติของสถานที่ส่งคืนมาจะเข้ากันได้มากที่สุดกับเมธอด Search Destinations โปรดทราบว่า establishmentประเภทนี้เป็นประเภทกว้าง แม้ว่าตัวกรองนี้จะจำเป็นต่อการบันทึกสถานที่ตั้งของธุรกิจจำนวนมาก แต่ก็อาจรวมผลลัพธ์การเติมข้อความอัตโนมัติของสถานที่สำหรับประเภท natural_feature ซึ่งมีการรองรับแบบจำกัดในปลายทางของ Search

ค้นหาจุดหมายตามสถานที่ตั้ง

คุณค้นหาจุดหมายได้โดยระบุพิกัดละติจูดและลองจิจูด ดังนี้

curl -X POST -d '{
  "locationQuery": {
    "location": {
      "latitude": 37.37348780,
      "longitude": -122.05678064
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4beta/geocode/destinations

ใช้ OAuth เพื่อสร้างคำขอ

Geocoding API v4 รองรับ OAuth 2.0 สำหรับการตรวจสอบสิทธิ์ หากต้องการใช้ OAuth กับ Geocoding API คุณต้องกำหนดขอบเขตที่ถูกต้องให้กับโทเค็น OAuth Geocoding API รองรับขอบเขตต่อไปนี้เพื่อใช้กับปลายทาง Destinations

  • https://www.googleapis.com/auth/maps-platform.geocode — ใช้กับปลายทาง Geocoding API ทั้งหมด

นอกจากนี้ คุณยังใช้ขอบเขตทั่วไป https://www.googleapis.com/auth/cloud-platform สำหรับปลายทาง Geocoding API ทั้งหมดได้ด้วย ขอบเขตดังกล่าวมีประโยชน์ในระหว่างการพัฒนา แต่ไม่ใช่ในเวอร์ชันที่ใช้งานจริง เนื่องจากเป็นขอบเขตทั่วไปที่อนุญาตให้เข้าถึงปลายทางทั้งหมด

ดูข้อมูลและตัวอย่างเพิ่มเติมได้ที่ใช้ OAuth

การตอบกลับการค้นหาจุดหมาย

การตอบกลับของปลายทางใน Search จะให้บริบทที่สมบูรณ์และเฉพาะเจาะจงเกี่ยวกับ สถานที่ตั้ง

ส่วนนี้อธิบายฟิลด์การตอบกลับที่สำคัญ ดูรายละเอียดทั้งหมดเกี่ยวกับฟิลด์การตอบกลับทั้งหมดได้ในเอกสารอ้างอิง API

primary

สถานที่หลักที่ระบุโดยการค้นหาในคำขอ

containingPlaces

เอนทิตีขนาดใหญ่ที่ปลายทางหลักเป็นส่วนหนึ่งของเอนทิตีนั้น (เช่น ห้างสรรพสินค้า ที่มีร้านค้า)

subDestinations

สถานที่ที่เฉพาะเจาะจงมากขึ้นภายในจุดหมายหลัก (เช่น อพาร์ตเมนต์ ในอาคาร)

entrances

ออบเจ็กต์ในอาร์เรย์ entrances[] มีฟิลด์ต่อไปนี้

  • location

    คู่พิกัดละติจูด/ลองจิจูดคู่เดียวที่กำหนดตำแหน่งของ จุดเข้าและจุดออกของสถานที่

  • entrance_tags[]

    อาร์เรย์ของแท็กทางเข้าที่อธิบายลักษณะของทางเข้า ค่าที่รองรับมีดังนี้

    • "PREFERRED"

      ระบุว่าทางเข้านี้อาจให้สิทธิ์เข้าถึงสถานที่ที่ส่งคืน สถานที่อาจมีทางเข้าที่แนะนำหลายแห่ง หากทางเข้าไม่มีแท็กนี้ หมายความว่าทางเข้าอยู่ในอาคารเดียวกัน แต่ไม่ได้ให้สิทธิ์เข้าถึงสถานที่ดังกล่าวเสมอไป

      เช่น หากสถานที่ที่ส่งคืนเป็นร้านอาหารในแหล่งรวมร้านค้า "PREFERRED" ทางเข้าจะเป็นทางเข้าที่นำไปสู่ร้านอาหาร นั้นๆ ส่วนทางเข้าอื่นๆ ที่ส่งคืนจะเป็นทางเข้าอื่นๆ ของ อาคาร เช่น ทางเข้าที่นำไปสู่ร้านอาหารอื่นๆ ในแหล่งรวมร้านค้า

      หากสถานที่ที่ส่งคืนเป็นตัวอาคารเอง ทางเข้า "PREFERRED" จะเป็นทางเข้าที่นำไปสู่ส่วน "หลัก" ของอาคาร ตัวอย่างเช่น ในศูนย์การค้า "PREFERRED" ทางเข้าจะเป็นทางเข้าที่อนุญาตให้เข้าถึงบริเวณโถงหลัก แต่หากทางเข้าอนุญาตให้เข้าถึงร้านค้าที่อยู่ด้านข้างของอาคารเท่านั้น ทางเข้านั้นจะไม่ใช่"PREFERRED"ทางเข้า

structureType

ประเภทโครงสร้างที่สถานที่นี้แสดง

  • POINT

    ตำแหน่งจุด

  • SECTION

    ส่วนย่อยของอาคาร

  • BUILDING

    อาคาร

  • GROUNDS

    พื้นที่ขนาดใหญ่ซึ่งมักมีอาคารหลายหลัง เช่น วิทยาเขตของมหาวิทยาลัย กลุ่มอาคารอพาร์ตเมนต์ หรือศูนย์การค้า

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

  • navigationPointToken คือโทเค็นที่มีข้อมูลตามบริบทในฟิลด์ navigationPoints คุณสามารถส่งโทเค็นนี้ไปยัง API การกำหนดเส้นทางและการนำทางเพื่อปรับปรุงประสบการณ์การกำหนดเส้นทางและแม่น้ำในแอป ดูข้อมูลเพิ่มเติมได้ที่กำหนดเส้นทางโดยใช้โทเค็นจุดนำทาง
  • location มีค่าละติจูด ลองจิจูดของจุดนำทาง ตำแหน่งนี้จะอยู่ใกล้กับเครือข่ายถนนเสมอและเป็นจุดหยุดหรือจุดเริ่มต้นที่เหมาะสำหรับการนำทางไปยังและจากสถานที่หนึ่งๆ จุดนี้ตั้งใจให้เบี่ยงออกจากเส้นกึ่งกลางของถนนเล็กน้อยเพื่อทำเครื่องหมายด้านข้างของถนนที่สถานที่ตั้งอยู่อย่างชัดเจน
  • travelModes คือรายการโหมดการเดินทางที่เข้าถึงจุดนำทางได้
    • "DRIVE" คือโหมดการเดินทางที่สอดคล้องกับเส้นทางการขับรถ
    • "WALK" คือโหมดการเดินทางที่สอดคล้องกับเส้นทางเดิน
  • usages คือรายการการใช้งานที่จุดนำทางรองรับ การใช้งานอาจ เป็นดังนี้
    • "DROPOFF"
    • "PICKUP"
    • "PARKING"

arrivalSummary

ข้อมูลเชิงลึกที่ทำงานด้วยระบบ AI เพื่อช่วยในการเดินทางมาถึง ดูข้อมูลสรุปที่ทำงานด้วยระบบ AI

landmarks

สถานที่ที่น่าสนใจในบริเวณใกล้เคียงเพื่อช่วยให้ผู้ใช้เข้าใจสภาพแวดล้อมของจุดหมาย

รูปแบบการตอบกลับ

SearchDestinations จะแสดง SearchDestinationsResponse ในรูปแบบ JSON ต่อไปนี้

{
  "destinations": [
    {
      "primary": {
        "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w",
        "displayName": {
          "text": "Arby's",
          "languageCode": "en"
        },
        "primaryType": "fast_food_restaurant",
        "types": [
          "fast_food_restaurant",
          "sandwich_shop",
          "deli",
          "meal_takeaway",
          "food_delivery",
          "american_restaurant",
          "restaurant",
          "food_store",
          "store",
          "food",
          "point_of_interest",
          "establishment"
        ],
        "formattedAddress": "Arby's, 601 S Bernardo Ave, Sunnyvale, CA 94087, USA",
        "postalAddress": {
          "regionCode": "US",
          "languageCode": "en",
          "postalCode": "94087",
          "administrativeArea": "CA",
          "locality": "Sunnyvale",
          "addressLines": [
            "601 S Bernardo Ave"
          ]
        },
        "structureType": "BUILDING",
        "location": {
          "latitude": 37.3734545,
          "longitude": -122.05693269999998
        },
        "displayPolygon": {
          "type": "Polygon",
          "coordinates": [
            [
              [
                -122.056930138027,
                37.3735253692531
              ],
              [
                -122.056960139391,
                37.3735372663597
              ],
              [
                -122.056994129366,
                37.3734828786847
              ],
              [
                -122.056969677395,
                37.3734731161089
              ],
              [
                -122.057061762447,
                37.3733261309656
              ],
              [
                -122.056979388817,
                37.3732935577128
              ],
              [
                -122.056798860285,
                37.3735818838642
              ],
              [
                -122.056875858081,
                37.3736121235316
              ],
              [
                -122.056930138027,
                37.3735253692531
              ]
            ]
          ]
        }
      },
      "containingPlaces": [
        {
          "place": "places/ChIJYfdAFum2j4ARIcL2tjME3Sw",
          "displayName": {
            "text": "Cherry Chase Shopping Center",
            "languageCode": "en"
          },
          "primaryType": "shopping_mall",
          "types": [
            "shopping_mall",
            "point_of_interest",
            "establishment"
          ],
          "formattedAddress": "Cherry Chase Shopping Center, 663 S Bernardo Ave, Sunnyvale, CA 94087, USA",
          "postalAddress": {
            "regionCode": "US",
            "languageCode": "en",
            "postalCode": "94087-1020",
            "administrativeArea": "CA",
            "locality": "Sunnyvale",
            "addressLines": [
              "663 S Bernardo Ave"
            ]
          },
          "structureType": "GROUNDS",
          "location": {
            "latitude": 37.3731231,
            "longitude": -122.0578211
          },
          "displayPolygon": {
            "type": "Polygon",
            "coordinates": [
              [
                [
                  -122.057112227103,
                  37.3714618008523
                ],
                [
                  -122.057076849821,
                  37.3715743611411
                ],
                [
                  -122.056963607756,
                  37.3719081793948
                ],
                [
                  -122.056865279559,
                  37.3722026053835
                ],
                [
                  -122.056687872374,
                  37.3727258358476
                ],
                [
                  -122.056580005889,
                  37.3730511370747
                ],
                [
                  -122.056498845827,
                  37.3732994782583
                ],
                [
                  -122.056338259713,
                  37.3737878663325
                ],
                [
                  -122.056618678291,
                  37.373887693582
                ],
                [
                  -122.056912102521,
                  37.3740010327191
                ],
                [
                  -122.057532418159,
                  37.3742476426462
                ],
                [
                  -122.057673926626,
                  37.3742441740031
                ],
                [
                  -122.057735663106,
                  37.3742328516943
                ],
                [
                  -122.057766531332,
                  37.3742220604378
                ],
                [
                  -122.057797572967,
                  37.37420520725
                ],
                [
                  -122.057828267759,
                  37.3741852342085
                ],
                [
                  -122.058060299297,
                  37.3740060842535
                ],
                [
                  -122.058199726081,
                  37.3737861673422
                ],
                [
                  -122.05836707267,
                  37.373524542556
                ],
                [
                  -122.058569622393,
                  37.3732018598683
                ],
                [
                  -122.0587638478,
                  37.3728890198039
                ],
                [
                  -122.058934661823,
                  37.3726036257774
                ],
                [
                  -122.059164956851,
                  37.3722498383629
                ],
                [
                  -122.058997784906,
                  37.3721804442035
                ],
                [
                  -122.057936479838,
                  37.3717605636234
                ],
                [
                  -122.057495827092,
                  37.3715860151634
                ],
                [
                  -122.057112227103,
                  37.3714618008523
                ]
              ]
            ]
          }
        }
      ],
      "landmarks": [
        {
          "place": {
            "place": "places/ChIJXXTe7Oi2j4ARoMTA-D6Hjpg",
            "displayName": {
              "text": "Chase Bank",
              "languageCode": "en"
            },
            "primaryType": "bank",
            "types": [
              "bank",
              "atm",
              "finance",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Chase Bank, 1234 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1234 W El Camino Real"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.373579,
              "longitude": -122.05752700000001
            }
          },
          "relationalDescription": {
            "text": "Near Chase Bank",
            "languageCode": "en"
          },
          "tags": [
            "ARRIVAL",
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 61.182193756103516,
          "travelDistanceMeters": 63.075645446777344
        },
        {
          "place": {
            "place": "places/ChIJteQ0Fum2j4ARGi3tqK4Zm14",
            "displayName": {
              "text": "Safeway",
              "languageCode": "en"
            },
            "primaryType": "grocery_store",
            "types": [
              "grocery_store",
              "butcher_shop",
              "florist",
              "deli",
              "supermarket",
              "bakery",
              "food_delivery",
              "market",
              "manufacturer",
              "food_store",
              "store",
              "food",
              "service",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Safeway, 639 S Bernardo Ave, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "639 S Bernardo Ave"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.3727912,
              "longitude": -122.0581172
            }
          },
          "relationalDescription": {
            "text": "Around the corner from Safeway",
            "languageCode": "en"
          },
          "tags": [
            "ARRIVAL",
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 158.65606689453125,
          "travelDistanceMeters": 131.1669921875
        },
        {
          "place": {
            "place": "places/ChIJu-PSYui2j4ARNiwOwBApGqk",
            "displayName": {
              "text": "Oil Changers",
              "languageCode": "en"
            },
            "types": [
              "car_repair",
              "service",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Oil Changers, 1240 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1240 W El Camino Real"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.3743054,
              "longitude": -122.0584272
            }
          },
          "relationalDescription": {
            "text": "Down the road from Oil Changers",
            "languageCode": "en"
          },
          "tags": [
            "ARRIVAL"
          ],
          "straightLineDistanceMeters": 140.52459716796875,
          "travelDistanceMeters": 143.24220275878906
        },
        {
          "place": {
            "place": "places/ChIJKRbl5oG3j4ARwuvPGUmtCj0",
            "displayName": {
              "text": "Apni Mandi Farmers Market Sunnyvale",
              "languageCode": "en"
            },
            "primaryType": "grocery_store",
            "types": [
              "grocery_store",
              "cake_shop",
              "supermarket",
              "asian_grocery_store",
              "indian_restaurant",
              "meal_takeaway",
              "bakery",
              "manufacturer",
              "wholesaler",
              "restaurant",
              "food_store",
              "store",
              "food",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Apni Mandi Farmers Market Sunnyvale, 1111 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087-1056",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1111 W El Camino Real"
              ]
            },
            "structureType": "POINT",
            "location": {
              "latitude": 37.3737199,
              "longitude": -122.0522958
            }
          },
          "relationalDescription": {
            "text": "Near Apni Mandi Farmers Market Sunnyvale",
            "languageCode": "en"
          },
          "tags": [
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 410.37435913085938,
          "travelDistanceMeters": 479.49893188476562
        },
        {
          "place": {
            "place": "places/ChIJ8enMlui2j4AR2xXK5EHDhBs",
            "displayName": {
              "text": "Starbird Chicken",
              "languageCode": "en"
            },
            "primaryType": "chicken_restaurant",
            "types": [
              "chicken_restaurant",
              "fast_food_restaurant",
              "restaurant",
              "food",
              "point_of_interest",
              "establishment"
            ],
            "formattedAddress": "Starbird Chicken, 1241 W El Camino Real, Sunnyvale, CA 94087, USA",
            "postalAddress": {
              "regionCode": "US",
              "languageCode": "en",
              "postalCode": "94087-1028",
              "administrativeArea": "CA",
              "locality": "Sunnyvale",
              "addressLines": [
                "1241 W El Camino Real"
              ]
            },
            "structureType": "BUILDING",
            "location": {
              "latitude": 37.3746764,
              "longitude": -122.05708860000001
            },
            "displayPolygon": {
              "coordinates": [
                [
                  [
                    -122.057003840785,
                    37.3747648209809
                  ],
                  [
                    -122.057136852459,
                    37.3747919153144
                  ],
                  [
                    -122.057205005705,
                    37.3745815131859
                  ],
                  [
                    -122.057071994114,
                    37.3745544186944
                  ],
                  [
                    -122.057003840785,
                    37.3747648209809
                  ]
                ]
              ],
              "type": "Polygon"
            }
          },
          "relationalDescription": {
            "text": "Near Starbird Chicken",
            "languageCode": "en"
          },
          "tags": [
            "ADDRESS"
          ],
          "straightLineDistanceMeters": 87.348007202148438,
          "travelDistanceMeters": 214.08084106445312
        }
      ],
      "entrances": [
        {
          "location": {
            "latitude": 37.3735328,
            "longitude": -122.05694879999999
          },
          "tags": [
            "PREFERRED"
          ],
          "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
        }
      ],
      "navigationPoints": [
        {
          "navigationPointToken": "ChIJeMt61tqvQkARWT2716SDXsASEgljyy_n6LaPgBH9LoGUMNHjbBoSCWPLL-foto-AEf0ugZQw0eNsIhIJhf5y6ei2j4ARz7yBW5KAPI4",
          "location": {
            "latitude": 37.3738659,
            "longitude": -122.05693620000001
          },
          "travelModes": [
            "DRIVE",
            "WALK"
          ],
          "usages": [
            "PARKING"
          ]
        }
      ]
    }
  ]
}

พารามิเตอร์ที่จำเป็น

  • คำขอ API ต้องมีพารามิเตอร์ 1 ใน 3 รายการต่อไปนี้ ซึ่ง ระบุที่อยู่ สถานที่ หรือตำแหน่งที่จะค้นหาปลายทาง
    • addressQuery - ที่อยู่ที่ต้องการค้นหา
    • place - รหัสสถานที่ของสถานที่ที่จะค้นหา
    • locationQuery - พิกัดละติจูดและลองจิจูดของ สถานที่ที่จะค้นหา
  • FieldMask

    ระบุรายการฟิลด์ที่จะแสดงในคำตอบโดยการสร้างมาสก์ฟิลด์การตอบกลับ ส่งฟิลด์มาสก์การตอบกลับไปยังเมธอดโดยใช้พารามิเตอร์ URL $fields หรือ fields หรือโดยใช้ส่วนหัว HTTP X-Goog-FieldMask เช่น คำขอต่อไปนี้จะแสดงเฉพาะ ทางเข้า จุดนำทาง และรหัสสถานที่ของจุดหมายหลัก

      curl -X POST -d '{"place": "places/ChIJG3kh4hq6j4AR_XuFQnV0_t8"}' \
        -H "X-Goog-Api-Key: API_KEY" \
        -H "Content-Type: application/json" \
        -H "X-Goog-FieldMask: destinations.entrances,destinations.navigationPoints,destinations.primary.place" \
        https://geocode.googleapis.com/v4beta/geocode/destinations
      

    ไม่มีรายการฟิลด์ที่ส่งคืนเริ่มต้นในการตอบกลับ หากคุณละเว้น ฟิลด์มาสก์ เมธอดจะแสดงข้อผิดพลาด ตั้งค่ามาสก์ฟิลด์เป็น * เพื่อแสดงผลฟิลด์ทั้งหมด ดูรายละเอียดเพิ่มเติมได้ที่ เลือกช่องที่จะแสดง

พารามิเตอร์ที่ไม่บังคับ

  • travelModes

    ระบุประเภทของ navigationPoints ที่จะแสดง ระบบจะกรองจุดนำทางสำหรับโหมดการเดินทางอื่นๆ ออก หากไม่ได้ตั้งค่า travelModes ระบบจะแสดงผลจุดนำทางของรูปแบบการเดินทางทั้งหมดได้

  • languageCode

    ภาษาที่จะแสดงผลลัพธ์

    • ดู รายการภาษาที่รองรับ Google มักจะอัปเดต ภาษาที่รองรับอยู่เสมอ ดังนั้นรายการนี้จึงอาจไม่ครอบคลุมทั้งหมด
    • หากไม่ได้ระบุ languageCode API จะใช้ en เป็นค่าเริ่มต้น หาก คุณระบุรหัสภาษาที่ไม่ถูกต้อง API จะแสดงข้อผิดพลาด INVALID_ARGUMENT
    • API จะพยายามอย่างเต็มที่เพื่อให้ที่อยู่ที่อ่านง่ายสำหรับทั้งผู้ใช้และคนในพื้นที่ เพื่อให้บรรลุเป้าหมายดังกล่าว ระบบจะแสดงที่อยู่ในภาษาท้องถิ่น โดยแปลงเป็นสคริปต์ที่ผู้ใช้อ่านได้หากจำเป็น ตามภาษาที่ต้องการ ส่วนที่อยู่อื่นๆ จะแสดงในภาษาที่ต้องการ คอมโพเนนต์ของที่อยู่ ทั้งหมดจะแสดงในภาษาเดียวกัน ซึ่งเลือกจากคอมโพเนนต์แรก
    • หากชื่อไม่มีในภาษาที่ต้องการ API จะใช้ชื่อที่ใกล้เคียงที่สุด
    • ภาษาที่ต้องการมีผลเล็กน้อยต่อชุดผลลัพธ์ที่ API เลือกที่จะแสดงผล และลำดับที่แสดงผล Geocoder จะตีความตัวย่อแตกต่างกันไปตามภาษา เช่น ตัวย่อสำหรับประเภทถนน หรือคำพ้องความหมายที่อาจ ใช้ได้ในภาษาหนึ่งแต่ใช้ไม่ได้ในอีกภาษาหนึ่ง
  • regionCode

    รหัสภูมิภาคเป็นค่ารหัส CLDR 2 หลัก ไม่มีค่าเริ่มต้น รหัส CLDR ส่วนใหญ่จะเหมือนกับรหัส ISO 3166-1

    เมื่อเข้ารหัสที่อยู่เป็นพิกัดภูมิศาสตร์หรือ Forward Geocoding พารามิเตอร์นี้จะส่งผลต่อผลลัพธ์จากบริการในภูมิภาคที่ระบุได้ แต่จะไม่จำกัดผลลัพธ์โดยสมบูรณ์ เมื่อเข้ารหัสพิกัดภูมิศาสตร์ของตำแหน่งหรือสถานที่ หรือที่เรียกว่าการเข้ารหัสพิกัดภูมิศาสตร์แบบย้อนกลับหรือการเข้ารหัสพิกัดภูมิศาสตร์ของสถานที่ คุณสามารถใช้พารามิเตอร์นี้เพื่อจัดรูปแบบที่อยู่ได้ ในทุกกรณี พารามิเตอร์นี้อาจส่งผลต่อผลลัพธ์ตามกฎหมายที่เกี่ยวข้อง

  • placeFilter

    ช่วยให้คุณกรองผลลัพธ์ของ locationQuery การค้นหาให้ตรงตามข้อกำหนด เช่น แสดงเฉพาะจุดหมายที่เป็น อาคารหรือเฉพาะจุดหมายที่มีที่อยู่ที่ชัดเจน

    กรองตามระดับโครงสร้าง

    ตัวกรอง structureType ช่วยให้คุณระบุประเภทโครงสร้างที่ การค้นหาแสดงได้

    • การแยกอาคาร: ใช้ "structureType": "BUILDING" เพื่อแสดงโครงร่างอาคารบนแผนที่หรือดูรายละเอียดของโครงสร้างที่เฉพาะเจาะจง
    • ทำความเข้าใจเกี่ยวกับคอมเพล็กซ์: ใช้ "structureType": "GROUNDS" เพื่อให้แน่ใจว่าผลการค้นหาหลักคือพื้นที่โดยรวม ซึ่งจะเป็นประโยชน์เมื่อค้นหา พื้นที่ขนาดใหญ่ เช่น วิทยาเขตของมหาวิทยาลัยหรือห้างสรรพสินค้า
    • การมุ่งเน้นที่หน่วย/ส่วน: ใช้ "structureType": "SECTION" เพื่อระบุ ส่วนต่างๆ ภายในอาคาร

    ตรวจสอบว่าที่อยู่มีประโยชน์

    สถานที่บางแห่งไม่มีที่อยู่ระดับถนนที่ชัดเจน addressability ตัวกรอง ช่วยให้คุณควบคุมคุณภาพของที่อยู่ในผลการค้นหาได้

    • ต้องระบุที่อยู่หลักที่ชัดเจน: ใช้ "addressability": "PRIMARY" เพื่อให้ผลลัพธ์ปลายทางหลักมีที่อยู่หรือชื่อระดับถนนเสมอ ซึ่งมีประโยชน์สำหรับการนำทางหรือการแสดงผลในกรณีที่จำเป็นต้องมีที่อยู่ที่ชัดเจน
    • อนุญาตที่อยู่ในจุดหมายย่อย: ในกรณีที่สถานที่หลัก อาจไม่มีที่อยู่ แต่หน่วยภายในมี (เช่น อพาร์ตเมนต์ใน อาคาร) "addressability": "WEAK" จะช่วยให้มั่นใจว่าอย่างน้อยสถานที่หลัก หรือจุดหมายย่อยแห่งใดแห่งหนึ่งมีที่อยู่
    • ผลลัพธ์ใดก็ได้: หากการแสดงที่อยู่ไม่เกี่ยวข้องกับกรณีการใช้งานของคุณ ให้ใช้ "addressability": "ANY"
    ตัวอย่าง: การกรองอาคารที่ระบุที่อยู่ได้
    curl -X POST -d '{
      "locationQuery": {
        "location": {
          "latitude": 37.37348780,
          "longitude": -122.05678064
        },
        "placeFilter": {
          "structureType": "BUILDING",
          "addressability": "PRIMARY"
        }
      },
      "languageCode": "en"
    }' \\
    -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \\
    -H "X-Goog-FieldMask: place" \\
    https://geocode.googleapis.com/v4beta/geocode/destinations
    

ความคิดเห็น

นี่คือปลายทางทดลองของ Geocoding API เรายินดีรับฟัง ความคิดเห็นที่ geocoding-feedback-channel@google.com