Method: inventory.partners.merchants.services.availability.replace

지정된 애그리게이터에서 관리하는 판매자의 기존 ServiceAvailability를 대체하고 반환합니다.

HTTP 요청

POST https://mapsbooking.googleapis.com/v1alpha/inventory/{serviceAvailability.name=partners/*/merchants/*/services/*}/availability:replace

URL은 gRPC 트랜스코딩 문법을 사용합니다.

경로 매개변수

매개변수
serviceAvailability.name

string

이를 적용할 서비스의 리소스 이름입니다. partners/{partner_id}/merchants/{merchantId}/services/{serviceId} 형식입니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "serviceAvailability": {
    "name": string,
    "startTimeRestrict": string,
    "endTimeRestrict": string,
    "durationRestrict": string,
    "resourcesRestrict": {
      "staffId": string,
      "staffName": string,
      "roomId": string,
      "roomName": string,
      "partySize": integer,
      "roomDescription": {
        object (Text)
      }
    },
    "availability": [
      {
        "startTime": string,
        "duration": string,
        "spotsTotal": string,
        "spotsOpen": string,
        "availabilityTag": string,
        "resources": {
          object (Resources)
        },
        "paymentOptionId": [
          string
        ],
        "recurrence": {
          object (Recurrence)
        },
        "scheduleException": [
          {
            object (ScheduleException)
          }
        ],
        "deposit": {
          object (Deposit)
        },
        "noShowFee": {
          object (NoShowFee)
        },
        "prepayment": {
          object (Prepayment)
        },
        "requireCreditCard": enum (RequireCreditCard),
        "ticketTypeId": [
          string
        ],
        "durationRequirement": enum (DurationRequirement),
        "schedulingRuleOverrides": {
          object (SchedulingRuleOverrides)
        },
        "confirmationMode": enum (ConfirmationMode),
        "linkoutRequiredReason": enum (LinkoutRequiredReason)
      }
    ]
  }
}
필드
serviceAvailability.startTimeRestrict

string (Timestamp format)

제공되는 경우 제공된 이용 가능 여부 항목이 [startTimeRestrict, endTimeRestrict)의 전체 스냅샷으로 간주됩니다. 즉 다음 조건이 참이면 기존의 이용 가능 여부가 모두 삭제됩니다.

   startTimeRestrict <= availability.start_sec &&
   availability.start_sec < endTimeRestrict

duration 메시지가 설정되면 조건이 추가로 제한됩니다.

  availability.duration == durationRestrict

resourcesRestrict 메시지가 설정되면 조건이 추가로 제한됩니다.

   availability.resources.staff_id == resourcesRestrict.staff_id &&
   availability.resources.room_id == resourcesRestrict.room_id

이 필드는 일반적으로 지정된 기간의 이용 가능 여부를 완전히 업데이트하는 데 사용됩니다.

startTimeRestrict를 설정하고 endTimeRestrict를 설정하지 않으면 startTimeRestrict에서 시작하는 모든 시간을 의미하는 것으로 해석됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

serviceAvailability.endTimeRestrict

string (Timestamp format)

endTimeRestrict를 설정하고 startTimeRestrict를 설정하지 않으면 endTimeRestrict까지의 모든 시간을 의미하는 것으로 해석됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

serviceAvailability.durationRestrict

string (Duration format)

duration을 설정하면 업데이트 범위가 일치하는 기간의 이용 가능 여부로만 제한됩니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

serviceAvailability.resourcesRestrict

object (Resources)

resourceRestrict를 설정하면 업데이트 범위가 이 리소스 집합으로만 추가로 제한됩니다. 리소스의 모든 ID 필드가 정확히 일치해야 합니다.

serviceAvailability.availability[]

object (Availability)

새로운 이용 가능 여부 목록입니다.

응답 본문

이용 가능 여부 및 적용 대상/시기의 목록입니다.

성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.

JSON 표현
{
  "name": string,
  "startTimeRestrict": string,
  "endTimeRestrict": string,
  "durationRestrict": string,
  "resourcesRestrict": {
    object (Resources)
  },
  "availability": [
    {
      object (Availability)
    }
  ]
}
필드
name

string

이를 적용할 서비스의 리소스 이름입니다. partners/{partner_id}/merchants/{merchantId}/services/{serviceId} 형식입니다.

startTimeRestrict

string (Timestamp format)

제공되는 경우 제공된 이용 가능 여부 항목이 [startTimeRestrict, endTimeRestrict)의 전체 스냅샷으로 간주됩니다. 즉 다음 조건이 참이면 기존의 이용 가능 여부가 모두 삭제됩니다.

   startTimeRestrict <= availability.start_sec &&
   availability.start_sec < endTimeRestrict

duration 메시지가 설정되면 조건이 추가로 제한됩니다.

  availability.duration == durationRestrict

resourcesRestrict 메시지가 설정되면 조건이 추가로 제한됩니다.

   availability.resources.staff_id == resourcesRestrict.staff_id &&
   availability.resources.room_id == resourcesRestrict.room_id

이 필드는 일반적으로 지정된 기간의 이용 가능 여부를 완전히 업데이트하는 데 사용됩니다.

startTimeRestrict를 설정하고 endTimeRestrict를 설정하지 않으면 startTimeRestrict에서 시작하는 모든 시간을 의미하는 것으로 해석됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

endTimeRestrict

string (Timestamp format)

endTimeRestrict를 설정하고 startTimeRestrict를 설정하지 않으면 endTimeRestrict까지의 모든 시간을 의미하는 것으로 해석됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

durationRestrict

string (Duration format)

duration을 설정하면 업데이트 범위가 일치하는 기간의 이용 가능 여부로만 제한됩니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

resourcesRestrict

object (Resources)

resourceRestrict를 설정하면 업데이트 범위가 이 리소스 집합으로만 추가로 제한됩니다. 리소스의 모든 ID 필드가 정확히 일치해야 합니다.

availability[]

object (Availability)

새로운 이용 가능 여부 목록입니다.

승인 범위

다음 OAuth 범위가 필요합니다.

  • https://www.googleapis.com/auth/mapsbooking