CreateLease 메서드

임대 생성 지원은 선택사항입니다. 이 기능을 구현하는 데 관심이 있는 파트너에게 적용됩니다. 시작하기 전에 작업 센터에 문의하여 자격요건을 확인하세요.

임대 지원으로 예약을 만들 때 첫 번째 단계는 임대를 만드는 것입니다. 파트너 백엔드에서 요청된 약속 시간대가 유효하고 예약 가능한지 확인합니다. 내부적으로 파트너는 요청된 시간대를 일시적으로 보류하며 이 보류는 lease_expiration_time에 자동으로 만료되도록 설정됩니다. 예를 들어 요청된 임대 시간이 너무 긴 경우 백엔드에서 lease_expiration_time을 수정할 수 있습니다. 생성된 임대가 클라이언트에 반환됩니다. 그런 다음 클라이언트가 임대 예약을 요청합니다.

비즈니스 로직 오류로 인해 임대를 생성하지 못하면 응답에 오류가 채워집니다. 자세한 내용은 예약 실패를 참고하세요.

요청

CreateLeaseRequest

반환 값

CreateLeaseResponse

요건:

  • 파트너 백엔드에서 lease_id를 생성하고 CreateLeaseResponse에서 설정해야 합니다.
  • lease_expiration_time은 CreateLeaseResponse에서 설정해야 합니다.
  • 리소스 필드가 CreateLeaseRequest에 지정된 경우, CreateLeaseResponse에서 설정되고 CreateLeaseRequest와 일치해야 합니다.
  • CreateLeaseResponse의 다른 모든 필드가 설정되고 CreateLeaseRequest와 일치해야 합니다.

표준 gRPC 오류 코드

  • INVALID_ARGUMENT(잘못된 판매자 ID, 서비스 ID 또는 시간대 사양)
// 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;
}