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

Zastępuje wartość Availability istniejącego Service sprzedawcy zarządzanego przez określonego pośrednika i zwraca tę wartość.

Żądanie HTTP

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

Adres URL używa składni transkodowania gRPC.

Parametry ścieżki

Parametry
serviceAvailability.name

string

Nazwa zasobu usługi, do której ma zostać zastosowany ten wskaźnik. W formacie partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis 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)
      }
    ]
  }
}
Pola
serviceAvailability.startTimeRestrict

string (Timestamp format)

Jeśli podane encje dostępności zostaną podane, uznamy je za pełny zrzut z okresu [startTimeRestrict, endTimeRestrict). Oznacza to, że cała istniejąca dostępność zostanie usunięta, jeśli zostanie spełniony ten warunek:

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

Jeśli ustawiony jest komunikat o czasie trwania, warunek jest jeszcze bardziej ograniczony:

  availability.duration == durationRestrict

Jeśli ustawiono komunikat o ograniczeniach dotyczących zasobów, warunek jest jeszcze bardziej ograniczony:

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

Te pola są zwykle używane do zapewnienia pełnej aktualizacji dostępności w danym przedziale czasu.

Ustawienie elementu startTimeRestrict z pozostawieniem nieskonfigurowanej funkcji endTimeRestrict jest interpretowane jako oznaczanie, że cały czas zaczyna się od startTimeRestrict.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

serviceAvailability.endTimeRestrict

string (Timestamp format)

Ustawienie endTimeRestrict przy pozostawieniu wartości startTimeRestrict nieustawionego będzie interpretowane jako oznaczanie całego czasu aż do zakończenia czasu endTimeRestrict.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

serviceAvailability.durationRestrict

string (Duration format)

Ustawienie czasu trwania jeszcze bardziej ogranicza zakres aktualizacji tylko do dostępności z pasującym czasem trwania.

Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku, kończący się cyfrą „s”. Przykład: "3.5s".

serviceAvailability.resourcesRestrict

object (Resources)

Ustawienie ograniczeń zasobów jeszcze bardziej ogranicza zakres aktualizacji tylko do tego zbioru zasobów. Wszystkie pola identyfikatorów zasobów muszą być dokładnie takie same.

serviceAvailability.availability[]

object (Availability)

Nowa lista dostępności.

Treść odpowiedzi

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Lista dostępności wraz z informacjami o tym, do kogo i kiedy należy aplikować.

Zapis JSON
{
  "name": string,
  "startTimeRestrict": string,
  "endTimeRestrict": string,
  "durationRestrict": string,
  "resourcesRestrict": {
    object (Resources)
  },
  "availability": [
    {
      object (Availability)
    }
  ]
}
Pola
name

string

Nazwa zasobu usługi, do której ma zostać zastosowany ten wskaźnik. W formacie partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

startTimeRestrict

string (Timestamp format)

Jeśli podane encje dostępności zostaną podane, uznamy je za pełny zrzut z okresu [startTimeRestrict, endTimeRestrict). Oznacza to, że cała istniejąca dostępność zostanie usunięta, jeśli zostanie spełniony ten warunek:

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

Jeśli ustawiony jest komunikat o czasie trwania, warunek jest jeszcze bardziej ograniczony:

  availability.duration == durationRestrict

Jeśli ustawiono komunikat o ograniczeniach dotyczących zasobów, warunek jest jeszcze bardziej ograniczony:

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

Te pola są zwykle używane do zapewnienia pełnej aktualizacji dostępności w danym przedziale czasu.

Ustawienie elementu startTimeRestrict z pozostawieniem nieskonfigurowanej funkcji endTimeRestrict jest interpretowane jako oznaczanie, że cały czas zaczyna się od startTimeRestrict.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

endTimeRestrict

string (Timestamp format)

Ustawienie endTimeRestrict przy pozostawieniu wartości startTimeRestrict nieustawionego będzie interpretowane jako oznaczanie całego czasu aż do zakończenia czasu endTimeRestrict.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

durationRestrict

string (Duration format)

Ustawienie czasu trwania jeszcze bardziej ogranicza zakres aktualizacji tylko do dostępności z pasującym czasem trwania.

Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku, kończący się cyfrą „s”. Przykład: "3.5s".

resourcesRestrict

object (Resources)

Ustawienie ograniczeń zasobów jeszcze bardziej ogranicza zakres aktualizacji tylko do tego zbioru zasobów. Wszystkie pola identyfikatorów zasobów muszą być dokładnie takie same.

availability[]

object (Availability)

Nowa lista dostępności.

Zakresy autoryzacji

Wymaga następującego zakresu OAuth:

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