रेट में बदलाव

खास जानकारी

इस एपीआई की मदद से, ऐसे तरीके तय किए जा सकते हैं जिनसे किसी दर पर डाइनैमिक तौर पर कार्रवाइयां लागू की जा सकें शर्तों को पूरा किया जाता है, जैसे कि कीमत में बदलाव करना या रिफ़ंड पाने की सुविधा चालू करना. promotions API के बिलकुल उलट, सिर्फ़ इस एपीआई का इस्तेमाल किया जा सकता है ज़रूरी शर्तें पूरी करने वाले ऐसे प्रमोशन जिनके लिए सबसे ज़्यादा छूट मिलती है, यह एपीआई हर कार्रवाई को लागू करता है जब कुछ शर्तें पूरी होती हों. इनमें कीमत के ऐसे अडजस्टमेंट भी शामिल हैं जो आखिर में कीमत बढ़ जाए.

अनुरोध

सिंटैक्स

RateModifications मैसेज इस सिंटैक्स का इस्तेमाल करता है:

<?xml version="1.0" encoding="UTF-8"?>
<RateModifications partner="partner_key"
                      id="message_ID"
                      timestamp="timestamp">
  <HotelRateModifications hotel_id="HotelID" action="[overlay]">
    <ItineraryRateModification id="ModificationID" action="[delete]">
      <BookingDates>
        <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week=""MTWHFSU_or_subset""/>
        <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week=""MTWHFSU_or_subset""/>
      </BookingDates>
      <BookingWindow min="integer" max="integer"/>
      <CheckinDates>
        <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week=""MTWHFSU_or_subset""/>
      </CheckinDates>
      <CheckoutDates>
        <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week=""MTWHFSU_or_subset""/>
      </CheckoutDates>
      <Devices>
        <Device type="[desktop|tablet|mobile]"/>
      </Devices>
      <LengthOfStay min="integer" max="integer"/>
      <MinimumAmount before_discount="integer"/>
      <RatePlans>
        <RatePlan id="PackageID_1"/>
        <RatePlan id="PackageID_2"/>
      </RatePlans>
      <RoomTypes>
        <RoomType id="RoomID_1"/>
        <RoomType id="RoomID_2"/>
      </RoomTypes>
      <StayDates application="[all|any]">
        <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week=""MTWHFSU_or_subset""/>
      </StayDates>
      <UserCountries type="[include|exclude]">
        <Country code="country_code"/>
      </UserCountries>
      <ModificationActions>
        <PriceAdjustment multiplier="float"/>
        <RateRule id="RateRuleID"/>
        <Refundable available="[false|true]"
                       refundable_until_days="number_of_days"
                       refundable_until_time="time"/>
        <Availability status="[unavailable]"/>
      </ModificationActions>
    </ItineraryRateModification>
  </HotelRateModifications>
</RateModifications>

एलिमेंट और एट्रिब्यूट

RateModifications मैसेज में ये एलिमेंट होते हैं और विशेषताएं:

एलिमेंट / @एट्रिब्यूट आवृत्तियां टाइप ब्यौरा
RateModifications 1 Complex element किराये में बदलाव करने के मैसेज का रूट एलिमेंट.
RateModifications / @partner 1 string इस मैसेज को भेजने के लिए पार्टनर का खाता. इस स्ट्रिंग का मान "पार्टनर कुंजी" वैल्यू यहां दी गई है खाते की सेटिंग वाले पेज पर जाएं.

ध्यान दें: अगर आपके पास कोई बैकएंड है, जो एक से ज़्यादा खाते हैं, तो यह मान ID से मेल खाना चाहिए <RequestorID> में बताई गई विशेषता मान आपके <OTA_HotelRateAmountNotifRQ> का हिस्सा और इसके लिए <OTA_HotelAvailNotifRQ> मैसेज जोड़ें.

RateModifications / @id 1 string अनुरोध वाले इस मैसेज के लिए यूनीक आइडेंटिफ़ायर. यह मान लौटाया जाता है डालें. a-z, A-Z, 0-9, _ जैसे वर्ण इस्तेमाल किए जा सकते हैं (अंडरस्कोर), और - (डैश).
RateModifications / @timestamp 1 DateTime यह मैसेज बनाए जाने की तारीख और समय.
RateModifications / HotelRateModifications 0..n HotelRateModifications

किसी प्रॉपर्टी की दरों में बदलाव. दर में किया गया हर बदलाव लागू होगा सिर्फ़ एक प्रॉपर्टी में ट्रांसफ़र कर सकते हैं.

ध्यान दें: अगर दरों में एक से ज़्यादा बदलाव लागू किए जा सकते हैं समान दर पर, सभी संशोधन लागू हो जाते हैं. कोई खास ऑर्डर नहीं है गारंटी के साथ.

