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

Sostituisce e restituisce la Availability di un Service esistente di un commerciante gestito dall'aggregatore specificato.

Richiesta HTTP

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

L'URL utilizza la sintassi di transcodifica gRPC.

Parametri del percorso

Parametri
serviceAvailability.name

string

Il nome della risorsa del servizio a cui applicare questa impostazione. Nel formato partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione 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)
      }
    ]
  }
}
Campi
serviceAvailability.startTimeRestrict

string (Timestamp format)

Se fornito, considereremo le entità Availability fornite come uno snapshot completo da [startTimeRestrict, endTimeRestrict). Ovvero, tutte le disponibilità esistenti verranno eliminate se la seguente condizione è vera:

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

Se è impostato un messaggio di durata, la condizione è ulteriormente limitata:

  availability.duration == durationRestrict

Se è impostato un messaggio resourcesRestrict, la condizione è ulteriormente limitata:

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

Questi campi vengono in genere utilizzati per fornire un aggiornamento completo della disponibilità in un determinato intervallo di tempo.

Se imposti startTimeRestrict e lasci endTimeRestrict non impostato, significa che consideri tutto il tempo a partire da startTimeRestrict.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

serviceAvailability.endTimeRestrict

string (Timestamp format)

Se imposti endTimeRestrict e lasci startTimeRestrict non impostato, significa che consideri tutto il tempo fino a endTimeRestrict.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

serviceAvailability.durationRestrict

string (Duration format)

L'impostazione della durata limita ulteriormente l'ambito dell'aggiornamento solo alla disponibilità con la durata corrispondente.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con 's'. Esempio: "3.5s".

serviceAvailability.resourcesRestrict

object (Resources)

L'impostazione di resourcesRestrict limita ulteriormente l'ambito dell'aggiornamento solo a questo insieme di risorse. Tutti i campi ID delle risorse devono corrispondere esattamente.

serviceAvailability.availability[]

object (Availability)

Il nuovo elenco di disponibilità.

Corpo della risposta

Un elenco di disponibilità e a chi/quando devono essere applicate.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

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

string

Il nome della risorsa del servizio a cui applicare questa impostazione. Nel formato partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

startTimeRestrict

string (Timestamp format)

Se fornito, considereremo le entità Availability fornite come uno snapshot completo da [startTimeRestrict, endTimeRestrict). Ovvero, tutte le disponibilità esistenti verranno eliminate se la seguente condizione è vera:

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

Se è impostato un messaggio di durata, la condizione è ulteriormente limitata:

  availability.duration == durationRestrict

Se è impostato un messaggio resourcesRestrict, la condizione è ulteriormente limitata:

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

Questi campi vengono in genere utilizzati per fornire un aggiornamento completo della disponibilità in un determinato intervallo di tempo.

Se imposti startTimeRestrict e lasci endTimeRestrict non impostato, significa che consideri tutto il tempo a partire da startTimeRestrict.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

endTimeRestrict

string (Timestamp format)

Se imposti endTimeRestrict e lasci startTimeRestrict non impostato, significa che consideri tutto il tempo fino a endTimeRestrict.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

durationRestrict

string (Duration format)

L'impostazione della durata limita ulteriormente l'ambito dell'aggiornamento solo alla disponibilità con la durata corrispondente.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con 's'. Esempio: "3.5s".

resourcesRestrict

object (Resources)

L'impostazione di resourcesRestrict limita ulteriormente l'ambito dell'aggiornamento solo a questo insieme di risorse. Tutti i campi ID delle risorse devono corrispondere esattamente.

availability[]

object (Availability)

Il nuovo elenco di disponibilità.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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