การสนับสนุนการสร้างสัญญาเช่าเป็นตัวเลือกเสริม นโยบายนี้มีผลกับพาร์ทเนอร์ที่สนใจใช้ฟังก์ชันนี้ โปรดติดต่อศูนย์การดำเนินการเพื่อตรวจสอบการมีสิทธิ์ก่อนเริ่มต้น
การสร้างสัญญาเช่าเป็นขั้นตอนแรกเมื่อสร้างการจองด้วยการสนับสนุนการเช่า แบ็กเอนด์ของพาร์ทเนอร์จะยืนยันว่าช่วงเวลาที่ขอนัดหมายนั้นถูกต้องและพร้อมให้บริการ ในทางภายใน พาร์ทเนอร์จะสร้างการกันวงเงินชั่วคราวสำหรับช่วงเวลาที่ขอ ซึ่งตั้งค่าให้หมดอายุโดยอัตโนมัติที่ lease_expiration_time ระบบอนุญาตให้แบ็กเอนด์แก้ไข lease_expiration_time เช่น หากระยะเวลาเช่าที่ขอนานเกินไป ระบบจะแสดงผลสัญญาเช่าที่สร้างขึ้นแก่ไคลเอ็นต์ จากนั้นลูกค้าจะขอสร้างการจองสำหรับสัญญาเช่า
หากสร้างสัญญาเช่าไม่สำเร็จเนื่องจากข้อผิดพลาดของตรรกะทางธุรกิจ ระบบจะแสดงข้อผิดพลาดในการตอบกลับ ดูข้อมูลโดยละเอียดได้ที่การจองไม่สำเร็จ
คำขอ
CreateLeaseRequest
ผลลัพธ์
CreateLeaseResponse
ข้อกำหนด
- แบ็กเอนด์ของพาร์ทเนอร์ต้องสร้าง lease_id และตั้งค่าใน CreateLeaseResponse
- ต้องตั้งค่า lease_expiration_time ใน CreateLeaseResponse
- หากระบุช่องทรัพยากรใน CreateLeaseRequest จะต้องตั้งค่าใน CreateLeaseResponse และตรงกับ CreateLeaseRequest
- ต้องตั้งค่าช่องอื่นๆ ทั้งหมดใน CreateLeaseResponse และตรงกับ CreateLeaseRequest
รหัสข้อผิดพลาด gRPC ของ Canonical
INVALID_ARGUMENT
(รหัสผู้ขาย รหัสบริการ หรือข้อกำหนดเวลาของช่วงเวลาไม่ถูกต้อง)
// Request to create a [ext.maps.booking.partner.v2.Lease] for a slot in the // inventory. The expiration time in the returned Lease may be modified by the // backend, e.g. if the requested lease period is too long. message CreateLeaseRequest { // The lease to be created with information about the appointment slot // (required) Lease lease = 1; } // Response for the [ext.maps.booking.partner.v2.CreateLease] RPC with the // created [ext.maps.booking.partner.v2.Lease] message CreateLeaseResponse { // The created [ext.maps.booking.partner.v2.Lease] (required) Lease lease = 1; // If creating a lease fails, this field should reflect the business logic // error (e.g., slot has become unavailable) and lease field is expected to be // unset. (required if failure occurs) BookingFailure booking_failure = 2; }