RateModifications / HotelRateModifications / @hotel_id 1 string प्रॉपर्टी के लिए यूनीक आइडेंटिफ़ायर. यह मान का इस्तेमाल करके तय किया गया होटल आईडी <listing> एलिमेंट में <id> का इस्तेमाल करें. होटल आईडी को Hotel Center में भी शामिल किया गया है.
RateModifications / HotelRateModifications / @action 0..1 enum

अगर action तय नहीं किया गया है, तो बदलाव में इस एलिमेंट को इस होटल के लिए जोड़ा या अपडेट किया जाता है. अगर आपने action="overlay" पहले से तय है और फिर सभी पहले से तय किए गए हैं सबसे पहले, इस होटल के बदलाव मिटाए जाते हैं. इसके बाद, वे बदलाव जिनका ज़िक्र यहां किया गया है. अगर action="overlay" का इस्तेमाल किया जाता है और इस एलिमेंट में कोई बदलाव नहीं किया गया है, तो सभी इस होटल के बदलाव मिटा दिए गए हैं.

RateModifications / HotelRateModifications / ItineraryRateModification 0..200 ItineraryRateModification

किसी प्रॉपर्टी के लिए, एक दर में बदलाव करने का विकल्प.

ध्यान दें:दर में किए गए बदलावों को डीबग करना मुश्किल होता है और हम हमारा सुझाव है कि आप उनका कम से कम इस्तेमाल करें. अगर आपको इस्तेमाल के उदाहरण के लिए, अपने टेक्निकल अकाउंट मैनेजर (टीएएम) से संपर्क करना है की दरों में 200 से ज़्यादा बदलाव करने ज़रूरी हैं.

RateModifications / HotelRateModifications / ItineraryRateModification / @id 1 string दर में बदलाव के लिए यूनीक आइडेंटिफ़ायर. ज़्यादा से ज़्यादा 40 वर्ण डाले जा सकते हैं. a-z, A-Z, 0-9, और ये वर्ण इस्तेमाल किए जा सकते हैं _ (अंडरस्कोर), - (डैश), और . (पीरियड).
RateModifications / HotelRateModifications / ItineraryRateModification / @action 0..1 enum

अगर इसके बारे में नहीं बताया गया है और उसी दर में बदलाव किया गया है id को सेव नहीं किया जाता है, फिर दर में किए गए इस बदलाव को सेव किया जाता है. अगर बताया नहीं गया है और दर में बदलाव किया गया है, तो id को सेव किया जाता है. इसके बाद, मौजूदा दर में बदलाव यह होगा अपडेट किया गया.

अगर बताया गया है, तो वैल्यू "delete" होनी चाहिए. अगर "delete" बताया गया है, सेव की गई दर में किए गए बदलाव को, उसी id के साथ मिटा दिया गया है. "delete" का इस्तेमाल करते समय, इसमें कोई भी चाइल्ड एलिमेंट शामिल न करें <ItineraryRateModification>. साथ ही, "delete" को <HotelRateModifications action="overlay"/> के साथ इस्तेमाल करने की अनुमति है.

RateModifications / HotelRateModifications / ItineraryRateModification / BookingDates 0..1 BookingDates एक या उससे ज़्यादा तारीख की सीमाओं के लिए कंटेनर, जो बुकिंग के समय तय करता है दर में बदलाव लागू करने के लिए किया जाता है.
RateModifications / HotelRateModifications / ItineraryRateModification / BookingDates / DateRange 1..99 DateRange तारीख की वह सीमा जिससे तय होता है कि किराये के लिए बुकिंग कब की जानी चाहिए संशोधन नहीं करेगा.
RateModifications / HotelRateModifications / ItineraryRateModification / BookingDates / DateRange / @start 0..1 Date प्रॉपर्टी के टाइम ज़ोन के हिसाब से, शुरू होने की तारीख (इसमें ये भी शामिल हैं) तारीख की सीमा चुनें. यह तारीख end तारीख. अगर start तय नहीं है, तो तारीख शुरू होने की तारीख के हिसाब से, रेंज की सीमा लागू नहीं होती.
RateModifications / HotelRateModifications / ItineraryRateModification / BookingDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख तारीख की सीमा चुनें. यह तारीख, start तारीख. अगर end तय नहीं है, तो तारीख खत्म होने की तारीख के हिसाब से, सीमा असल में अनलिमिटेड होती है.
RateModifications / HotelRateModifications / ItineraryRateModification / BookingDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर नहीं बताया गया है, तो तारीख की सीमा में सभी दिनों की अनुमति है. हर स्ट्रिंग में मौजूद वर्ण दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" तय करता है हफ़्ते के दिन, तारीख की सीमा में अनुमति है.

