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,
      "roomDescription": {
        object (Text)
      }
    },
    "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)
        },
        "prepayment": {
          object (Prepayment)
        },
        "requireCreditCard": enum (RequireCreditCard),
        "ticketTypeId": [
          string
        ],
        "durationRequirement": enum (DurationRequirement),
        "schedulingRuleOverrides": {
          object (SchedulingRuleOverrides)
        },
        "confirmationMode": enum (ConfirmationMode),
        "linkoutRequiredReason": enum (LinkoutRequiredReason)
      }
    ]
  }
}
الحقول
serviceAvailability.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".

serviceAvailability.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".

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)

في حال توفيرها، سنعتبر أنّ عناصر 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)

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

نطاقات الأذونات

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

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