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

تستبدل Availability لسمة Service حالية خاصة بتاجر يديره موقع التجميع المحدّد وتُرجعه.

طلب HTTP

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

يستخدِم عنوان URL بنية تحويل ترميز gRPC.

مَعلمات المسار

المعلمات
serviceAvailability.name

string

اسم مورد الخدمة المطلوب تطبيق هذا عليه. بتنسيق partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

نص الطلب

يحتوي نص الطلب على بيانات بالبنية التالية:

تمثيل 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)
      }
    ]
  }
}
الحقول
serviceAvailability.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.

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

serviceAvailability.endTimeRestrict

string (Timestamp format)

يتم تفسير ضبط endTimeRestrict مع ترك startTimeRestrict على القيمة "جميع الأوقات" حتى endTimeRestrict.

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

serviceAvailability.durationRestrict

string (Duration format)

يؤدي ضبط المدة إلى حصر نطاق التحديث فقط بمدى التوفّر بمدة مطابقة.

مدة بالثواني مكونة من تسعة أرقام كسور كحد أقصى وتنتهي بالأرقام "s" مثال: "3.5s"

serviceAvailability.resourcesRestrict

object (Resources)

يؤدي ضبط الموارد إلى حصر نطاق التحديث على هذه المجموعة من الموارد فقط. يجب أن تتطابق جميع حقول أرقام التعريف للموارد تمامًا.

serviceAvailability.availability[]

object (Availability)

تمثّل هذه السمة القائمة الجديدة لمدى التوفّر.

نص الاستجابة

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

قائمة بمدى التوفّر والأشخاص الذين يجب تقديم طلبهم ومتى يجب تطبيقها.

تمثيل JSON
{
  "name": string,
  "startTimeRestrict": string,
  "endTimeRestrict": string,
  "durationRestrict": string,
  "resourcesRestrict": {
    object (Resources)
  },
  "availability": [
    {
      object (Availability)
    }
  ]
}
الحقول
name

string

اسم مورد الخدمة المطلوب تطبيق هذا عليه. بتنسيق partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

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.

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

endTimeRestrict

string (Timestamp format)

يتم تفسير ضبط endTimeRestrict مع ترك startTimeRestrict على القيمة "جميع الأوقات" حتى endTimeRestrict.

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

durationRestrict

string (Duration format)

يؤدي ضبط المدة إلى حصر نطاق التحديث فقط بمدى التوفّر بمدة مطابقة.

مدة بالثواني مكونة من تسعة أرقام كسور كحد أقصى وتنتهي بالأرقام "s" مثال: "3.5s"

resourcesRestrict

object (Resources)

يؤدي ضبط الموارد إلى حصر نطاق التحديث على هذه المجموعة من الموارد فقط. يجب أن تتطابق جميع حقول أرقام التعريف للموارد تمامًا.

availability[]

object (Availability)

تمثّل هذه السمة القائمة الجديدة لمدى التوفّر.

نطاقات التفويض

يجب توفير نطاق OAuth التالي:

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