मान्य वर्ण हैं:

  • सोमवार का किराया M
  • मंगलवार का T
  • बुधवार का W
  • गुरुवार का H
  • शुक्रवार का F
  • शनिवार का S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य होता है.

RateModifications / HotelRateModifications / ItineraryRateModification / BookingWindow 0..1 BookingWindow उस समयावधि के बारे में बताता है जिसमें बुकिंग चेक इन करने की तारीख (प्रॉपर्टी के टाइम ज़ोन के हिसाब से). उदाहरण के लिए, बुकिंग विंडो की अवधि 7 दिन पर सेट की जा सकती है, लेकिन 180 दिनों से ज़्यादा नहीं, तय करें.
RateModifications / HotelRateModifications / ItineraryRateModification / BookingWindow / @min 0..1 integer बुकिंग के लिए, चेक-इन से पहले कम से कम दिनों की संख्या दर में बदलाव लागू करने के लिए. अगर यह तय नहीं किया गया है, तो कोई कम से कम सीमा नहीं है.
RateModifications / HotelRateModifications / ItineraryRateModification / BookingWindow / @max 0..1 integer बुकिंग के लिए, चेक-इन से पहले ज़्यादा से ज़्यादा दिनों की संख्या चुनना ज़रूरी है दर में बदलाव लागू करने के लिए. अगर यह तय नहीं किया गया है, तो अधिकतम नहीं है.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckinDates 0..1 CheckinDates एक या उससे ज़्यादा तारीख की सीमाओं के लिए कंटेनर, जो यह तय करता है कि चेक-इन कब करना ज़रूरी है दर में बदलाव लागू करने के लिए होता है.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckinDates / DateRange 1..99 DateRange तारीख की वह सीमा जिससे तय होता है कि दर के लिए चेक-इन कब करना ज़रूरी है संशोधन नहीं करेगा. इस एलिमेंट की ज़रूरत नहीं है, अगर आपको दर में किए गए एक या उससे ज़्यादा बदलावों को मिटा सकता है.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckinDates / DateRange / @start 0..1 Date प्रॉपर्टी के टाइम ज़ोन के हिसाब से, शुरू होने की तारीख (इसमें ये भी शामिल हैं) तारीख की सीमा चुनें. यह तारीख end तारीख. अगर start तय नहीं है, तो तारीख शुरू होने की तारीख के हिसाब से, रेंज की सीमा लागू नहीं होती.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckinDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख तारीख की सीमा चुनें. यह तारीख, start तारीख. अगर end तय नहीं है, तो तारीख खत्म होने की तारीख के हिसाब से, सीमा असल में अनलिमिटेड होती है.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckinDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर नहीं बताया गया है, तो तारीख की सीमा में सभी दिनों की अनुमति है. हर स्ट्रिंग में मौजूद वर्ण दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" तय करता है हफ़्ते के दिन, तारीख की सीमा में अनुमति है.

मान्य वर्ण हैं:

  • सोमवार का किराया M
  • मंगलवार का T
  • बुधवार का W
  • गुरुवार का H
  • शुक्रवार का F
  • शनिवार का S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य होता है.

RateModifications / HotelRateModifications / ItineraryRateModification / CheckoutDates 0..1 CheckoutDates एक या उससे ज़्यादा तारीख की सीमाओं के लिए कंटेनर, जो चेक-आउट करते समय तय करता है दर में बदलाव लागू करने के लिए यह ज़रूरी है.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckoutDates / DateRange 1..99 DateRange तारीख की वह सीमा जिससे तय होता है कि दर के लिए चेक-आउट कब होना चाहिए संशोधन नहीं करेगा. इस एलिमेंट की ज़रूरत नहीं है, अगर आपको दर में किए गए एक या उससे ज़्यादा बदलावों को मिटा सकता है.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckoutDates / DateRange / @start 0..1 Date प्रॉपर्टी के टाइम ज़ोन के हिसाब से, शुरू होने की तारीख (इसमें ये भी शामिल हैं) तारीख की सीमा चुनें. यह तारीख end तारीख. अगर start तय नहीं है, तो तारीख शुरू होने की तारीख के हिसाब से, रेंज की सीमा लागू नहीं होती.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckoutDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख तारीख की सीमा चुनें. यह तारीख, start तारीख. अगर end तय नहीं है, तो तारीख खत्म होने की तारीख के हिसाब से, सीमा असल में अनलिमिटेड होती है.
RateModifications / HotelRateModifications / ItineraryRateModification / CheckoutDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर नहीं बताया गया है, तो तारीख की सीमा में सभी दिनों की अनुमति है. हर स्ट्रिंग में मौजूद वर्ण दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" तय करता है हफ़्ते के दिन, तारीख की सीमा में अनुमति है.

