Method: geocode.destinations.searchDestinations

เมธอดนี้จะค้นหาปลายทางและแสดงรายการปลายทาง

คำขอ HTTP

POST https://geocode.googleapis.com/v4alpha/geocode/destinations

URL ใช้ไวยากรณ์การแปลงรหัส gRPC

เนื้อความของคำขอ

เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "travelModes": [
    enum (NavigationPoint.TravelMode)
  ],
  "languageCode": string,
  "regionCode": string,

  // Union field primary_query can be only one of the following:
  "place": string,
  "addressQuery": {
    object (SearchDestinationsRequest.AddressQuery)
  },
  "locationQuery": {
    object (SearchDestinationsRequest.LocationQuery)
  }
  // End of list of possible types for union field primary_query.
}
ฟิลด์
travelModes[]

enum (NavigationPoint.TravelMode)

ไม่บังคับ โหมดการเดินทางที่จะใช้กรองจุดนำทาง ซึ่งจะส่งผลต่อฟิลด์ navigationPoints ที่แสดงในคำตอบ หากเว้นว่าง ระบบจะแสดงผลจุดนำทางของรูปแบบการเดินทางทั้งหมด

languageCode

string

ไม่บังคับ ภาษาที่ควรแสดงผลลัพธ์

regionCode

string

ไม่บังคับ รหัสภูมิภาค รหัสภูมิภาคที่ระบุเป็นค่า ccTLD ("โดเมนระดับบนสุด") 2 อักขระ พารามิเตอร์นี้จะส่งผลต่อผลลัพธ์ตามกฎหมายที่เกี่ยวข้อง พารามิเตอร์นี้ยังส่งผลต่อผลลัพธ์จากบริการด้วย แต่จะไม่จำกัดผลลัพธ์โดยสมบูรณ์

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

จุดหมายจะสร้างขึ้นตามคำค้นหาหลักที่ระบุ

หมายเหตุ: ระบบรองรับเฉพาะสถานที่และที่อยู่ที่สามารถเป็นปลายทางการนำทางได้ เช่น สถานที่ที่แสดงถึงบ้านหรืออพาร์ตเมนต์คอมเพล็กซ์สามารถใช้เป็นคำค้นหาหลักได้ แต่สถานที่ที่แสดงถึงเขตหรือพื้นที่การปกครองไม่สามารถใช้เป็นคำค้นหาหลักได้ primary_query ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

place

string

ชื่อทรัพยากรของสถานที่ในรูปแบบ places/{placeId}

addressQuery

object (SearchDestinationsRequest.AddressQuery)

ที่อยู่

locationQuery

object (SearchDestinationsRequest.LocationQuery)

ตำแหน่งที่แน่นอน

เนื้อหาการตอบกลับ

ข้อความตอบกลับสำหรับ DestinationService.SearchDestinations

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "destinations": [
    {
      object (Destination)
    }
  ]
}
ช่อง
destinations[]

object (Destination)

รายการปลายทาง

บริการจะแสดงผลลัพธ์ 1 รายการหากระบุปลายทางหลักจากคำค้นหาหลักได้อย่างชัดเจน ไม่เช่นนั้น บริการอาจแสดงผลลัพธ์หลายรายการเพื่อแยกความกำกวมหรือแสดงผลลัพธ์เป็น 0

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/maps-platform.geocode

SearchDestinationsRequest.AddressQuery

ที่อยู่ถนนที่ต้องการค้นหา ระบุที่อยู่ตามรูปแบบที่ใช้โดยบริการไปรษณีย์แห่งชาติของประเทศที่เกี่ยวข้อง

การแสดง JSON
{

  // Union field kind can be only one of the following:
  "address": {
    object (PostalAddress)
  },
  "addressQuery": string
  // End of list of possible types for union field kind.
}
ช่อง
ฟิลด์ Union kind การค้นหาที่อยู่ kind ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
address

object (PostalAddress)

ที่อยู่ตามรูปแบบที่อยู่ทางไปรษณีย์

addressQuery

string

ที่อยู่ที่จัดรูปแบบเป็นบรรทัดเดียว

SearchDestinationsRequest.LocationQuery

การค้นหาสถานที่เพื่อระบุจุดหมายหลักที่อยู่ใกล้เคียง

