روش CreateLease

پشتیبانی از ایجاد اجاره‌نامه اختیاری است. این پشتیبانی برای شرکایی که علاقه‌مند به پیاده‌سازی این قابلیت هستند، اعمال می‌شود. لطفاً قبل از شروع، برای تعیین واجد شرایط بودن با مرکز اقدامات تماس بگیرید.

ایجاد اجاره‌نامه اولین قدم هنگام ایجاد رزرو با پشتیبانی Lease است. بخش پشتیبانی همکار، معتبر و در دسترس بودن بازه زمانی درخواستی را تأیید می‌کند. در داخل، همکار یک وقفه موقت برای بازه زمانی درخواستی ایجاد می‌کند که طوری تنظیم شده است که به طور خودکار در زمان lease_expiration_time منقضی شود. بخش پشتیبانی مجاز است lease_expiration_time را تغییر دهد، مثلاً اگر زمان اجاره درخواستی بیش از حد طولانی باشد. اجاره‌نامه ایجاد شده به مشتری بازگردانده می‌شود. سپس مشتری درخواست ایجاد رزرو برای اجاره‌نامه را می‌دهد.

اگر ایجاد اجاره به دلیل هرگونه خطای منطق کسب و کار با شکست مواجه شود، خطا باید در پاسخ ثبت شود. برای اطلاعات دقیق‌تر به بخش «شکست رزرو» مراجعه کنید.

درخواست

درخواست اجاره ایجاد کنید

مقدار بازگشتی

ایجاد پاسخ اجاره

الزامات:

  • lease_id باید توسط بک‌اند شریک ایجاد شده و در CreateLeaseResponse تنظیم شود.
  • زمان انقضای اجاره (lease_expiration_time) باید در CreateLeaseResponse تنظیم شود.
  • اگر فیلد منابع در CreateLeaseRequest مشخص شده باشد، باید در CreateLeaseResponse نیز تنظیم شود و با CreateLeaseRequest مطابقت داشته باشد.
  • تمام فیلدهای دیگر در CreateLeaseResponse باید تنظیم شده و با CreateLeaseRequest مطابقت داشته باشند.

کدهای خطای gRPC کانونیکال

  • 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 {
  option features.(pb.java).nest_in_file_class = YES;

  // 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 {
  option features.(pb.java).nest_in_file_class = YES;

  // 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;
}