मान्य वर्ण हैं:

  • सोमवार का किराया M
  • मंगलवार का T
  • बुधवार का W
  • गुरुवार का H
  • शुक्रवार का F
  • शनिवार का S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य होता है.

RateModifications / HotelRateModifications / ItineraryRateModification / Devices 0..1 Devices यह कंटेनर उन उपयोगकर्ता के डिवाइसों की सूची बनाता है जो दर में बदलाव. अगर बताया गया है, तो सिर्फ़ दर संशोधन यह तब लागू होता है, जब उपयोगकर्ता सूची में दिए गए किसी डिवाइस से मेल खाता हो. अगर इसके बारे में नहीं बताया गया है, तो यह दर में बदलाव लागू करने पर पाबंदी नहीं लगाता.
RateModifications / HotelRateModifications / ItineraryRateModification / Devices / Device 1..3 Device उपयोगकर्ता के उस टाइप के बारे में बताता है जो रेट की ज़रूरी शर्तें पूरी करता है बदलाव.
RateModifications / HotelRateModifications / ItineraryRateModification / Devices / Device / @type 1 enum एक तरह का डिवाइस. मान desktop होना चाहिए, tablet या mobile.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions 1 ModificationActions

ऐसी कार्रवाइयां जो दर पर लागू होती हैं, अगर सभी खास शर्तें पूरी होती हैं लक्ष्य तय होते हैं.

RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / PriceAdjustment 0..1 PriceAdjustment AmountBeforeTax और, दोनों को गुणा करके दर को संशोधित करता है तय किए गए मल्टीप्लायर के हिसाब से AmountAfterTax
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / PriceAdjustment / @multiplier 1 float AmountBeforeTax और AmountAfterTax, दोनों इस वैल्यू से गुणा किया गया है.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / RateRule 0..1 RateRule किराये के लिए तय किए गए नियम का आईडी लागू करके, किराये में बदलाव किया जाता है.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / RateRule / @id 1 string यह आईडी, आपकी दर के नियम की परिभाषा फ़ाइल. ध्यान दें:
  • इस फ़ील्ड में 40 से ज़्यादा वर्ण नहीं होने चाहिए.
  • हर किराया, सिर्फ़ एक किराये के नियम से जुड़ा हो सकता है.
  • अगर दर नियम आईडी के हिसाब से कई बदलाव होते हैं, तो भाषा की दृष्टि से सबसे छोटी दर का नियम आईडी, इसे असाइन किया जाता है की दर.
  • अगर यह आईडी, किराये के नियम की परिभाषा में मौजूद दर से जुड़े नियम से मेल नहीं खाता है फ़ाइल है, तो इसे अयोग्य माना जाता है.
देखें यह लेख सेक्शन में, अलग-अलग निजी दर वाले यूज़र इंटरफ़ेस (यूआई) के बारे में जानकारी दी गई है इलाज.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / Refundable 0..1 Refundable किराये के रिफ़ंड की संभावना को, तय की गई वैल्यू पर ओवरराइट कर दिया जाता है.