หมายเหตุ: หากการค้นหาสถานที่อยู่ภายในอาคารที่มีสถานที่ย่อย สถานที่หลักที่แสดงอาจเป็นสถานที่ย่อย ในกรณีเหล่านี้ ฟิลด์ containingPlaces จะรวมอาคารด้วย

การแสดง JSON
{
  "placeFilter": {
    object (SearchDestinationsRequest.LocationQuery.PlaceFilter)
  },

  // Union field kind can be only one of the following:
  "location": {
    object (LatLng)
  }
  // End of list of possible types for union field kind.
}
ฟิลด์
placeFilter

object (SearchDestinationsRequest.LocationQuery.PlaceFilter)

ไม่บังคับ ตัวกรองที่จะใช้กับปลายทางที่แนะนำ

ฟิลด์ Union kind การค้นหาสถานที่ kind ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
location

object (LatLng)

ตำแหน่ง LatLng ที่แน่นอน

SearchDestinationsRequest.LocationQuery.PlaceFilter

ตัวกรองที่จะใช้กับปลายทางที่แนะนำ

การแสดง JSON
{
  "structureType": enum (PlaceView.StructureType),
  "addressability": enum (SearchDestinationsRequest.LocationQuery.PlaceFilter.Addressability)
}
ฟิลด์
structureType

enum (PlaceView.StructureType)

ไม่บังคับ หากระบุไว้ ระบบจะรับประกันว่าปลายทางทั้งหมดจะมีสถานที่หลักที่มีประเภทโครงสร้างนี้ ซึ่งอาจส่งผลให้มีการกรองปลายทางบางแห่งออก หรือทำให้ปลายทางที่แสดงมีความหยาบ/ละเอียดมากขึ้น

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

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

addressability

enum (SearchDestinationsRequest.LocationQuery.PlaceFilter.Addressability)

ไม่บังคับ หากระบุไว้ จะแสดงเฉพาะปลายทางที่ตรงตามเกณฑ์การระบุแหล่งที่มาที่เกี่ยวข้อง

PlaceView.StructureType

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

Enum
STRUCTURE_TYPE_UNSPECIFIED ไม่ได้ใช้
POINT ตำแหน่งจุด
SECTION ส่วนย่อยของอาคาร
BUILDING อาคาร
GROUNDS พื้นที่ขนาดใหญ่ที่มักมีอาคารหลายหลัง เช่น วิทยาเขตของมหาวิทยาลัย กลุ่มอาคารอพาร์ตเมนต์ หรือห้างสรรพสินค้า

SearchDestinationsRequest.LocationQuery.PlaceFilter.Addressability

กำหนดตัวเลือกสำหรับการกรองการกำหนดเป้าหมาย ทั้งนี้ อาจมีการเพิ่มค่าใหม่ๆ ในอนาคต

Enum
ADDRESSABILITY_UNSPECIFIED หากไม่ได้ระบุ บริการจะเลือกค่าเริ่มต้นที่เหมาะสม
ANY การกำหนดเป้าหมายไม่ใช่เกณฑ์การกรอง ระบบจะแสดงผลปลายทางโดยไม่คำนึงถึงความสามารถในการระบุที่อยู่
PRIMARY ปลายทางทั้งหมดที่แสดงจะมีสถานที่หลักที่มีที่อยู่หรือชื่อระดับถนน
WEAK ปลายทางทั้งหมดที่แสดงจะมีสถานที่หลักหรือปลายทางย่อยที่มีที่อยู่หรือชื่อระดับถนน

ปลายทาง

ปลายทาง ซึ่งรวมถึงสถานที่หลัก สถานที่ที่เกี่ยวข้อง ทางเข้า และจุดนำทาง

การแสดง JSON
{
  "primary": {
    object (PlaceView)
  },
  "containingPlaces": [
    {
      object (PlaceView)
    }
  ],
  "subDestinations": [
    {
      object (PlaceView)
    }
  ],
  "landmarks": [
    {
      object (Landmark)
    }
  ],
  "entrances": [
    {
      object (Entrance)
    }
  ],
  "navigationPoints": [
    {
      object (NavigationPoint)
    }
  ],
  "arrivalSummary": {
    object (Destination.ArrivalSummary)
  }
}
ช่อง
primary

object (PlaceView)

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

containingPlaces[]

object (PlaceView)

สถานที่ที่มีความแม่นยำน้อยกว่าซึ่งสถานที่หลักอยู่ เช่น กลุ่มอาคารอพาร์ตเมนต์ที่มีอาคารนี้

