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

في حال ضبط رسالة resourceRestrict، يتم فرض قيود إضافية على الشرط:

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

وتُستخدَم هذه الحقول عادةً لتقديم معلومات كاملة حول مدى التوفّر في نطاق زمني معيّن.

يُفسر ضبط startTimeRestrict عند ترك endTimeRestrict على أنه يعني جميع الأوقات التي تبدأ في startTimeRestrict.

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

serviceAvailability.endTimeRestrict

string (Timestamp format)

يتم تفسير ضبط endTimeRestrict أثناء ترك startTimeRestrict على أنه لا يتم توفير كل الوقت وصولاً إلى endTimeRestrict.

طابع زمني بتنسيق RFC3339 UTC "Zulu" ، بدقة نانو ثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "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

في حال ضبط رسالة resourceRestrict، يتم فرض قيود إضافية على الشرط:

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

وتُستخدَم هذه الحقول عادةً لتقديم معلومات كاملة حول مدى التوفّر في نطاق زمني معيّن.

يُفسر ضبط startTimeRestrict عند ترك endTimeRestrict على أنه يعني جميع الأوقات التي تبدأ في startTimeRestrict.

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

endTimeRestrict

string (Timestamp format)

يتم تفسير ضبط endTimeRestrict أثناء ترك startTimeRestrict على أنه لا يتم توفير كل الوقت وصولاً إلى endTimeRestrict.

طابع زمني بتنسيق RFC3339 UTC "Zulu" ، بدقة نانو ثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "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