एट्रिब्यूट सेट करते समय, इन बातों का ध्यान रखें:

  • इस बदलाव की वजह से, शर्तों के मुताबिक रिफ़ंड की जा सकने वाली दर को पूरी तरह से दोबारा लिखा जा सकता है सेटिंग, न सिर्फ़ अपने-आप भरे गए फ़ील्ड की सेटिंग.
  • अगर available या refundable_until_days हो सेट नहीं है, तो दर रिफ़ंड के रूप में नहीं दिखती है.
  • अगर available, 0 या false है, तो इसके अलावा, अन्य एट्रिब्यूट पर ध्यान नहीं दिया जाता. दर इस तरह नहीं दिख रही है यह रिफ़ंड तब भी दिया जा सकता है, जब एक या दोनों अन्य एट्रिब्यूट सेट हों.
  • refundable_until_time को सेट करने का सुझाव दिया जाता है; अगर नहीं सेट करते हैं, तो सबसे पहले समय (मध्यरात्रि) का उपयोग किया जाता है.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / Refundable / @available 1 boolean (ज़रूरी है) 1 या पर सेट करें true से पता चलता है कि दर में पूरा किराया दिखाया जा सकता है या नहीं रिफ़ंड; या फिर 0 या false पर सेट करें.
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_days 0..1 integer (अगर यह ज़रूरी है, तो available true है) खास जानकारी चेक-इन से इतने दिन पहले पूरा रिफ़ंड मिल सकता है अनुरोध किया गया है. refundable_until_days की वैल्यू यह 0 से 330 के बीच का कोई पूर्णांक होना चाहिए.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / Refundable / @refundable_until_time 0..1 Time (अगर available true है, तो इसका सुझाव दिया जाता है) होटल के स्थानीय समय में दिन के सबसे हाल के समय में, रिफ़ंड के अनुरोध पर ध्यान दिया जाता है. इसे एक साथ जोड़ा जा सकता है इसकी जानकारी देने के लिए refundable_until_days उदाहरण के लिए, "रिफ़ंड की सुविधा दो दिन पहले शाम 4 बजे तक उपलब्ध है चेक-इन". अगर refundable_until_time सेट नहीं है, तो डिफ़ॉल्ट रूप से आधी रात पर सेट होती है.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / Availability 0..1 Availability किराये की उपलब्धता को, तय की गई वैल्यू पर ओवरराइट कर देता है. हम सिर्फ़ दर को unavailable पर सेट करने की सुविधा देते हैं.
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / Availability / @status 1 enum अगर status="unavailable", दर लागू होती है, तो जैसे यह उपलब्ध न हो, भले ही इसके लिए कोई मान्य कीमत मौजूद हो इसे.
RateModifications / HotelRateModifications / ItineraryRateModification / LengthOfStay 0..1 LengthOfStay ठहरने की उन सीमाओं के बारे में बताता है जिनमें किराये में बदलाव किया जा सकता है लागू नहीं किया जाना चाहिए. दर में बदलाव तब लागू नहीं होता, जब ठहरने की कुल अवधि इतनी हो कम से कम और अधिकतम सीमा से बाहर हो.
RateModifications / HotelRateModifications / ItineraryRateModification / LengthOfStay / @min 0..1 integer किराये में बदलाव करने के लिए, ठहरने की कम से कम रातों की संख्या लागू किया गया. अगर इसका कोई मान तय नहीं किया गया है, तो कोई कम से कम सीमा तय नहीं होगी.
RateModifications / HotelRateModifications / ItineraryRateModification / LengthOfStay / @max 0..1 integer किराये में बदलाव करने के लिए, ठहरने की ज़्यादा से ज़्यादा रातों की संख्या लागू किया गया. अगर इसका कोई मान तय नहीं किया गया है, तो कोई भी सीमा तय नहीं होगी.
RateModifications / HotelRateModifications / ItineraryRateModification / MinimumAmount 0..1 MinimumAmount कमरे के रोज़ाना के किराये का कम से कम योग तय करता है (कम से कम कुल दर का इस्तेमाल करके AmountBeforeTax या AmountAfterTax) के लिए ऐसा करना ज़रूरी है दर संशोधन लागू करने के लिए सीमा पार हो जाएगी.
RateModifications / HotelRateModifications / ItineraryRateModification / MinimumAmount / @before_discount 1 integer दर में बदलाव करने के लिए, तय की गई सीमा से ज़्यादा वैल्यू लागू किया गया.
RateModifications / HotelRateModifications / ItineraryRateModification / RatePlans 0..1 RatePlans रेट प्लान की सूची के लिए कंटेनर, जिसमें रेट में बदलाव किया गया है लागू होती है. अगर <RatePlans> तय नहीं किया गया है, तो दर यह बदलाव, सभी रेट प्लान पर लागू होगा.
RateModifications / HotelRateModifications / ItineraryRateModification / RatePlans / RatePlan 1..n RatePlan यह रेट प्लान बताता है. रेट प्लान को इन चीज़ों से तय किया जाता है: पैकेज, रेट, और उपलब्धता की जानकारी जैसा कि लेन-देन में बताया गया है (प्रॉपर्टी डेटा), OTA_HotelRateAmountNotifRQ, और OTA_HotelAvailNotifRQ सकता है और जिसे PackageID से पहचाना जाता है.
RateModifications / HotelRateModifications / ItineraryRateModification / RatePlans / RatePlan / @id 1 string रेट प्लान के लिए यूनीक आइडेंटिफ़ायर. यह मान <PackageData> में PackageID की वैल्यू लेन-देन (प्रॉपर्टी डेटा) मैसेज में और इसमें RatePlanCode एट्रिब्यूट दोनों में <StatusApplicationControl> <OTA_HotelRateAmountNotifRQ> और <OTA_HotelAvailNotifRQ> मैसेज. ज़्यादा से ज़्यादा 50 वर्ण डाले जा सकते हैं.
RateModifications / HotelRateModifications / ItineraryRateModification / RoomTypes 0..1 RoomTypes कमरों के टाइप की सूची के लिए कंटेनर, जिस पर किराये में बदलाव लागू होता है. दर में बदलाव, हर <RoomType> पर लागू होता है बताया गया है. अगर <RoomTypes> तय नहीं किया गया है, तो कमरों के किराये में बदलाव सभी कमरों पर लागू होगा.
RateModifications / HotelRateModifications / ItineraryRateModification / RoomTypes / RoomType 1..n RoomType इससे पता चलता है कि कमरा किस तरह का है. कमरे के टाइप को इसमें बताया गया है <RoomData> एलिमेंट लेन-देन (प्रॉपर्टी डेटा) मैसेज इसकी <RoomID> वैल्यू का इस्तेमाल करके, रेफ़रंस के तौर पर इस्तेमाल किया जाता है. ( <RoomID> वैल्यू को OTA_HotelRateAmountNotifRQ में InvTypeCode एट्रिब्यूट messages.)
RateModifications / HotelRateModifications / ItineraryRateModification / RoomTypes / RoomType / @id 1 string इन्वेंट्री के लिए यूनीक आइडेंटिफ़ायर (कमरे का टाइप). यह वैल्यू मैप करती है <RoomID> के लिए, लेन-देन (प्रॉपर्टी का डेटा) वाले मैसेज में. ज़्यादा से ज़्यादा 50 वर्ण डाले जा सकते हैं.
RateModifications / HotelRateModifications / ItineraryRateModification / StayDates 0..1 StayDates एक या उससे ज़्यादा तारीख की सीमाओं के लिए एक कंटेनर, जो तय करता है कि दर में बदलाव लागू किया जाता है, जैसे कि सीज़न के मुताबिक कीमत तय करना.
RateModifications / HotelRateModifications / ItineraryRateModification / StayDates / @application 1 enum