subDestinations[]

object (PlaceView)

จุดหมายย่อยที่แม่นยำยิ่งขึ้นของสถานที่หลัก เช่น ยูนิตที่อยู่ในอาคาร

หมายเหตุ: รายการจุดหมายย่อยนี้ครอบคลุมมากกว่าSubDestinationที่ Places API แสดงผล และจุดหมายย่อยแต่ละรายการมีข้อมูลมากกว่า

landmarks[]

object (Landmark)

จุดสังเกตที่ใช้สื่อสารตำแหน่งของจุดหมายหรือช่วยในการเดินทางมาถึง

entrances[]

object (Entrance)

ทางเข้าของจุดหมายนี้

navigationPoints[]

object (NavigationPoint)

จุดนำทางสำหรับจุดหมายนี้

arrivalSummary

object (Destination.ArrivalSummary)

ข้อมูลสรุปเกี่ยวกับประสบการณ์การเดินทางมาถึงที่จุดหมายที่ AI สร้างขึ้น

PlaceView

แสดงมุมมองของ Place ใน Places API นอกจากนี้ ยังให้ข้อมูลเพิ่มเติมเกี่ยวกับจุดหมายเฉพาะ เช่น ประเภทโครงสร้างและรูปหลายเหลี่ยมที่แสดง

ในบางกรณี PlaceView ที่มีรหัสสถานที่เดียวกันอาจแตกต่างจากที่ Places API แสดงผลสำหรับฟิลด์ types และ displayName

การแสดง JSON
{
  "place": string,
  "displayName": {
    object (LocalizedText)
  },
  "primaryType": string,
  "types": [
    string
  ],
  "formattedAddress": string,
  "postalAddress": {
    object (PostalAddress)
  },
  "structureType": enum (PlaceView.StructureType),
  "location": {
    object (LatLng)
  },
  "displayPolygon": {
    object
  }
}
ช่อง
place

string

ชื่อทรัพยากรของสถานที่นี้ในรูปแบบ places/{placeId}

displayName

object (LocalizedText)

คำอธิบายสถานที่ที่มนุษย์อ่านได้ เช่น "Gate B", "McDonalds"

primaryType

string

ประเภทสถานที่หลักของสถานที่นี้ ดูรายการค่าที่เป็นไปได้ได้ที่ https://developers.google.com/maps/documentation/places/web-service/place-types

หมายเหตุ: ฟิลด์นี้อาจไม่มีข้อมูลเสมอไป เตรียมพร้อมที่จะใช้ฟิลด์ types ในสถานการณ์ดังกล่าว

types[]

string

ประเภทสถานที่ที่เกี่ยวข้องทั้งหมดของสถานที่นี้ ดูรายการค่าที่เป็นไปได้ได้ที่ https://developers.google.com/maps/documentation/places/web-service/place-types

formattedAddress

string

ที่อยู่แบบบรรทัดเดียว

postalAddress

object (PostalAddress)

ที่อยู่ที่มีโครงสร้าง

structureType

enum (PlaceView.StructureType)

ประเภทโครงสร้างที่สอดคล้องกับสถานที่นี้

location

object (LatLng)

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

displayPolygon

object (Struct format)

เส้นขอบรูปหลายเหลี่ยมของสถานที่ในรูปแบบ GeoJSON โดยใช้รูปแบบ RFC 7946: https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.6

หมายเหตุ: รูปแบบ RFC 7946 รองรับ MultiPolygons ดังนั้นออบเจ็กต์ displayPolygon หนึ่งรายการจึงแสดงรูปหลายเหลี่ยมได้หลายรูป

สถานที่สำคัญ

จุดสังเกตใช้เพื่อสื่อสารว่าจุดหมายปลายทางอยู่ที่ใดหรือช่วยในการเดินทางถึงจุดหมายปลายทาง

การแสดง JSON
{
  "relationalDescription": {
    object (LocalizedText)
  },
  "tags": [
    enum (Landmark.Tag)
  ],
  "straightLineDistanceMeters": number,
  "travelDistanceMeters": number,

  // Union field landmark can be only one of the following:
  "place": {
    object (PlaceView)
  }
  // End of list of possible types for union field landmark.
}
ช่อง
relationalDescription

object (LocalizedText)

