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

किसी खास एग्रीगेटर से मैनेज किए जाने वाले व्यापारी या कंपनी के मौजूदा Service के Availability को बदलता है और उसे लौटाता है.

एचटीटीपी अनुरोध

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

यह यूआरएल 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

अगर संसाधन सीमित है मैसेज सेट किया गया है, तो शर्त और ज़्यादा प्रतिबंधित कर दी जाती है:

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

आम तौर पर, इन फ़ील्ड का इस्तेमाल किसी तय समयसीमा में उपलब्धता की पूरी जानकारी देने के लिए किया जाता है.

endTimeLimit को सेट न करते समय, startTimeLimit को सेट करने का मतलब है कि startTimeLimit से शुरू होने वाले सभी समय से है.

आरएफ़सी3339 यूटीसी "ज़ुलु" में टाइमस्टैंप फ़ॉर्मैट, नैनोसेकंड रिज़ॉल्यूशन और ज़्यादा से ज़्यादा नौ फ़्रैक्शनल अंकों के साथ हो सकता है. उदाहरण के लिए: "2014-10-02T15:01:23Z" और "2014-10-02T15:01:23.045123456Z".

serviceAvailability.endTimeRestrict

string (Timestamp format)

startTimeLimit को सेट किए बिना सेट करने का मतलब है कि उसका मतलब endTimeLimit तक है.

आरएफ़सी3339 यूटीसी के "Zulu" फ़ॉर्मैट में एक टाइमस्टैंप, नैनोसेकंड रिज़ॉल्यूशन और नौ दशमलव अंकों के साथ. उदाहरण: "2014-10-02T15:01:23Z" और "2014-10-02T15:01:23.045123456Z".

serviceAvailability.durationRestrict

string (Duration format)

अवधि सेट करने पर, अपडेट का दायरा सिर्फ़ उस अवधि तक सीमित हो जाता है जो उपलब्धता की अवधि से मेल खाती है.

सेकंड में कुल नौ दशमलव अंक, जो 's' पर खत्म होते हैं. उदाहरण: "3.5s".

serviceAvailability.resourcesRestrict

object (Resources)

resourcesRestrict सेट करने पर, अपडेट का दायरा सिर्फ़ संसाधनों के इस सेट तक सीमित हो जाता है. संसाधनों के सभी आईडी फ़ील्ड एक जैसे होने चाहिए.

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)

अगर यह पैरामीटर उपलब्ध कराया जाता है, तो हम इसे [startTimeLimit, endTimeLimit] से मिले, खरीदारी के लिए उपलब्धता की इकाइयों का पूरा स्नैपशॉट मानेंगे. इसका मतलब है कि अगर यह शर्त पूरी होती है, तो उपलब्धता की सभी मौजूदा जानकारी मिटा दी जाएगी:

   startTimeRestrict <= availability.start_sec &&
   availability.start_sec < endTimeRestrict

अगर अवधि का मैसेज सेट किया गया है, तो शर्त पर और पाबंदी लगा दी जाती है:

  availability.duration == durationRestrict

अगर संसाधन सीमित है मैसेज सेट किया गया है, तो शर्त और ज़्यादा प्रतिबंधित कर दी जाती है:

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

आम तौर पर, इन फ़ील्ड का इस्तेमाल किसी तय समयसीमा में उपलब्धता की पूरी जानकारी देने के लिए किया जाता है.

endTimeLimit को सेट न करते समय, startTimeLimit को सेट करने का मतलब है कि startTimeLimit से शुरू होने वाले सभी समय से है.

आरएफ़सी3339 यूटीसी "ज़ुलु" में टाइमस्टैंप फ़ॉर्मैट, नैनोसेकंड रिज़ॉल्यूशन और ज़्यादा से ज़्यादा नौ फ़्रैक्शनल अंकों के साथ हो सकता है. उदाहरण के लिए: "2014-10-02T15:01:23Z" और "2014-10-02T15:01:23.045123456Z".

endTimeRestrict

string (Timestamp format)

startTimeLimit को सेट किए बिना सेट करने का मतलब है कि उसका मतलब endTimeLimit तक है.

आरएफ़सी3339 यूटीसी के "Zulu" फ़ॉर्मैट में एक टाइमस्टैंप, नैनोसेकंड रिज़ॉल्यूशन और नौ दशमलव अंकों के साथ. उदाहरण: "2014-10-02T15:01:23Z" और "2014-10-02T15:01:23.045123456Z".

durationRestrict

string (Duration format)

अवधि सेट करने पर, अपडेट का दायरा सिर्फ़ उस अवधि तक सीमित हो जाता है जो उपलब्धता की अवधि से मेल खाती है.

सेकंड में कुल नौ दशमलव अंक, जो 's' पर खत्म होते हैं. उदाहरण: "3.5s".

resourcesRestrict

object (Resources)

resourcesRestrict सेट करने पर, अपडेट का दायरा सिर्फ़ संसाधनों के इस सेट तक सीमित हो जाता है. संसाधनों के सभी आईडी फ़ील्ड एक जैसे होने चाहिए.

availability[]

object (Availability)

उपलब्धता की नई सूची.

अनुमति के दायरे

नीचे दिए गए OAuth के लिंक की ज़रूरत हाेती है:

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