इससे यह पता चलता है कि दर में बदलाव किस तरह लागू किया जाना चाहिए.

मान्य मान हैं:

  • all: यहां हर रात के हिसाब से कमरे के किराये में होने वाले बदलाव पर लागू होगा अगर यात्रा की योजना में सभी तारीखें ओवरलैप हो रही हैं, तो यात्रा की योजना ठहरने की तारीखों के बारे में जानकारी शामिल करें.
  • any: कमरों के किराये में होने वाले बदलाव, सभी रातों के लिए लागू होंगे अगर यात्रा की योजना की कोई तारीख और ठहरने की तारीखों की सीमा.

इस एट्रिब्यूट की वैल्यू हमेशा बताना ज़रूरी है.

RateModifications / HotelRateModifications / ItineraryRateModification / StayDates / DateRange 1..99 DateRange तारीख की वह सीमा जिसमें वे तारीखें बताई गई हों जिनमें दर में बदलाव किया जाना है लागू किया गया.
RateModifications / HotelRateModifications / ItineraryRateModification / StayDates / DateRange / @start 0..1 Date प्रॉपर्टी के टाइम ज़ोन के हिसाब से, शुरू होने की तारीख (इसमें ये भी शामिल हैं) तारीख की सीमा चुनें. यह तारीख end तारीख. अगर start तय नहीं है, तो तारीख शुरू होने की तारीख के हिसाब से, रेंज की सीमा लागू नहीं होती.
RateModifications / HotelRateModifications / ItineraryRateModification / StayDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख तारीख की सीमा चुनें. यह तारीख, start के जैसा या उसके बाद की होनी चाहिए तारीख. अगर end तय नहीं है, तो तारीख खत्म होने की तारीख के हिसाब से, सीमा असल में अनलिमिटेड होती है.
RateModifications / HotelRateModifications / ItineraryRateModification / StayDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर नहीं बताया गया है, तो तारीख की सीमा में सभी दिनों की अनुमति है. हर स्ट्रिंग में मौजूद वर्ण दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" तय करता है हफ़्ते के दिन, तारीख की सीमा में अनुमति है.

मान्य वर्ण हैं:

  • सोमवार का किराया M
  • मंगलवार का T
  • बुधवार का W
  • गुरुवार का H
  • शुक्रवार का F
  • शनिवार का S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य होता है.

RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries 0..1 UserCountries अगर बताया गया है, तो दर में बदलाव सिर्फ़ तब लागू होगा, जब उपयोगकर्ता आपके ऐप्लिकेशन का इस्तेमाल करने वाला व्यक्ति किस देश में हो. अगर इसके लिए तय नहीं किया गया है, तो दर उपयोगकर्ता की जगह की जानकारी पर ध्यान दिए बिना, बदलाव लागू किया जाता है.
RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries / @type 0..1 enum उपयोगकर्ता देश के स्पेसिफ़िकेशन का टाइप.

मान्य वैल्यू include हैं और exclude.

अगर उपयोगकर्ता के देशों का type इस तौर पर सेट है include, दर में बदलाव इन पर लागू होता है सूची में शामिल देशों के उपयोगकर्ताओं के लिए है.

अगर उपयोगकर्ता देश का type exclude है, तो दरों में बदलाव, सूची में शामिल देशों से बाहर रहने वाले लोगों पर लागू होता है.

