จะคำนวณเส้นทางที่ดีที่สุดสำหรับวัตถุประสงค์ของเส้นทางโดยพิจารณาจากชุดจุดอ้างอิงและจุดระหว่างกลาง ตลอดจนวัตถุประสงค์ของเส้นทาง และยังแสดงเส้นทางที่เร็วที่สุดและเส้นทางที่สั้นที่สุดเป็นเส้นทางอ้างอิงด้วย
หมายเหตุ: คุณต้องระบุมาสก์ช่องคำตอบในอินพุตสำหรับวิธีนี้ คุณสามารถระบุฟิลด์มาสก์การตอบกลับได้โดยใช้พารามิเตอร์ของ URL $fields หรือ fields หรือใช้ส่วนหัว HTTP/gRPC X-Goog-FieldMask (ดูพารามิเตอร์และส่วนหัว URL ที่ใช้ได้ ค่าดังกล่าวเป็นรายการเส้นทางของช่องที่คั่นด้วยคอมมา ดูเอกสารประกอบโดยละเอียดเกี่ยวกับวิธีสร้างเส้นทางฟิลด์
เช่น ในเมธอดนี้
- มาสก์ของช่องที่มีทั้งหมด (สำหรับการตรวจสอบด้วยตนเอง):  X-Goog-FieldMask: *
- ฟิลด์มาสก์ของระยะทาง ระยะเวลา โทเค็น และข้อมูลค่าผ่านทางของเส้นทาง:  X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo
Google ไม่สนับสนุนให้ใช้มาสก์ช่องการตอบสนองไวลด์การ์ด (*) หรือระบุมาสก์ช่องที่ระดับบนสุด (routes) เนื่องจากสาเหตุต่อไปนี้
- การเลือกเฉพาะฟิลด์ที่คุณต้องการช่วยให้เซิร์ฟเวอร์ของเราประหยัดรอบการคำนวณ ทำให้เราสามารถส่งคืนผลลัพธ์ให้คุณโดยมีเวลาในการตอบสนองที่น้อยลง
- การเลือกเฉพาะช่องที่คุณต้องการในเวิร์กสำหรับเวอร์ชันที่ใช้งานจริงจะช่วยให้มั่นใจได้ว่าประสิทธิภาพเวลาในการตอบสนองจะเสถียร เราอาจเพิ่มช่องคำตอบเพิ่มเติมในอนาคต และช่องใหม่เหล่านั้นอาจต้องใช้เวลาในการประมวลผลเพิ่มเติม หากเลือกช่องทั้งหมดหรือทุกช่องที่ระดับบนสุด คุณอาจพบว่าประสิทธิภาพการทำงานลดลงเนื่องจากระบบจะรวมช่องใหม่ใดๆ ที่เราเพิ่มไว้ในคำตอบโดยอัตโนมัติ
- การเลือกเฉพาะช่องที่ต้องการจะทำให้การตอบกลับมีขนาดเล็กลง ทำให้อัตราการส่งข้อมูลของเครือข่ายสูงขึ้น
คำขอ HTTP
POST https://routespreferred.googleapis.com/v1alpha:computeCustomRoutes
URL ใช้ไวยากรณ์การแปลง gRPC
เนื้อหาของคำขอ
เนื้อความของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
| การแสดง JSON | 
|---|
| { "origin": { object ( | 
| ช่อง | |
|---|---|
| origin | 
 ต้องระบุ จุดอ้างอิงต้นทาง | 
| destination | 
 ต้องระบุ จุดอ้างอิงปลายทาง | 
| intermediates[] | 
 ไม่บังคับ ชุดจุดแวะพักตามเส้นทาง (ไม่รวมจุดสิ้นสุด) สำหรับหยุดพักหรือผ่าน รองรับจุดแวะพักกลางทางสูงสุด 25 จุด | 
| travel | 
 ไม่บังคับ ระบุรูปแบบการเดินทาง รองรับเฉพาะ  | 
| routing | 
 ไม่บังคับ ระบุวิธีคํานวณเส้นทาง เซิร์ฟเวอร์พยายามใช้ค่ากำหนดการกำหนดเส้นทางที่เลือกเพื่อคํานวณเส้นทาง หากค่ากำหนดการกำหนดเส้นทางส่งผลให้เกิดข้อผิดพลาดหรือเวลาในการตอบสนองนานเกินไป ระบบจะแสดงข้อผิดพลาด คุณจะระบุตัวเลือกนี้ได้ก็ต่อเมื่อ  | 
| polyline | 
 ไม่บังคับ ระบุค่ากําหนดสำหรับคุณภาพของเส้นประกอบ | 
| polyline | 
 ไม่บังคับ ระบุการเข้ารหัสที่ต้องการสำหรับเส้นประกอบ | 
| departure | 
 ไม่บังคับ เวลาออกเดินทาง หากไม่ได้ตั้งค่านี้ ค่าเริ่มต้นจะเป็นเวลาที่ส่งคำขอ หากคุณตั้งค่านี้เป็นเวลาที่เกิดขึ้นแล้ว คำขอจะล้มเหลว การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนสูงสุด 9 หลัก ตัวอย่างเช่น  | 
| route | 
 ไม่บังคับ ชุดเงื่อนไขที่จะตอบสนองซึ่งส่งผลต่อวิธีคำนวณเส้นทาง | 
| route | 
 ต้องระบุ วัตถุประสงค์ของเส้นทางที่จะเพิ่มประสิทธิภาพ | 
| language | 
 ไม่บังคับ รหัสภาษา BCP-47 เช่น "en-US" หรือ "sr-Latn" โปรดดูข้อมูลเพิ่มเติมที่หัวข้อตัวระบุภาษา Unicode โปรดดูรายการภาษาที่รองรับในการสนับสนุนภาษา หากไม่ระบุค่านี้ ภาษาที่แสดงจะอนุมานจากตำแหน่งของคำขอเส้นทาง | 
| units | 
 ไม่บังคับ ระบุหน่วยวัดสำหรับช่องแสดงผล ซึ่งรวมถึงช่อง  | 
เนื้อหาการตอบกลับ
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ ComputeCustomRoutesResponse
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth ต่อไปนี้
- https://www.googleapis.com/auth/maps-platform.routespreferred
ดูข้อมูลเพิ่มเติมได้ที่ภาพรวม OAuth 2.0