Randevu alırken ilk adım, kiralama sözleşmesini oluşturmaktır. İş ortağı arka ucu, istenen randevu aralığının geçerli ve hâlâ kullanılabilir olduğunu doğrular. İş ortağı, dahili olarak istenen yer için geçici bir bekletme oluşturur. Bu bekletme, lease_expiration_time tarihinde otomatik olarak sona erecek şekilde ayarlanır. Arka uç, lease_expiration_time değerini değiştirebilir. Örneğin, istenen kiralama süresi çok uzunsa. Oluşturulan kiralama istemciye döndürülür.
// Temporary lease for an inventory slot message Lease { option features.(pb.java).nest_in_file_class = YES; // 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 { option features.(pb.java).nest_in_file_class = YES; // Lease ID string lease_id = 1; }