अगर उपयोगकर्ता देश type सेट नहीं है, तो इसे include और किराये में बदलाव सूची में शामिल देशों के लोगों पर लागू होती है.

RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries / Country 1..300 Country इससे, उस देश के बारे में जानकारी मिलती है जहां उपयोगकर्ता को दर में बदलाव करने की अनुमति है.
RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries / Country / @code 1 string CLDR देश का कोड, जैसे कि DE या FR. ध्यान दें, कुछ देशों में, CLDR देश कोड और 2-अक्षर का आईएसओ एक ही नहीं है देश कोड. इसके अलावा, CLDR क्षेत्र कोड का भी इस्तेमाल नहीं किया जा सकता.

उदाहरण

बुनियादी मैसेज

इस उदाहरण में, RateModifications` का बुनियादी मैसेज दिखाया गया है:

<?xml version="1.0" encoding="UTF-8"?>
<RateModifications partner="account_xyz"
                   id="123_abc"
                   timestamp="2023-05-22T16:20:00-04:00">
  <HotelRateModifications hotel_id="Property_1">
    <ItineraryRateModification id="1">
      <BookingDates>
         <DateRange start="2023-07-01" end="2023-07-31" days_of_week="MTWHF"/>
         <DateRange start="2023-09-01" end="2023-09-30"/>
      </BookingDates>
      <BookingWindow min="7" max="330"/>
      <CheckinDates>
         <DateRange start="2023-10-01" end="2023-10-31" days_of_week="FSU"/>
      </CheckinDates>
      <CheckoutDates>
         <DateRange start="2023-10-08" end="2023-11-07" days_of_week="FSU"/>
      </CheckoutDates>
      <Devices>
        <Device type="mobile"/>
        <Device type="tablet"/>
      </Devices>
      <LengthOfStay min="2" max="14"/>
      <RatePlans>
         <RatePlan id="234"/>
         <RatePlan id="567"/>
      </RatePlans>
      <RoomTypes>
         <RoomType id="123"/>
         <RoomType id="456"/>
      </RoomTypes>
      <UserCountries>
        <Country code="US"/>
        <Country code="GB"/>
      </UserCountries>
      <ModificationActions>
        <PriceAdjustment multiplier="1.2"/>
      </ModificationActions>
    </ItineraryRateModification>
  </HotelRateModifications>
</RateModifications>


किराये में किए गए एक बदलाव को मिटाएं

नीचे दिए गए उदाहरण में, प्रॉपर्टी:

<?xml version="1.0" encoding="UTF-8"?>
<RateModifications partner="account_xyz"
                   id="123_abc"
                   timestamp="2023-05-22T16:20:00-04:00">
  <HotelRateModifications hotel_id="Property_1">
    <ItineraryRateModification id="1" action="delete"/>
  </HotelRateModifications>
</RateModifications>

किराये में किए गए सभी बदलावों को मिटाएं

नीचे दिए गए उदाहरण में, प्रॉपर्टी:

<?xml version="1.0" encoding="UTF-8"?>
<RateModifications partner="account_xyz"
                   id="123_abc"
                   timestamp="2023-05-22T16:20:00-04:00">
  <HotelRateModifications hotel_id="Property_1" action="overlay"/>
</RateModifications>


किराये में किए गए सभी बदलावों को ओवरले करें

नीचे दिए गए उदाहरण में,<HotelRateModifications> की जा सकती है. टास्क कब शुरू होगा action="overlay", किराये में किए गए सभी बदलावों को मौजूदा मैसेज में बताए गए, दर के बदलावों को सेव करेंगे:

<?xml version="1.0" encoding="UTF-8"?>
<RateModifications partner="account_xyz"
                   id="123_abc"
                   timestamp="2023-05-22T16:20:00-04:00">
  <HotelRateModifications hotel_id="Property_1" action="overlay"/>
    <ItineraryRateModification id="1">
      <BookingDates>
         <DateRange start="2023-09-01" end="2023-09-30"/>
      </BookingDates>
      <ModificationActions>
        <PriceAdjustment multiplier="1.2"/>
      </ModificationActions>
      <RoomTypes>
         <RoomType id="123"/>
         <RoomType id="456"/>
      </RoomTypes>
      <RatePlans>
         <RatePlan id="234"/>
         <RatePlan id="567"/>
      </RatePlans>
    </ItineraryRateModification>
  </HotelRateModifications>
</RateModifications>

बदलाव करने के लिए कई कार्रवाइयां

नीचे दिए गए उदाहरण में, बदलाव करने के लिए एक से ज़्यादा कार्रवाइयां करने का तरीका बताया गया है एक बार में:

<?xml version="1.0" encoding="UTF-8"?>
<RateModifications partner="account_xyz"
                   id="123_abc"
                   timestamp="2023-05-22T16:20:00-04:00">
  <HotelRateModifications hotel_id="Property_1">
    <ItineraryRateModification id="1">
      <BookingDates>
         <DateRange start="2023-01-01" end="2023-02-28"/>
      </BookingDates>
      <ModificationActions>
        <PriceAdjustment multiplier=".95"/>
        <Refundable available="true"
                    refundable_until_days="1"
                    refundable_until_time="12:00:00"/>
      </ModificationActions>
    </ItineraryRateModification>
  </HotelRateModifications>
</RateModifications>


उपयोगकर्ता के देश के लिए रेट प्लान बंद करें

यहां दिए गए उदाहरण में, रेट प्लान को सिर्फ़ जैपनीज़ (JP) उपयोगकर्ता:

<?xml version="1.0" encoding="UTF-8"?>
<RateModifications partner="account_xyz"
                   id="123_abc"
                   timestamp="2023-05-22T16:20:00-04:00">
  <HotelRateModifications hotel_id="Property_1">
    <ItineraryRateModification id="1">
      <RatePlans>
         <RatePlan id="jp_only"/>
      </RatePlans>
      <UserCountries type="exclude">
        <Country code="JP"/>
      </UserCountries>
      <ModificationActions>
        <Availability status="unavailable"/>
      </ModificationActions>
    </ItineraryRateModification>
  </HotelRateModifications>
</RateModifications>


जवाब

सिंटैक्स

RateModificationsResponse मैसेज इस सिंटैक्स का इस्तेमाल करता है:

<?xml version="1.0" encoding="UTF-8"?>
<RateModificationsResponse timestamp="timestamp"
                    id="message_ID"
                    partner="partner_key">
  <!-- Either Success or Issues will be populated. -->
  <Success/>
  <Issues>
    <Issue code="issue_code" status="issue_type"><var>issue_description</var></Issue>
  </Issues>
</RateModificationsResponse>

एलिमेंट और एट्रिब्यूट

RateModificationsResponse मैसेज में ये चीज़ें शामिल हैं एलिमेंट और एट्रिब्यूट:

एलिमेंट / @एट्रिब्यूट आवृत्तियां टाइप ब्यौरा
RateModifications 1 Complex element वह रूट एलिमेंट जो किसी रिसीव की कामयाबी या समस्याओं के बारे में बताता है दर में बदलाव के अनुरोध का मैसेज.
RateModificationsResponse / @timestamp 1 DateTime यह मैसेज बनाए जाने की तारीख और समय.
RateModificationsResponse / @id 1 string इससे जुड़े RateRevs मैसेज से मिलने वाला यूनीक आइडेंटिफ़ायर.
RateModificationsResponse / @partner 1 string इस मैसेज को भेजने के लिए पार्टनर का खाता.
RateModificationsResponse / Success 0..1 Success इससे पता चलता है कि Rateबदलाव वाले मैसेज को प्रोसेस किया गया है वह भी चेतावनी, गड़बड़ी या गड़बड़ी के बिना.

<Success> या <Issues> मौजूद हैं.

RateModificationsResponse / Issues 0..1 Issues प्रोसेस करते समय एक या ज़्यादा समस्याओं का कंटेनर दर में बदलाव करने से जुड़ा मैसेज.

<Success> या <Issues> मौजूद हैं.

RateModificationsResponse / Issues / Issue 1..n Issue इस दौरान मिली किसी चेतावनी, गड़बड़ी या गड़बड़ी का ब्यौरा रेट में बदलाव वाले मैसेज को प्रोसेस कर रही हूं. इन समस्याओं की जानकारी फ़ीड की स्थिति की गड़बड़ी में मिला है मैसेज.
RateModificationsResponse / Issues / Issue / @code 1 integer समस्या का आइडेंटिफ़ायर.
RateModificationsResponse / Issues / Issue / @status 1 enum

किस तरह की समस्या का सामना करना पड़ा.

मान्य वैल्यू हैं warning, error, और failure.

उदाहरण

पुष्टि हो गई

दर में बदलाव को प्रोसेस किए गए पिछले जवाब के बारे में नीचे दिए गए उदाहरण दिए गए हैं दिखाई देगा.

<?xml version="1.0" encoding="UTF-8"?>
<RateModificationsResponse timestamp="2023-05-22T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Success/>
</RateModificationsResponse>

समस्याएं

यह एक वैसे उसी दर से बदलाव करने वाले मैसेज का जवाब है जिसे प्रोसेस नहीं किया गया है ऐसा किया जा सकता है.

<?xml version="1.0" encoding="UTF-8"?>
<RateModificationsResponse timestamp="2023-05-22T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Issues>
    <Issue code="1001" status="error">Example</Issue>
  </Issues>
</RateModificationsResponse>