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

নির্দিষ্ট অ্যাগ্রিগেটর দ্বারা পরিচালিত কোনো মার্চেন্টের বিদ্যমান Service Availability প্রতিস্থাপন করে এবং তা ফেরত দেয়।

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)

যদি প্রদান করা হয়, আমরা প্রদত্ত অ্যাভেইলেবিলিটি এনটিটিগুলোকে [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

এই ফিল্ডগুলি সাধারণত একটি নির্দিষ্ট সময়সীমার মধ্যে প্রাপ্যতার সম্পূর্ণ হালনাগাদ তথ্য প্রদানের জন্য ব্যবহৃত হয়।

endTimeRestrict সেট না করে startTimeRestrict সেট করলে, এর অর্থ দাঁড়ায় startTimeRestrict থেকে শুরু হওয়া সমস্ত সময়।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30"

serviceAvailability.endTimeRestrict

string ( Timestamp format)

startTimeRestrict সেট না করে endTimeRestrict সেট করা হলে, তা endTimeRestrict পর্যন্ত সমস্ত সময়কে বোঝাবে বলে ধরে নেওয়া হয়।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "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 )

resourcesRestrict সেট করলে আপডেটের পরিধি আরও সীমাবদ্ধ হয়ে শুধু এই নির্দিষ্ট রিসোর্স সেটের মধ্যেই সীমাবদ্ধ থাকে। রিসোর্সগুলোর সমস্ত id ফিল্ড অবশ্যই হুবহু মিলতে হবে।

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

এই ফিল্ডগুলি সাধারণত একটি নির্দিষ্ট সময়সীমার মধ্যে প্রাপ্যতার সম্পূর্ণ হালনাগাদ তথ্য প্রদানের জন্য ব্যবহৃত হয়।

endTimeRestrict সেট না করে startTimeRestrict সেট করলে, এর অর্থ দাঁড়ায় startTimeRestrict থেকে শুরু হওয়া সমস্ত সময়।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30"

endTimeRestrict

string ( Timestamp format)

startTimeRestrict সেট না করে endTimeRestrict সেট করা হলে, তা endTimeRestrict পর্যন্ত সমস্ত সময়কে বোঝাবে বলে ধরে নেওয়া হয়।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "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 )

resourcesRestrict সেট করলে আপডেটের পরিধি আরও সীমাবদ্ধ হয়ে শুধু এই নির্দিষ্ট রিসোর্স সেটের মধ্যেই সীমাবদ্ধ থাকে। রিসোর্সগুলোর সমস্ত id ফিল্ড অবশ্যই হুবহু মিলতে হবে।

availability[]

object ( Availability )

উপলব্ধতার নতুন তালিকা।

অনুমোদনের পরিধি

নিম্নলিখিত OAuth স্কোপ প্রয়োজন:

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