คำอธิบายที่มนุษย์อ่านได้ว่าจุดหมายเกี่ยวข้องกับสถานที่สำคัญอย่างไร เช่น "ใกล้ตึกเอ็มไพร์สเตต" หรือ "ตรงข้ามทำเนียบขาว"

tags[]

enum (Landmark.Tag)

แท็กที่อธิบายวิธีใช้สถานที่สำคัญในบริบทของจุดหมาย

straightLineDistanceMeters

number

เอาต์พุตเท่านั้น ระยะทางเป็นเส้นตรงจากสถานที่สำคัญนี้ไปยังจุดหมายปลายทางเป็นเมตร

travelDistanceMeters

number

เอาต์พุตเท่านั้น ระยะทางบนเครือข่ายถนนจากสถานที่สำคัญนี้ไปยังจุดหมายเป็นเมตร

ฟิลด์ Union landmark จุดสังเกต landmark ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
place

object (PlaceView)

สถานที่ที่แสดงถึงสถานที่สำคัญนี้

Landmark.Tag

รายการแท็กทั้งหมดที่เป็นไปได้ซึ่งอธิบายวิธีใช้สถานที่สำคัญในบริบทของจุดหมาย

หากที่อยู่มีทั้งแท็ก ADDRESS และ ARRIVAL แสดงว่าสถานที่สำคัญนั้นโดดเด่นในพื้นที่และอยู่ใกล้กับจุดหมาย

Enum
TAG_UNSPECIFIED ไม่ได้ใช้
ADDRESS สถานที่ที่มีชื่อเสียงในท้องถิ่นซึ่งใช้ระบุตำแหน่งทั่วไปของปลายทางได้ โดยปกติจะอยู่ภายในรัศมีไม่กี่ร้อยเมตรจากจุดหมาย ซึ่งคล้ายกับสถานที่สำคัญที่ฟีเจอร์ตัวอธิบายที่อยู่ของ Geocoding API แสดงผล: https://developers.google.com/maps/documentation/geocoding/address-descriptors/requests-address-descriptors
ARRIVAL สถานที่ที่ใช้ช่วยให้ไปถึงจุดหมายได้ มีประโยชน์สำหรับการนำทางเมื่อคุณอยู่ใกล้จุดหมาย เช่น สถานที่สำคัญนี้อาจอยู่ฝั่งตรงข้ามกับจุดหมาย โดยปกติแล้ว สถานที่สำคัญที่มีแท็กนี้จะอยู่ใกล้กับจุดหมายปลายทางมากกว่าสถานที่สำคัญที่มีแท็ก ADDRESS

ทางเข้า

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

การแสดง JSON
{
  "location": {
    object (LatLng)
  },
  "tags": [
    enum (Entrance.Tag)
  ],
  "place": string
}
ช่อง
location

object (LatLng)

ตำแหน่งของทางเข้า

tags[]

enum (Entrance.Tag)

รายการแท็กที่อธิบายทางเข้า

place

string

โครงสร้างที่ทางเข้านี้ตั้งอยู่จริงในรูปแบบ places/{placeId}

Entrance.Tag

ลักษณะที่อธิบายทางเข้า

Enum
TAG_UNSPECIFIED ไม่ได้ใช้
PREFERRED

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

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

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

หมายเหตุ: PREFERREDทางเข้าอาจไม่ได้ให้สิทธิ์เข้าถึงสถานที่หลัก และทางเข้าที่ไม่ใช่PREFERREDอาจให้สิทธิ์เข้าถึงสถานที่หลัก

Destination.ArrivalSummary

ข้อมูลสรุปเกี่ยวกับประสบการณ์การเดินทางมาถึงที่จุดหมายที่ AI สร้างขึ้น

การแสดง JSON
{
  "text": {
    object (LocalizedText)
  },
  "flagContentUrl": string,
  "disclosureText": {
    object (LocalizedText)
  }
}
ช่อง
text

object (LocalizedText)

สรุปประสบการณ์การเดินทางมาถึงที่จุดหมาย

flagContentUrl

string

ลิงก์ที่ผู้ใช้สามารถแจ้งปัญหาเกี่ยวกับข้อมูลสรุปได้

disclosureText

object (LocalizedText)

เอาต์พุตเท่านั้น มีข้อความการเปิดเผยข้อมูลสำหรับข้อมูลสรุปการมาถึง