Method: inventory.partners.availability.replace

הפעולה מחליפה את Availability של Services קיים. הקריאה הזו לקבוצה לא מבטיחה אטומיות. יוחזרו רק משבצות זמינות שעודכנו בהצלחה.

בקשת HTTP

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

כתובת ה-URL כתובה בתחביר של gRPC Transcoding.

פרמטרים של נתיב

פרמטרים
parent

string

הפורמט של partners/{partner_id}.

גוף הבקשה

גוף הבקשה מכיל נתונים במבנה הבא:

ייצוג ב-JSON
{
  "extendedServiceAvailability": [
    {
      object (ExtendedServiceAvailability)
    }
  ]
}
שדות
extendedServiceAvailability[]

object (ExtendedServiceAvailability)

חלון הזמינות המורחב שמשמש להחלפת משבצות הזמינות הקיימות.

גוף התשובה

תשובה לפעולת החלפה של כמות גדולה של משבצות זמינות של Service. ההודעה תכלול רק משבצות שהעדכון שלהן הסתיים בהצלחה

אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל נתונים במבנה הבא:

ייצוג ב-JSON
{
  "extendedServiceAvailability": [
    {
      object (ExtendedServiceAvailability)
    }
  ]
}
שדות
extendedServiceAvailability[]

object (ExtendedServiceAvailability)

ההודעות על זמינות מורחבת של השירות שעודכנו בהצלחה, ששימשו להחלפת משבצות הזמינות הקיימות.

היקפי הרשאות

נדרש היקף ההרשאות הבא של OAuth:

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

ExtendedServiceAvailability

רשימה של זמינות והגדרות של מי/מתי צריך להחיל אותן.

ייצוג ב-JSON
{
  "merchantId": string,
  "serviceId": string,
  "startTimeRestrict": string,
  "endTimeRestrict": string,
  "durationRestrict": string,
  "resourcesRestrict": {
    object (Resources)
  },
  "availability": [
    {
      object (Availability)
    }
  ]
}
שדות
merchantId

string

זהו שדה חובה שבו מציינים לאיזה מוכר שייכות הודעות הזמינות שמופיעות בהמשך.

serviceId

string

זהו שדה חובה שבו מציינים לאיזה שירות שייכות הודעות הזמינות שמופיעות בהמשך.

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.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

endTimeRestrict

string (Timestamp format)

הגדרת endTimeRestrict בלי להגדיר startTimeRestrict מתפרשת כהגדרה של כל הזמן עד endTimeRestrict.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

durationRestrict

string (Duration format)

הגדרת משך הזמן מגבילה עוד יותר את היקף העדכון רק לזמינות עם משך זמן תואם.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה, שמסתיים ב-'s'. דוגמה: "3.5s".

resourcesRestrict

object (Resources)

הגדרת משאבים מגבילה עוד יותר את היקף העדכון רק לקבוצת המשאבים הזו. כל שדות המזהים של המשאבים צריכים להיות זהים לחלוטין.

availability[]

object (Availability)

רשימת הזמינות החדשה.