เมธอด CreateLease

การสนับสนุนการสร้างสัญญาเช่าเป็นตัวเลือกเสริม นโยบายนี้มีผลกับพาร์ทเนอร์ที่สนใจใช้ฟังก์ชันนี้ โปรดติดต่อศูนย์การดำเนินการเพื่อตรวจสอบการมีสิทธิ์ก่อนเริ่มต้น

การสร้างสัญญาเช่าเป็นขั้นตอนแรกเมื่อสร้างการจองด้วยการสนับสนุนการเช่า แบ็กเอนด์ของพาร์ทเนอร์จะยืนยันว่าช่วงเวลาที่ขอนัดหมายนั้นถูกต้องและพร้อมให้บริการ ในทางภายใน พาร์ทเนอร์จะสร้างการกันวงเงินชั่วคราวสำหรับช่วงเวลาที่ขอ ซึ่งตั้งค่าให้หมดอายุโดยอัตโนมัติที่ 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;
}