การค้นหาข้อความ (ใหม่) จะแสดงข้อมูลเกี่ยวกับชุดสถานที่ตามสตริง ตัวอย่างเช่น "พิซซ่าในกรุงเทพ" หรือ "ร้านรองเท้าใกล้อตตาวา" หรือ "123 Main Street" ตอบสนองด้วยรายการสถานที่ที่ตรงกับสตริงข้อความและตำแหน่งที่ตั้งใดๆ อคติที่เกิดขึ้น
บริการมีประโยชน์อย่างยิ่งในการทำให้ การค้นหาที่อยู่ที่ไม่ชัดเจน ในระบบอัตโนมัติ และคอมโพเนนต์ที่ไม่ใช่ที่อยู่ของสตริงอาจตรง ธุรกิจต่างๆ รวมทั้งที่อยู่ ตัวอย่างของการค้นหาที่อยู่ที่ไม่ชัดเจน ได้แก่ ที่อยู่หรือคำขอที่มีรูปแบบไม่ดีซึ่งมีองค์ประกอบที่ไม่มีที่อยู่ เช่น เป็นชื่อธุรกิจ คำขอเหมือนกับ 2 ตัวอย่างแรกในตารางต่อไปนี้ อาจแสดงผลลัพธ์เป็นศูนย์ยกเว้นตำแหน่ง เช่น ภูมิภาค ตำแหน่งที่ตั้ง มีการตั้งค่าการจำกัด หรือการให้น้ำหนักพิเศษกับตำแหน่งไว้
"10 ถนนวิทยุ เขตปทุมวัน กรุงเทพฯ" หรือ "123 Main Street, US" | "High Street" หลายแห่งในสหราชอาณาจักร "ถนนหลัก" หลายแห่งในสหรัฐอเมริกา การค้นหาไม่แสดงผลการค้นหาที่ต้องการ เว้นแต่จะมีข้อจำกัดเกี่ยวกับตำแหน่ง ตั้งค่า |
"แฟรนไชส์ร้านอาหารนิวยอร์ก" | "ร้านอาหารแฟรนไชส์" หลายร้าน สถานที่ตั้งในนิวยอร์ก ไม่มีที่อยู่ หรือ แม้แต่ชื่อถนน |
"10 High Street, Escher UK" หรือ "123 Main Street, Pleasanton US" | "High Street" เพียงรายการเดียว ในเมืองเอเชอร์ของสหราชอาณาจักร "Main Street" เพียงแห่งเดียวเท่านั้น ใน Pleasanton แคลิฟอร์เนีย |
"UniqueRestaurantName New York" | มีสถานประกอบการเพียงแห่งเดียวที่ใช้ชื่อนี้ในนิวยอร์ก ไม่มีที่อยู่ ที่ต้องแยกความแตกต่าง |
"ร้านพิซซ่าในหัวหิน" | คำค้นหานี้มีการจำกัดตำแหน่ง และ "ร้านพิซซ่า" เท่ากับ ประเภทสถานที่ที่กำหนดไว้อย่างชัดเจน แสดงผลการค้นหาหลายรายการ |
"+1 514-670-8700" | การค้นหานี้มีหมายเลขโทรศัพท์ แสดงผลการค้นหาหลายรายการสำหรับ ที่เชื่อมโยงกับหมายเลขโทรศัพท์นั้น |
โปรแกรมสำรวจ API ช่วยให้คุณสร้างคำขอแบบเรียลไทม์ได้เพื่อทำความคุ้นเคยกับ API และ ตัวเลือก API:
คำขอค้นหาข้อความ
คำขอการค้นหาข้อความคือคำขอ HTTP POST ในรูปแบบต่อไปนี้
https://places.googleapis.com/v1/places:searchText
ส่งพารามิเตอร์ทั้งหมดในเนื้อหาคำขอ JSON หรือในส่วนหัวเป็นส่วนหนึ่งของ คำขอ POST เช่น
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.displayName,places.formattedAddress,places.priceLevel' \ 'https://places.googleapis.com/v1/places:searchText'
การตอบกลับการค้นหาข้อความ (ใหม่)
การค้นหาข้อความ (ใหม่) แสดงผล ออบเจ็กต์ JSON เป็นการตอบกลับ ในการตอบกลับ:
- อาร์เรย์
places
มีสถานที่ที่ตรงกันทั้งหมด - แต่ละตำแหน่งในอาร์เรย์จะแสดงด้วย
Place
ออบเจ็กต์ ออบเจ็กต์Place
มีข้อมูลโดยละเอียดเกี่ยวกับ - FieldMask ที่ส่งผ่านในคำขอระบุ
รายการช่องที่แสดงผลในออบเจ็กต์
Place
ออบเจ็กต์ JSON ที่สมบูรณ์อยู่ในรูปแบบดังนี้
{ "places": [ { object (Place) } ] }
พารามิเตอร์ที่จำเป็น
-
FieldMask
ระบุรายการช่องที่จะส่งกลับมาในคำตอบโดยสร้าง มาสก์ของช่องตอบกลับ ส่งมาสก์ฟิลด์ตอบกลับไปยังเมธอดโดยใช้พารามิเตอร์ของ URL
$fields
หรือfields
หรือใช้ส่วนหัว HTTPX-Goog-FieldMask
คำตอบไม่มีรายการเริ่มต้นของช่องที่ส่งคืน หากคุณไม่มาสก์ช่อง เมธอดจะแสดงข้อผิดพลาดการมาสก์ช่องเป็นแนวทางปฏิบัติในการออกแบบที่ดีเพื่อให้แน่ใจว่าคุณไม่ได้ส่งคำขอ ข้อมูลที่ไม่จำเป็น ซึ่งจะช่วยหลีกเลี่ยงเวลาประมวลผลที่ไม่จำเป็น การเรียกเก็บเงินของคุณ
ระบุรายการประเภทข้อมูลสถานที่ซึ่งคั่นด้วยคอมมาที่จะแสดงผล ตัวอย่างเช่น เพื่อดึงข้อมูลชื่อที่แสดงและที่อยู่ของสถานที่
X-Goog-FieldMask: places.displayName,places.formattedAddress
ใช้
*
เพื่อเรียกข้อมูลช่องทั้งหมดX-Goog-FieldMask: *
ระบุช่องต่อไปนี้อย่างน้อย 1 ช่อง
ช่องต่อไปนี้จะเรียกใช้ SKU การค้นหาข้อความ (รหัสเท่านั้น)
places.attributions
,places.id
,places.name
*nextPageToken
* ช่องplaces.name
จะมีชื่อทรัพยากรสถานที่ ในแบบฟอร์ม:places/PLACE_ID
ใช้places.displayName
เพื่อเข้าถึงชื่อข้อความของสถ านที่ช่องต่อไปนี้จะเรียกใช้ SKU การค้นหาข้อความ (พื้นฐาน)
places.accessibilityOptions
,places.addressComponents
,places.adrFormatAddress
,places.businessStatus
,places.displayName
,places.formattedAddress
,places.googleMapsUri
,places.iconBackgroundColor
,places.iconMaskBaseUri
,places.location
,places.photos
,places.plusCode
,places.primaryType
,places.primaryTypeDisplayName
,places.shortFormattedAddress
,places.subDestinations
,places.types
,places.utcOffsetMinutes
,places.viewport
ช่องต่อไปนี้จะเรียกใช้ SKU การค้นหาข้อความ (ขั้นสูง)
places.currentOpeningHours
,places.currentSecondaryOpeningHours
,places.internationalPhoneNumber
,places.nationalPhoneNumber
,places.priceLevel
,places.rating
,places.regularOpeningHours
,places.regularSecondaryOpeningHours
,places.userRatingCount
,places.websiteUri
ช่องต่อไปนี้จะเรียกใช้ SKU การค้นหาข้อความ (ที่ต้องการ)
places.allowsDogs
,places.curbsidePickup
,places.delivery
,places.dineIn
,places.editorialSummary
,places.evChargeOptions
,places.fuelOptions
,places.goodForChildren
,places.goodForGroups
,places.goodForWatchingSports
,places.liveMusic
,places.menuForChildren
,places.parkingOptions
,places.paymentOptions
,places.outdoorSeating
,places.reservable
,places.restroom
,places.reviews
,places.servesBeer
,places.servesBreakfast
,places.servesBrunch
,places.servesCocktails
,places.servesCoffee
,places.servesDessert
,places.servesDinner
,places.servesLunch
,places.servesVegetarianFood
,places.servesWine
,places.takeout
-
textQuery
สตริงข้อความที่จะค้นหา เช่น "ร้านอาหาร" "123 ถนนสุขุมวิท" หรือ "สถานที่ที่น่าไปที่สุดในกรุงเทพมหานคร" API จะแสดงผลการจับคู่ผู้สมัครโดยพิจารณาจาก ในสตริงนี้และเรียงลำดับผลลัพธ์ตามความเกี่ยวข้องที่รับรู้
พารามิเตอร์ที่ไม่บังคับ
includedType
จำกัดผลลัพธ์ไว้ที่ตำแหน่งที่ตรงกับประเภทที่ระบุซึ่งกำหนดโดย ตาราง ก ระบุได้เพียงประเภทเดียวเท่านั้น เช่น
"includedType":"bar"
"includedType":"pharmacy"
languageCode
ภาษาที่จะแสดงผลการค้นหา
- โปรดดู รายชื่อภาษาที่รองรับ Google มักจะอัปเดตภาษาที่สนับสนุนอยู่ ดังนั้นรายการนี้จึงอาจไม่มี อย่างละเอียด
-
หากไม่ได้ระบุ
languageCode
ค่าเริ่มต้น API จะเป็นen
หากคุณระบุรหัสภาษาไม่ถูกต้อง API แสดงข้อผิดพลาดINVALID_ARGUMENT
- API พยายามอย่างสุดความสามารถเพื่อให้ที่อยู่ที่อ่านได้ง่ายสำหรับ ทั้งผู้ใช้และคนในพื้นที่ เพื่อให้บรรลุเป้าหมายนี้ โมเดลจึงส่งคืนที่ถนน ที่อยู่ในภาษาท้องถิ่น ถอดเสียงเป็นสคริปต์ที่อ่านได้ ถ้าจำเป็น โดยสังเกตภาษาที่ต้องการ อื่นๆ ทั้งหมด ที่อยู่จะแสดงเป็นภาษาที่ต้องการ องค์ประกอบที่อยู่คือ ทั้งหมดจะแสดงผลในภาษาเดียวกัน โดยเลือกจาก คอมโพเนนต์
- หากไม่มีชื่อในภาษาที่ต้องการ API จะใช้ ที่ใกล้เคียงที่สุด
- ภาษาที่ต้องการจะมีอิทธิพลเล็กน้อยต่อชุดผลลัพธ์ที่ API เลือกจะแสดงผล และลำดับการส่งกลับ โปรแกรมเข้ารหัสพิกัดภูมิศาสตร์จะแปลตัวย่อแตกต่างกันไปตามภาษา เช่น ตัวย่อของประเภทถนน หรือคำพ้องความหมาย ใช้ได้ในภาษาหนึ่ง แต่ไม่ใช่อีกภาษาหนึ่ง
locationBias
ระบุพื้นที่ที่จะค้นหา ตำแหน่งนี้ก่อให้เกิดความลำเอียง ซึ่งหมายความว่า ผลลัพธ์ที่อยู่รอบๆ ตำแหน่งที่ระบุสามารถแสดงผลได้ รวมถึงผลลัพธ์ นอกพื้นที่ที่ระบุ
คุณสามารถระบุ
locationRestriction
หรือlocationBias
แต่ไม่ใช่ทั้ง 2 อย่าง ให้คิดว่าlocationRestriction
เป็นการระบุ ภูมิภาคที่ผลการค้นหาต้องอยู่ภายใน และlocationBias
เป็น ระบุภูมิภาคที่ผลลัพธ์ต้องอยู่ใกล้แต่สามารถอยู่ภายนอก พื้นที่นั้นระบุพื้นที่เป็นวิวพอร์ตสี่เหลี่ยมผืนผ้าหรือวงกลม
วงกลมกำหนดด้วยจุดศูนย์กลางและรัศมีเป็นเมตร รัศมี ต้องอยู่ระหว่าง 0.0 ถึง 50000.0 รัศมีเริ่มต้นคือ 0.0 เช่น
"locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
สี่เหลี่ยมผืนผ้าคือวิวพอร์ตละติจูด-ลองจิจูด ซึ่งแสดงเป็น อยู่ในแนวทแยงมุมตรงข้ามจุดต่ำและสูง จุดต่ำทำเครื่องหมายอยู่ทางตะวันตกเฉียงใต้ มุมของสี่เหลี่ยมผืนผ้า และจุดสูงแสดงถึงทิศตะวันออกเฉียงเหนือ ของสี่เหลี่ยมผืนผ้า
วิวพอร์ตถือว่าเป็น บริเวณที่ถูกปิด ซึ่งหมายความว่ามีอาณาเขตรวมอยู่ด้วย ขอบเขตของละติจูด ต้องอยู่ระหว่าง -90 ถึง 90 องศา และขอบเขตของลองจิจูด ต้องอยู่ในช่วง -180 ถึง 180 องศา
- หาก
low
=high
วิวพอร์ตประกอบด้วย จุดเดียวนั้น - หาก
low.longitude
>high.longitude
มีการกลับช่วงลองจิจูด (วิวพอร์ตข้ามผ่าน 180 องศา ลองจิจูด) - หาก
low.longitude
= -180 องศาและhigh.longitude
= 180 องศา วิวพอร์ตจะรวมทั้งหมด ลองจิจูด - หาก
low.longitude
= 180 องศาและhigh.longitude
= -180 องศา ช่วงลองจิจูดคือ ว่างเปล่า - หาก
low.latitude
>high.latitude
ไม่มีข้อมูลช่วงละติจูด
ต้องป้อนข้อมูลทั้ง "ต่ำ" และ "สูง" และไม่สามารถเลือก ว่างเปล่า วิวพอร์ตที่ว่างเปล่าจะทำให้เกิดข้อผิดพลาด
ตัวอย่างเช่น วิวพอร์ตนี้ล้อมรอบนิวยอร์กซิตี้ทั้งหมด
"locationBias": { "rectangle": { "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } } }
- หาก
locationRestriction
ระบุพื้นที่ที่จะค้นหา ผลลัพธ์นอกพื้นที่ที่ระบุไม่ได้ ส่งคืนแล้ว ระบุพื้นที่เป็นวิวพอร์ตสี่เหลี่ยมผืนผ้า ดูคำอธิบาย จาก
locationBias
สำหรับข้อมูลเกี่ยวกับการกำหนดวิวพอร์ตคุณสามารถระบุ
locationRestriction
หรือlocationBias
แต่ไม่ใช่ทั้ง 2 อย่าง ให้คิดว่าlocationRestriction
เป็นการระบุ ภูมิภาคที่ผลการค้นหาต้องอยู่ภายใน และlocationBias
เป็น ระบุภูมิภาคที่ผลลัพธ์ต้องอยู่ใกล้แต่สามารถอยู่ภายนอก พื้นที่นั้น-
maxResultCount (เลิกใช้งานแล้ว)
ระบุจำนวนผลลัพธ์ (ระหว่าง 1 ถึง 20) ที่จะแสดงในหนึ่งหน้า เช่น การตั้งค่า
maxResultCount
เป็น 5 จะแสดงผลเป็น 5 ในหน้าแรก ถ้ามีผลลัพธ์เพิ่มเติมที่สามารถส่งคืนได้ จากข้อความค้นหา คำตอบจะรวมnextPageToken
ที่คุณ สามารถส่งผ่านไปยังคำขอที่ตามมาเพื่อเข้าถึงหน้าถัดไป evOptions
ระบุพารามิเตอร์สำหรับระบุรถยนต์ไฟฟ้า (EV) ที่ใช้ได้ ขั้วต่อการชาร์จและอัตราการชาร์จ
connectorTypes
กรองตามประเภทหัวชาร์จ EV ที่มีในสถานที่ ต สถานที่ที่ไม่สนับสนุนประเภทเครื่องมือเชื่อมต่อจะถูกกรอง ประเภทหัวชาร์จ EV ที่รองรับรวมประเภทหัวชาร์จไฟฟ้า (AC และ DC) ที่ชาร์จ, ที่ชาร์จ Tesla, ที่ชาร์จที่รองรับ GB/T (สำหรับการชาร์จ EV เร็วใน จีน) และที่ชาร์จของเต้ารับติดผนัง สำหรับข้อมูลเพิ่มเติม โปรดดูข้อมูลอ้างอิง เอกสารประกอบ
minimumChargingRateKw
กรองสถานที่ตามอัตราการชาร์จ EV ขั้นต่ำเป็นกิโลวัตต์ (กิโลวัตต์) ช่วง สถานที่ที่มีอัตราการชาร์จต่ำกว่าอัตราการชาร์จขั้นต่ำ ถูกกรองออก เช่น หากต้องการค้นหาที่ชาร์จ EV ที่มีอัตราการชาร์จที่ มีอย่างน้อย 10 กิโลวัตต์ คุณจะตั้งค่าพารามิเตอร์นี้เป็น "10" ได้
minRating
จำกัดผลการค้นหาให้แสดงเฉพาะผู้ที่มีคะแนนเฉลี่ยมากกว่า หรือเท่ากับขีดจำกัดนี้ ค่าต้องอยู่ระหว่าง 0.0 ถึง 5.0 (รวม) ครั้งละ 0.5 เช่น 0, 0.5, 1.0, ... , 5.0 ค่าต่างๆ ได้แก่ ปัดเศษขึ้นให้เป็นค่า 0.5 ที่ใกล้เคียงที่สุด เช่น ค่า 0.6 จะลบทั้งหมด ผลลัพธ์ที่มีคะแนนต่ำกว่า 1.0
openNow
หากเป็น
true
ให้ส่งคืนเฉพาะสถานที่ที่เปิดให้บริการเท่านั้น ในเวลาที่มีการส่งคำถาม หากเป็นfalse
ให้ส่งคืนธุรกิจทั้งหมด โดยไม่คํานึงถึงสถานะเปิด สถานที่ที่ไม่ได้ระบุเวลาทำการในฐานข้อมูล Google สถานที่ แสดงผลหากคุณตั้งค่าพารามิเตอร์นี้เป็นfalse
pageSize
ระบุจำนวนผลลัพธ์ (ระหว่าง 1 ถึง 20) ที่จะแสดงในหนึ่งหน้า เช่น การตั้งค่า
pageSize
เป็น 5 จะแสดงผลเป็น 5 ในหน้าแรก ถ้ามีผลลัพธ์เพิ่มเติมที่สามารถส่งคืนได้ จากข้อความค้นหา คำตอบจะรวมnextPageToken
ที่คุณ สามารถส่งผ่านไปยังคำขอที่ตามมาเพื่อเข้าถึงหน้าถัดไปpageToken
ระบุ
nextPageToken
จากเนื้อหาการตอบสนองของ หน้าก่อนหน้า-
priceLevels
จำกัดการค้นหาไว้เฉพาะสถานที่ที่มีการทำเครื่องหมายไว้ที่ระดับราคาบางระดับ ค่าเริ่มต้นคือเลือกระดับราคาทั้งหมด
ระบุอาร์เรย์ของค่าที่กําหนดไว้อย่างน้อย 1 ค่า
PriceLevel
เช่น
"priceLevels":["PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE"]
rankPreference
ระบุวิธีจัดอันดับผลลัพธ์ในการตอบกลับตามประเภทของ ข้อความค้นหา:
- สําหรับการค้นหาตามหมวดหมู่ เช่น "ร้านอาหารในหัวหิน"
RELEVANCE
(จัดอันดับผลการค้นหาตามความเกี่ยวข้องของการค้นหา) เป็นค่าเริ่มต้น คุณสามารถตั้งrankPreference
เป็นRELEVANCE
หรือDISTANCE
(จัดอันดับผลการค้นหาตามระยะทาง) - สำหรับคำค้นหาที่ไม่ใช่หมวดหมู่ เช่น "Mountain View, CA" เราขอแนะนำ
ว่าคุณไม่ได้ตั้งค่า
rankPreference
ไว้
- สําหรับการค้นหาตามหมวดหมู่ เช่น "ร้านอาหารในหัวหิน"
regionCode
รหัสภูมิภาคที่ใช้ในการจัดรูปแบบการตอบกลับ ระบุเป็น ค่ารหัส CLDR แบบ 2 อักขระ นอกจากนี้ พารามิเตอร์นี้อาจทำให้เกิดการให้น้ำหนักพิเศษด้วย ในผลการค้นหา ไม่มีค่าเริ่มต้น
หากชื่อประเทศของช่อง
formattedAddress
ใน การตอบกลับตรงกับregionCode
ระบบจะไม่ใส่รหัสประเทศ จากformattedAddress
พารามิเตอร์นี้ไม่มีผลต่อadrFormatAddress
ซึ่งรวมประเทศเสมอ เมื่อสามารถใช้ได้ หรือในshortFormattedAddress
ซึ่งไม่ รวมไว้ด้วยรหัส CLDR ส่วนใหญ่เหมือนกับรหัส ISO 3166-1 โดยมีข้อยกเว้นบางประการเด่นๆ ตัวอย่างเช่น ccTLD ของสหราชอาณาจักรคือ "uk" (.co.uk) ในขณะที่รหัส ISO 3166-1 คือ "gb" (โดยทางเทคนิคสำหรับ นิติบุคคล "สหราชอาณาจักรบริเตนใหญ่และไอร์แลนด์เหนือ") พารามิเตอร์อาจส่งผลต่อผลลัพธ์ตามกฎหมายที่เกี่ยวข้อง
strictTypeFiltering
ใช้กับพารามิเตอร์
includedType
เมื่อตั้งค่าเป็นtrue
เฉพาะสถานที่ที่ตรงกับประเภทที่ระบุโดย ระบบส่งกลับincludeType
หากตั้งค่าเป็น "เท็จ" คำตอบอาจมีตำแหน่งที่ไม่ตรงกับค่าเริ่มต้นได้ ประเภทที่ระบุ
ตัวอย่างการค้นหาข้อความ
ค้นหาสถานที่ตามสตริงการค้นหา
ตัวอย่างต่อไปนี้แสดงคำขอค้นหาข้อความสำหรับ "อาหารมังสวิรัติสไปซี่ในซิดนีย์ ออสเตรเลีย":
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.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'
โปรดทราบว่าส่วนหัว X-Goog-FieldMask
จะระบุว่า
คำตอบ
มีฟิลด์ข้อมูลต่อไปนี้ places.displayName,places.formattedAddress
การตอบกลับจะอยู่ในรูปแบบดังนี้
{ "places": [ { "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, { "formattedAddress": "175 First Ave, Five Dock NSW 2046, Australia", "displayName": { "text": "Veggo Sizzle - Vegan & Vegetarian Restaurant, Five Dock, Sydney", "languageCode": "en" } }, { "formattedAddress": "29 King St, Sydney NSW 2000, Australia", "displayName": { "text": "Peace Harmony", "languageCode": "en" } }, ... ] }
เพิ่มประเภทข้อมูลในมาสก์ของช่องเพื่อแสดงข้อมูลเพิ่มเติม
ตัวอย่างเช่น เพิ่ม places.types,places.websiteUri
เพื่อใส่พารามิเตอร์
ประเภทร้านอาหารและที่อยู่เว็บใน
คำตอบ:
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.displayName,places.formattedAddress,places.types,places.websiteUri' \ 'https://places.googleapis.com/v1/places:searchText'
ตอนนี้การตอบกลับจะอยู่ในรูปแบบดังนี้
{ "places": [ { "types": [ "vegetarian_restaurant", "vegan_restaurant", "chinese_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "websiteUri": "http://www.motherchusvegetarian.com.au/", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, { "types": [ "vegan_restaurant", "thai_restaurant", "vegetarian_restaurant", "indian_restaurant", "italian_restaurant", "american_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "175 First Ave, Five Dock NSW 2046, Australia", "websiteUri": "http://www.veggosizzle.com.au/", "displayName": { "text": "Veggo Sizzle - Vegan & Vegetarian Restaurant, Five Dock, Sydney", "languageCode": "en" } }, ... ] }
กรองสถานที่ตามระดับราคา
ใช้ตัวเลือก priceLevel
เพื่อกรองผลลัพธ์เป็นร้านอาหาร
มีราคาไม่แพงหรือแพงพอสมควร:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "priceLevels":["PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE"] }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \ 'https://places.googleapis.com/v1/places:searchText'
ตัวอย่างนี้ยังใช้ส่วนหัว X-Goog-FieldMask
เพื่อเพิ่มพารามิเตอร์
places.priceLevel
ในฟิลด์ข้อมูล
คำตอบ
เพื่อให้อยู่ในรูปแบบ:
{ "places": [ { "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, { "formattedAddress": "115 King St, Newtown NSW 2042, Australia", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Green Mushroom", "languageCode": "en" } }, ... ] }
เพิ่มตัวเลือกอื่นเพื่อปรับแต่งการค้นหาของคุณ เช่น includedType
minRating
rankPreference
openNow
และพารามิเตอร์อื่นๆ ที่อธิบายไว้ใน
พารามิเตอร์ที่ไม่บังคับ
ค้นหาสถานที่ในพื้นที่
ใช้ locationRestriction
หรือ locationBias
แต่ไม่ใช่ทั้ง 2 อย่างเพื่อจำกัดการค้นหาไว้ในพื้นที่หนึ่งๆ นึกถึง locationRestriction
เป็นการระบุภูมิภาคที่ผลการค้นหาจะต้องอยู่ภายใน และ locationBias
เป็นการระบุภูมิภาคที่ผลลัพธ์ต้องอยู่ใกล้แต่สามารถอยู่ภายนอกได้
พื้นที่นั้น
ตัวอย่างต่อไปนี้แสดงคำขอค้นหาข้อความสำหรับ "อาหารมังสวิรัติรสเผ็ด" มีความลำเอียงอยู่ภายในระยะ 500 เมตรจากจุดใน ในตัวเมืองซานฟรานซิสโก คำขอนี้แสดงเฉพาะผลลัพธ์ 10 รายการแรกสำหรับ ที่เปิดทำการอยู่
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food", "openNow": true, "pageSize": 10, "locationBias": { "circle": { "center": {"latitude": 37.7937, "longitude": -122.3965}, "radius": 500.0 } }, }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'
ค้นหาที่ชาร์จ EV ที่มีอัตราการชาร์จขั้นต่ำ
ใช้ minimumChargingRateKw
และ connectorTypes
เพื่อ
ค้นหาตำแหน่งที่มีที่ชาร์จที่ใช้ได้กับ EV ของคุณ
ตัวอย่างต่อไปนี้แสดงคำขอการชาร์จ Tesla และ J1772 ประเภท 1 EV หัวชาร์จไฟฟ้าที่มีอัตราการชาร์จขั้นต่ำ 10 กิโลวัตต์ใน Mountain View, CA เพียง 4 ผลลัพธ์
curl -X POST -d '{ "textQuery": "EV Charging Station Mountain View", "pageSize": 4, "evOptions": { "minimumChargingRateKw": 10, "connectorTypes": ["EV_CONNECTOR_TYPE_J1772","EV_CONNECTOR_TYPE_TESLA"] } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H "X-Goog-FieldMask: places.displayName,places.evChargeOptions" \ 'https://places.googleapis.com/v1/places:searchText'
คำขอส่งคืนการตอบกลับต่อไปนี้:
{ "places": [ { "displayName": { "text": "EVgo Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 16, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_CHADEMO", "maxChargeRateKw": 100, "count": 8, "availableCount": 5, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 100, "count": 2, "availableCount": 2, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 350, "count": 6, "availableCount": 3, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" } ] } }, { "displayName": { "text": "EVgo Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 6, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 100, "count": 4, "availableCount": 3, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 350, "count": 2, "availableCount": 0, "outOfServiceCount": 2, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" } ] } }, { "displayName": { "text": "EVgo Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 5, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_J1772", "maxChargeRateKw": 3.5999999046325684, "count": 1, "availableCount": 0, "outOfServiceCount": 1, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CHADEMO", "maxChargeRateKw": 50, "count": 2, "availableCount": 0, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 50, "count": 2, "availableCount": 0, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" } ] } }, { "displayName": { "text": "Electric Vehicle Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 10, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_OTHER", "maxChargeRateKw": 210, "count": 10 } ] } } ] }
ระบุจำนวนผลลัพธ์ที่จะแสดงต่อ 1 หน้า
ใช้พารามิเตอร์ pageSize
เพื่อระบุจำนวนผลลัพธ์ที่จะ
ผลตอบแทนต่อหน้า พารามิเตอร์ nextPageToken
ในเนื้อหาการตอบกลับ
จะให้โทเค็นที่สามารถนำไปใช้ในการเรียกครั้งต่อๆ มาเพื่อเข้าถึงหน้าถัดไปของ
รายการ
ตัวอย่างต่อไปนี้แสดงคำขอสำหรับ "พิซซ่าในนิวยอร์ก" จำกัดที่ 5 รายการ ผลลัพธ์ต่อหน้า:
curl -X POST -d '{ "textQuery": "pizza in New York", "pageSize": 5 }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H "X-Goog-FieldMask: places.id,nextPageToken" \ 'https://places.googleapis.com/v1/places:searchText'
{ "places": [ { "id": "ChIJifIePKtZwokRVZ-UdRGkZzs" }, { "id": "ChIJPxPd_P1YwokRfzLhSiACEoU" }, { "id": "ChIJrXXKn5NZwokR78g0ipCnY60" }, { "id": "ChIJ6ySICVZYwokR9rIK8HjXhzE" }, { "id": "ChIJ6xvs94VZwokRnT1D2lX2OTw" } ], "nextPageToken": "AeCrKXsZWzNVbPzO-MRWPu52jWO_Xx8aKwOQ69_Je3DxRpfdjClq8Ekwh3UcF2h2Jn75kL6PtWLGV4ecQri-GEUKN_OFpJkdVc-JL4Q" }
หากต้องการเข้าถึงผลการค้นหาหน้าถัดไป ให้ใช้ pageToken
เพื่อส่งผ่าน
nextPageToken
ในเนื้อหาคำขอ:
curl -X POST -d '{ "textQuery": "pizza in New York", "pageSize": 5, "pageToken": "AeCrKXsZWzNVbPzO-MRWPu52jWO_Xx8aKwOQ69_Je3DxRpfdjClq8Ekwh3UcF2h2Jn75kL6PtWLGV4ecQri-GEUKN_OFpJkdVc-JL4Q" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H "X-Goog-FieldMask: places.id,nextPageToken" \ 'https://places.googleapis.com/v1/places:searchText'วันที่
{ "places": [ { "id": "ChIJL-LN1N1ZwokR8K2jACu6Ydw" }, { "id": "ChIJjaD94kFZwokR-20CXqlpy_4" }, { "id": "ChIJ6ffdpJNZwokRmcafdROM5q0" }, { "id": "ChIJ8Q2WSpJZwokRQz-bYYgEskM" }, { "id": "ChIJ8164qwFZwokRhplkmhvq1uE" } ], "nextPageToken": "AeCrKXvPd6uUy-oj96W2OaqEe2pUD8QTxOM8-sKfUcFsC9t2Wey5qivrKGoGSxcZnyc7RPmaFfAktslrKbUh31ZDTkL0upRmaxA7c_c" }
ลองใช้งาน
โปรแกรมสำรวจ API ช่วยให้คุณสามารถสร้างคำขอตัวอย่าง ที่คุณสามารถทำความคุ้นเคยกับ API และตัวเลือก API
เลือกไอคอน API
ที่ด้านขวาของหน้า
ขยายแสดงพารามิเตอร์มาตรฐาน และตั้งค่า
fields
พารามิเตอร์ ลงในช่อง maskแก้ไขเนื้อหาคำขอ (ไม่บังคับ)
เลือกปุ่มดำเนินการ ในกล่องโต้ตอบป๊อปอัป ให้เลือกบัญชีที่ ที่คุณต้องการใช้เพื่อสร้างคำขอ
ในแผงโปรแกรมสำรวจ API ให้เลือกไอคอนขยาย
เพื่อขยายหน้าต่างโปรแกรมสำรวจ API