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

Sostituisce il valore Availability di un Service esistente di un commerciante gestito dall'aggregatore specificato e lo restituisce.

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 applicarlo. 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
    },
    "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)
      }
    ]
  }
}
Campi
serviceAvailability.startTimeRestrict

string (Timestamp format)

Se fornite, considereremo le entità disponibilità fornite come un'istantanea completa di [startTimeRestrict, endTimeRestrict). In altre parole, tutta la disponibilità esistente verrà eliminata se si verifica la seguente condizione:

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

Se viene impostato un messaggio relativo alla durata, la condizione è ulteriormente limitata:

  availability.duration == durationRestrict

Se viene impostato un messaggio resourceRestrict, 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.

L'impostazione di startTimeRestrict se il criterio endTimeRestrict non viene configurato viene interpretato come significato all'inizio di ogni intervallo di tempo in startTimeRestrict.

Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

serviceAvailability.endTimeRestrict

string (Timestamp format)

L'impostazione di endTimeRestrict se il criterio startTimeRestrict non viene impostato, significa che indica tutto il tempo fino a endTimeRestrict.

Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

serviceAvailability.durationRestrict

string (Duration format)

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

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

serviceAvailability.resourcesRestrict

object (Resources)

L'impostazione di resourceRestrict 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

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

Un elenco della disponibilità e di chi/quando devono essere applicati.

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 applicarlo. Nel formato partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

startTimeRestrict

string (Timestamp format)

Se fornite, considereremo le entità disponibilità fornite come un'istantanea completa di [startTimeRestrict, endTimeRestrict). In altre parole, tutta la disponibilità esistente verrà eliminata se si verifica la seguente condizione:

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

Se viene impostato un messaggio relativo alla durata, la condizione è ulteriormente limitata:

  availability.duration == durationRestrict

Se viene impostato un messaggio resourceRestrict, 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.

L'impostazione di startTimeRestrict se il criterio endTimeRestrict non viene configurato viene interpretato come significato all'inizio di ogni intervallo di tempo in startTimeRestrict.

Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

endTimeRestrict

string (Timestamp format)

L'impostazione di endTimeRestrict se il criterio startTimeRestrict non viene impostato, significa che indica tutto il tempo fino a endTimeRestrict.

Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

durationRestrict

string (Duration format)

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

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

resourcesRestrict

object (Resources)

L'impostazione di resourceRestrict 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