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 Transcoding 構文を使用します。

パスパラメータ

パラメータ
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)

指定した場合、提供された Availability エンティティは [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

これらのフィールドは通常、特定の期間の空き情報を完全に更新するために使用されます。

endTimeRestrict を設定せずに startTimeRestrict を設定すると、startTimeRestrict から始まる全期間とみなされます。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

serviceAvailability.endTimeRestrict

string (Timestamp format)

startTimeRestrict を設定せずに endTimeRestrict を設定すると、endTimeRestrict までの全期間とみなされます。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

serviceAvailability.durationRestrict

string (Duration format)

duration を設定すると、一致する期間の空き情報のみに更新の範囲が限定されます。

s で終わる小数 9 桁までの秒単位の期間。例: "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)

指定した場合、提供された Availability エンティティは [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

これらのフィールドは通常、特定の期間の空き情報を完全に更新するために使用されます。

endTimeRestrict を設定せずに startTimeRestrict を設定すると、startTimeRestrict から始まる全期間とみなされます。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

endTimeRestrict

string (Timestamp format)

startTimeRestrict を設定せずに endTimeRestrict を設定すると、endTimeRestrict までの全期間とみなされます。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

durationRestrict

string (Duration format)

duration を設定すると、一致する期間の空き情報のみに更新の範囲が限定されます。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

resourcesRestrict

object (Resources)

resourceRestrict を設定すると、このリソースのセットに更新の範囲が限定されます。リソースのすべての ID フィールドが完全に一致する必要があります。

availability[]

object (Availability)

空き情報の新しいリスト。

認可スコープ

次の OAuth スコープが必要です。

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