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

Заменяет Availability существующего Service мерчанта, управляемого указанным агрегатором, и возвращает его.

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
    },
    "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)
        },
        "requireCreditCard": enum (RequireCreditCard),
        "ticketTypeId": [
          string
        ],
        "durationRequirement": enum (DurationRequirement),
        "schedulingRuleOverrides": {
          object (SchedulingRuleOverrides)
        },
        "confirmationMode": enum (ConfirmationMode)
      }
    ]
  }
}
Поля
serviceAvailability.startTimeRestrict

string ( Timestamp format)

Если предоставлено, мы будем считать предоставленные объекты доступности полным снимком из [startTimeRestrict, endTimeRestrict). То есть вся существующая доступность будет удалена, если выполняется следующее условие:

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

Если установлено сообщение о продолжительности, условие дополнительно ограничивается:

  availability.duration == durationRestrict

Если установлено сообщение resourcesRestrict, условие дополнительно ограничивается:

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

Эти поля обычно используются для предоставления полной информации о доступности в заданном временном диапазоне.

Установка startTimeRestrict при оставлении endTimeRestrict неустановленным интерпретируется как означает, что все время начинается с startTimeRestrict.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

serviceAvailability.endTimeRestrict

string ( Timestamp format)

Установка endTimeRestrict при оставлении startTimeRestrict неустановленным интерпретируется как означает все время до endTimeRestrict.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

serviceAvailability.durationRestrict

string ( Duration format)

Установка продолжительности еще больше ограничивает объем обновления только доступностью соответствующей продолжительности.

Длительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « s ». Пример: "3.5s" .

serviceAvailability.resourcesRestrict

object ( Resources )

Установка resourcesRestrict дополнительно ограничивает область обновления только этим набором ресурсов. Все поля идентификаторов ресурсов должны точно совпадать.

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

Если установлено сообщение о продолжительности, условие дополнительно ограничивается:

  availability.duration == durationRestrict

Если установлено сообщение resourcesRestrict, условие дополнительно ограничивается:

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

Эти поля обычно используются для предоставления полной информации о доступности в заданном временном диапазоне.

Установка startTimeRestrict при оставлении endTimeRestrict неустановленным интерпретируется как означает, что все время начинается с startTimeRestrict.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

endTimeRestrict

string ( Timestamp format)

Установка endTimeRestrict при оставлении startTimeRestrict неустановленным интерпретируется как означает все время до endTimeRestrict.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

durationRestrict

string ( Duration format)

Установка продолжительности еще больше ограничивает объем обновления только доступностью соответствующей продолжительности.

Длительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « s ». Пример: "3.5s" .

resourcesRestrict

object ( Resources )

Установка resourcesRestrict дополнительно ограничивает область обновления только этим набором ресурсов. Все поля идентификаторов ресурсов должны точно совпадать.

availability[]

object ( Availability )

Новый список наличия.

Области авторизации

Требуется следующая область действия OAuth:

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