Method: inventory.partners.availability.replace

Remplace la valeur Availability de Services existants. Cet appel par lot ne garantit pas l'atomicité. Seuls les créneaux de disponibilité mis à jour sont renvoyés.

Requête HTTP

POST https://mapsbooking.googleapis.com/v1alpha/inventory/{parent=partners/*}/availability:replace

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
parent

string

Format partners/{partner_id}.

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "extendedServiceAvailability": [
    {
      object (ExtendedServiceAvailability)
    }
  ]
}
Champs
extendedServiceAvailability[]

object (ExtendedServiceAvailability)

Disponibilité étendue du service utilisée pour remplacer les créneaux de disponibilité existants.

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient des données présentant la structure suivante :

Réponse par lot pour remplacer plusieurs créneaux de disponibilité du Service. Seuls les créneaux mis à jour sont inclus dans ce message.

Représentation JSON
{
  "extendedServiceAvailability": [
    {
      object (ExtendedServiceAvailability)
    }
  ]
}
Champs
extendedServiceAvailability[]

object (ExtendedServiceAvailability)

Messages bien mis à jour concernant la disponibilité étendue du service qui ont été utilisés pour remplacer les créneaux de disponibilité existants.

Champs d'application des autorisations

Requiert le champ d'application OAuth suivant :

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

ExtendedServiceAvailability

Liste de disponibilités et à qui/quand les appliquer

Représentation JSON
{
  "merchantId": string,
  "serviceId": string,
  "startTimeRestrict": string,
  "endTimeRestrict": string,
  "durationRestrict": string,
  "resourcesRestrict": {
    object (Resources)
  },
  "availability": [
    {
      object (Availability)
    }
  ]
}
Champs
merchantId

string

Ce champ obligatoire permet d'indiquer à quel marchand appartiennent les messages de disponibilité ci-dessous.

serviceId

string

Ce champ obligatoire permet d'indiquer à quel service appartiennent les messages de disponibilité ci-dessous.

startTimeRestrict

string (Timestamp format)

Nous traitons les entités de disponibilité éventuellement fournies comme un instantané complet de [startTimeRestrict, endTimeRestrict). Autrement dit, le système supprime toute disponibilité existante si la condition suivante est remplie :

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

Si un message "duration" (durée) est défini, la condition est encore plus exigeante :

  availability.duration == durationRestrict

Si un message "resourcesRestrict" est défini, la condition est plus exigeante encore :

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

Ces champs sont généralement utilisés pour fournir une mise à jour complète de la disponibilité pour une période donnée.

Si vous définissez la valeur startTimeRestrict, mais pas la valeur endTimeRestrict, le système en conclut que toutes les heures commencent à startTimeRestrict.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

endTimeRestrict

string (Timestamp format)

Si vous définissez la valeur endTimeRestrict, mais pas la valeur startTimeRestrict, le système en conclut que toutes les heures sont incluses jusqu'à la fin de endTimeRestrict.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

durationRestrict

string (Duration format)

Lorsque la durée est définie, toute mise à jour de la disponibilité est limitée aux créneaux de cette durée.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

resourcesRestrict

object (Resources)

Lorsque resourcesRestrict est défini, toute mise à jour est limitée à cet ensemble de ressources seulement. Tous les champs des identifiants de ressources doivent correspondre exactement.

availability[]

object (Availability)

Nouvelle liste de disponibilités.