Method: inventory.partners.availability.replace

يستبدل Availability Services الحالي. لا يضمن طلب الدفع المجمّع هذا تنفيذ العمليات بشكل متسلسل. سيتم عرض خانات المواعيد التي تم تعديلها بنجاح فقط.

طلب HTTP

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

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

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

المعلمات
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)

في حال توفيرها، سنعتبر أنّ عناصر Availability المقدَّمة هي لقطة كاملة من [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)

قائمة جديدة بمدى التوفّر