مواصفات الإيجار

يمثّل إنشاء عقد الإيجار الخطوة الأولى عند حجز موعد. تتحقّق الواجهة الخلفية للشريك من أنّ خانة المواعيد المطلوبة صالحة وما زالت متاحة. على المستوى الداخلي، يفرض الشريك رسومًا مؤقتة للتأكّد من توفّر رصيد في الخانة الإعلانية المحددة، بحيث تنتهي صلاحيته تلقائيًا في lease_expiration_time. يُسمح للخلفية بتعديل lease_expiration_time، مثلاً إذا كان وقت الاستخدام المطلوب طويلاً جدًا. يتم إرجاع عقد الإيجار الذي تم إنشاؤه إلى العميل.

// Temporary lease for an inventory slot
message Lease {
  // ID of the lease. Ignored when creating a lease.
  string lease_id = 1;

  // ID of the merchant for the slot
  string merchant_id = 2;

  // ID of the merchant service
  string service_id = 3;

  // Start time of the appointment slot
  google.protobuf.Timestamp start_time = 4;

  // Duration of the appointment slot
  google.protobuf.Duration duration = 5;

  // Opaque tag that identifies the availability slot and matches the value
  // provided in the availability feed.
  string availability_tag = 8;

  // The set of resources that disambiguates the appointment slot, e.g. by
  // indicating the staff member and room selected by the user.
  Resources resources = 9;

  // Unique identifier for this lease, chosen by the client. Serves as an
  // idempotency token for [ext.maps.booking.partner.v0.CreateLease] requests.
  string client_reference = 6;

  // Expiration time of the lease
  google.protobuf.Timestamp lease_expiration_time = 7;
}

// Reference to a [ext.maps.booking.partner.v0.Lease] that has been created via
// [ext.maps.booking.partner.v0.CreateLease]
message LeaseReference {
  // Lease ID
  string lease_id = 1;
}