खास जानकारी
इस एपीआई की मदद से, किसी किराये पर शर्तें पूरी होने पर, डाइनैमिक तौर पर कार्रवाइयां लागू करने के तरीके तय किए जा सकते हैं. जैसे, किराये में बदलाव करना या रिफ़ंड की सुविधा चालू करना. Promotions API की तुलना में, यह एपीआई कुछ शर्तें पूरी होने पर ही कोई कार्रवाई करता है. इसमें कीमत में बदलाव करना भी शामिल है. इससे आखिर में कीमत बढ़ सकती है. वहीं, Promotions API सिर्फ़ ज़्यादा छूट वाले प्रमोशन लागू कर सकता है.
अनुरोध
सिंटैक्स
RateModifications
मैसेज में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModifications partner="partner_key"
id="message_ID"
> < timestamp="timestamp"
HotelRateM>odifi<cations hotel_id="HotelID" action="[overlay]&quo>t;
<ItineraryRat>eModifica<tion id="ModificationID" action="[delete]"
BookingDates>
<DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week=&q>uot;&qu<ot;MTWHFSU_or>_subset<""/
DateRange start=&quo>t;YYYY-<MM-DD" >end="<;YYYY-MM-DD" days_of_week=""MTWHFSU_or_subset""/
/>Booking<Dates
B>ookingW<indow min=&qu>ot;intege<r" max="integer"/
CheckinDates
DateRange start=">;YYYY-M<M-DD" end>="<YYYY-MM>-DD"< days_of_week=""MTWHFSU_or_s>ubset&q<uot;&quo>t;/
< /CheckinDates
CheckoutDates
> Dat<eRange start="YYYY-MM-DD" end=>"Y<YYY-MM-DD>" da<ys_of_week=""MTW>HFSU_or_s<ubset""/
/>Checkou<tDates
> Devi<ces
> Device< type="[desktop|ta>blet|mobi<le]"/
/Devic>es
< L>engthOfStay mi<n="integer" max="i>nteger&qu<ot;/
MinimumAmount before_discount="integer"/
RatePlans
> Ra<tePlan id=>"P<ackageID_1"/
RatePlan id=>"Pac<kageID_2"/
/RateP>lans
< Roo>mTypes
< RoomType id=">RoomID_1&<quot;/
RoomType id="Ro>omID_2&qu<ot;/
/RoomTypes
> StayDa<tes application="[all|any]"
DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week=""MTWHFSU_or_su>bset"<;"/
/StayDates
User>Countri<es type="[inclu>de|ex<clude]"
Count>ry <code="country_code>&<quot;/
/User>C
ountries
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 | इस मैसेज के लिए पार्टनर खाता. यह स्ट्रिंग वैल्यू, Hotel Center में
खाते की सेटिंग वाले पेज पर दी गई "पार्टनर की कुंजी" वैल्यू होती है.
ध्यान दें: अगर आपके पास एक ऐसा बैकएंड है जो एक से ज़्यादा खातों के लिए फ़ीड उपलब्ध कराता है, तो यह वैल्यू उसी खाते के लिए, |
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 | अगर |
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 | अगर कोई वैल्यू तय नहीं की गई है और उसी
अगर वैल्यू दी गई है, तो यह |
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" से पता चलता है कि तारीख की सीमा में, हफ़्ते के कामकाजी दिन शामिल हैं. मान्य वर्ण ये हैं:
वर्णों का कोई भी कॉम्बिनेशन मान्य है. |
RateModifications / HotelRateModifications / ItineraryRateModification / BookingWindow | 0..1 | BookingWindow | इससे पता चलता है कि चेक-इन करने की तारीख (प्रॉपर्टी के टाइम ज़ोन के हिसाब से) के हिसाब से, बुकिंग कब होनी चाहिए. उदाहरण के लिए, बुकिंग विंडो को चेक-इन से कम से कम सात दिन पहले सेट किया जा सकता है. हालांकि, इसे 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" से पता चलता है कि तारीख की सीमा में, हफ़्ते के कामकाजी दिन शामिल हैं. मान्य वर्ण ये हैं:
वर्णों का कोई भी कॉम्बिनेशन मान्य है. |
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" से पता चलता है कि तारीख की सीमा में, हफ़्ते के कामकाजी दिन शामिल हैं. मान्य वर्ण ये हैं:
वर्णों का कोई भी कॉम्बिनेशन मान्य है. |
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 | यह आईडी, आपकी किराया तय करने के नियम की परिभाषा फ़ाइल में मौजूद परिभाषा से किराये से मेल खाता है.
ध्यान दें:
|
RateModifications / HotelRateModifications / ItineraryRateModification / ModificationActions / Refundable | 0..1 | Refundable | किराये के लिए रिफ़ंड की सुविधा की वैल्यू को, बताई गई वैल्यू से बदल देता है.
एट्रिब्यूट सेट करते समय, इन बातों का ध्यान रखें:
|
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 है, तो इसका सुझाव दिया जाता है) इससे पता चलता है कि होटल के स्थानीय समय के हिसाब से, रिफ़ंड की तारीख और समय की पूरी जानकारी होनी चाहिए. साथ ही, इसमें पूरे पैसे रिफ़ंड (टैक्स और शुल्क के साथ) होने की बात शामिल होनी चाहिए. उदाहरण के लिए, "रिफ़ंड, चेक-इन से दो दिन पहले शाम 4:00 बजे तक उपलब्ध हैं", यह बताने के लिए, इसे refundable_until_days के साथ जोड़ा जा सकता है. अगर 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 वैल्यू और <OTA_HotelRateAmountNotifRQ> और <OTA_HotelAvailNotifRQ> , दोनों मैसेज में <StatusApplicationControl> में मौजूद RatePlanCode एट्रिब्यूट में मैप होती है.
इसमें ज़्यादा से ज़्यादा 50 वर्ण हो सकते हैं. |
RateModifications / HotelRateModifications / ItineraryRateModification / RoomTypes | 0..1 | RoomTypes | कमरे के उन टाइप की सूची के लिए कंटेनर जिन पर किराये में बदलाव लागू होता है.
किराये में बदलाव, बताए गए हर <RoomType> पर लागू होता है. अगर <RoomTypes> की वैल्यू नहीं दी गई है, तो किराये में किया गया बदलाव सभी रूम पर लागू होगा. |
RateModifications / HotelRateModifications / ItineraryRateModification / RoomTypes / RoomType | 1..n | RoomType | कमरे का टाइप बताता है. कमरे के टाइप की जानकारी, ट्रांज़ैक्शन (प्रॉपर्टी डेटा) मैसेज में मौजूद <RoomData> एलिमेंट में दी जाती है. साथ ही, <RoomID> वैल्यू का इस्तेमाल करके इसका रेफ़रंस दिया जाता है. (इसकी
<RoomID> वैल्यू का रेफ़रंस, OTA_HotelRateAmountNotifRQ
मैसेज में InvTypeCode एट्रिब्यूट से भी दिया जाता है.) |
RateModifications / HotelRateModifications / ItineraryRateModification / RoomTypes / RoomType / @id | 1 | string | इन्वेंट्री (कमरे का टाइप) के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, लेन-देन (प्रॉपर्टी डेटा) मैसेज में <RoomID> पर मैप होती है.
इसमें ज़्यादा से ज़्यादा 50 वर्ण हो सकते हैं. |
RateModifications / HotelRateModifications / ItineraryRateModification / StayDates | 0..1 | StayDates | एक या उससे ज़्यादा तारीख की सीमाओं के लिए कंटेनर, जो यह तय करता है कि किराये में बदलाव कैसे लागू किया जाए. जैसे, सीज़न के हिसाब से किराया तय करना. |
RateModifications / HotelRateModifications / ItineraryRateModification / StayDates / @application | 1 | enum | इसमें बताया गया है कि किराये में बदलाव कैसे लागू किया जाना चाहिए. मान्य मान हैं:
इस एट्रिब्यूट की वैल्यू हमेशा सबमिट करना ज़रूरी है. |
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" से पता चलता है कि तारीख की सीमा में, हफ़्ते के कामकाजी दिन शामिल हैं. मान्य वर्ण ये हैं:
वर्णों का कोई भी कॉम्बिनेशन मान्य है. |
RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries | 0..1 | UserCountries | अगर यह जानकारी दी गई है, तो किराये में बदलाव सिर्फ़ तब लागू होगा, जब उपयोगकर्ता उनमें से किसी देश में हो. अगर यह जानकारी नहीं दी जाती है, तो किराये में बदलाव, उपयोगकर्ता की जगह की जानकारी के बावजूद लागू होता है. |
RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries / @type | 0..1 | enum | UserCountries स्पेसिफ़िकेशन का टाइप.
मान्य वैल्यू अगर UserCountries अगर UserCountries अगर UserCountries |
RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries / Country | 1..300 | Country | किराये में बदलाव करने के लिए, उपयोगकर्ता के उस देश की जानकारी देता है जहां ऐसा किया जा सकता है. |
RateModifications / HotelRateModifications / ItineraryRateModification / UserCountries / Country / @code | 1 | string | देश का CLDR कोड, जैसे कि DE या FR . ध्यान दें कि कुछ देशों के लिए, CLDR देश कोड और दो अक्षरों वाला आईएसओ देश कोड एक जैसा नहीं होता. साथ ही, CLDR क्षेत्र कोड भी काम नहीं करते. |
उदाहरण
बुनियादी मैसेज
यहां दिए गए उदाहरण में, RateModifications
` मैसेज का एक बुनियादी वर्शन दिखाया गया है:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModifications partner="account_xyz"
id="123_abc"
> <timestamp="2023-05-22T16:20:00-04:00&qu>ot;
< HotelRateModifications hotel_id>="<Property_1&q>uot;
I<tineraryRateModification id="1"
BookingDates
> DateRan<ge start="2023-07-01" end="2023>-07-31&<quot; days_of>_week=&<quot;MTWHF"/
DateR>ange st<art="20>23-09-01&q<uot; end="2023-09-30"/
/BookingDates
Bookin>gWindow< min="7&>quot; m<ax="330&>quot;/
< CheckinDates
DateRange start="2023-10-01" e>nd=&quo<t;2023-10-31&q>uot; da<ys_of_w>eek="<;FSU"/
/Ch>eckinDate<s
CheckoutDates>
< DateRange st<art="2023-10-08" end>="<2023-11-0>7" da<ys_of_week="F>SU"/
< /CheckoutDat>es
< D>evices
< Device t>ype="<mobile"/
> Device< type="tablet>"/<
/De>vices
< L>engthOfStay min=<"2" max=>"14&<quot;/
RateP>lans
< >RatePlan id=&q<uot;234"/
> Rate<Plan id="567"/
/R>atePlan<s
RoomTypes
> < RoomType id="123&qu>ot;</
RoomType id=>&<quot;456"/
>
/RoomTypes
UserCountries
Country code="US"/
Country code="GB"/
/UserCountries
ModificationActions
PriceAdjustment multiplier="1.2"/
/ModificationActions
/ItineraryRateModification
/HotelRateModifications
/RateModifications
किराये में किया गया एक बदलाव मिटाना
यहां दिए गए उदाहरण में, किसी प्रॉपर्टी के लिए किराये में किए गए एक बदलाव को मिटाने का तरीका बताया गया है:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModifications partner="account_xyz"
id="123_abc"
> <timestamp="2023-05-22T16:20:00-04:00&qu>ot;
< HotelRateModifications hotel_id="Property_1>&qu<ot;
ItineraryRateMo>d<ification id=">;1
" action="delete"/
/HotelRateModifications
/RateModifications
किराये में किए गए सभी बदलाव मिटाना
नीचे दिए गए उदाहरण में, किसी प्रॉपर्टी के लिए किराये में किए गए सभी बदलावों को मिटाने का तरीका बताया गया है:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModifications partner="account_xyz"
id="123_abc"
> <timestamp="2023-05-22T16:20:00-04:00"
HotelRateMod>i<fications hotel_id>=&q
uot;Property_1" action="overlay"/
/RateModifications
किराये में हुए सभी बदलावों को ओवरले करना
नीचे दिए गए उदाहरण में, प्रॉपर्टी के लिए एक या उससे ज़्यादा नए किराये में बदलाव करके, <HotelRateModifications>
को ओवरले करने का तरीका बताया गया है. action="overlay"
चुनने पर, मौजूदा मैसेज में बताए गए किराये में किए गए बदलावों को सेव करने से पहले, सेव किए गए सभी बदलाव मिटा दिए जाते हैं:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModifications partner="account_xyz"
id="123_abc"
> <timestamp="2023-05-22T16:20:00-04:00"
HotelRateMod>ifica<tions hotel_id="Property_1&>quot; a<ction=">overlay&qu<ot;/
ItineraryRateModification id="1&>quot;
< B>ookingDates
< DateRange st>art="<;2023-09-01" end="2023->09-30&q<uot;/
/Booking>Dates
< ModificationAc<tions
Pric>eAdjustmen<t multiplier=">;1.2&qu<ot;/
> /Modif<icationAc>tions
< RoomTypes
> RoomTyp<e id="123&quo>t;/
< RoomType <id="456"/
>/Ro<omTypes
RatePlans>
< RatePlan >id
="234"/
RatePlan id="567"/
/RatePlans
/ItineraryRateModification
/HotelRateModifications
/RateModifications
कई बदलाव करने की कार्रवाइयां
नीचे दिए गए उदाहरण में, एक साथ कई बदलाव करने का तरीका बताया गया है:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModifications partner="account_xyz"
id="123_abc"
> <timestamp="2023-05-22T16:20:00-04:00&qu>ot;
< HotelRateModifications hotel_id>="<Property_1&q>uot;
I<tineraryRateModification id="1"
> Booki<ngDates
> Dat<eRange start=">2023-01-0<1" end="2023-02-28">;/
</BookingDates
ModificationActions
PriceAdjustment multiplier=".95"/
Refundable available=">true&qu<ot;
> r<efundable_until_days=">;1&<quot;
> < refundabl>e_until_ti
me="12:00:00"/
/ModificationActions
/ItineraryRateModification
/HotelRateModifications
/RateModifications
उपयोगकर्ताओं के देशों के लिए किराया प्लान बंद करना
यहां दिए गए उदाहरण में, किराये के प्लान को सिर्फ़ जापानी (JP
) उपयोगकर्ताओं के लिए सीमित करने का तरीका बताया गया है:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModifications partner="account_xyz"
id="123_abc"
> <timestamp="2023-05-22T16:20:00-04:00&qu>ot;
< HotelRateModifications hotel_id>="<Property_>1"
< ItineraryRate>Modification i<d="1&>quot;
< RatePlans
Rate>Plan id=&<quot;jp_only">/
< /RatePlans
> Use<rCountries type=&qu>ot;exclud<e"
Country code=">;JP&quo<t;/
/UserCount>ries
< ModificationActions
> < Availability statu>s<="unavailable>&qu
ot;/
/ModificationActions
/ItineraryRateModification
/HotelRateModifications
/RateModifications
जवाब
सिंटैक्स
RateModificationsResponse
मैसेज में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encodin>g<="UTF-8"?
RateModificationsResponse timestamp="timestamp"
id="message_ID"
> < partner="partner_key"
>!--< Either >Suc<cess o>r Iss<ues will be populated. --
Success/
Issu><es
> Issue code=&q<uot;><issue_>cod<e"> <status="issue_type&qu>o
t;varissue_description/var/Issue
/Issues
/RateModificationsResponse
एलिमेंट और एट्रिब्यूट
RateModificationsResponse
मैसेज में ये एलिमेंट और एट्रिब्यूट होते हैं:
एलिमेंट / @एट्रिब्यूट | आवृत्तियां | टाइप | ब्यौरा |
---|---|---|---|
RateModifications | 1 | Complex element | रूट एलिमेंट, जो कि मिले रेट में बदलाव करने के अनुरोध मैसेज के लिए, अनुरोध पूरा होने या उससे जुड़ी समस्याओं के बारे में बताता है. |
RateModificationsResponse / @timestamp | 1 | DateTime | इस मैसेज को बनाने की तारीख और समय. |
RateModificationsResponse / @id | 1 | string | RateModifications मैसेज से मिला यूनीक आइडेंटिफ़ायर. |
RateModificationsResponse / @partner | 1 | string | इस मैसेज के लिए पार्टनर खाता. |
RateModificationsResponse / Success | 0..1 | Success | इससे पता चलता है कि RateModifications मैसेज को चेतावनियों, गड़बड़ियों या गड़बड़ी के बिना प्रोसेस किया गया था.
हर मैसेज में |
RateModificationsResponse / Issues | 0..1 | Issues | RateModifications मैसेज को प्रोसेस करते समय, एक या उससे ज़्यादा समस्याओं के लिए कंटेनर.
हर मैसेज में |
RateModificationsResponse / Issues / Issue | 1..n | Issue | किराये में बदलाव करने के अनुरोध वाले मैसेज को प्रोसेस करते समय, मिली चेतावनी, गड़बड़ी या समस्या के बारे में जानकारी. इन समस्याओं के बारे में जानकारी, फ़ीड की स्थिति से जुड़ी गड़बड़ी के मैसेज में देखी जा सकती है. |
RateModificationsResponse / Issues / Issue / @code | 1 | integer | समस्या का आइडेंटिफ़ायर. |
RateModificationsResponse / Issues / Issue / @status | 1 | enum | आपको किस तरह की समस्या आ रही है. मान्य वैल्यू |
उदाहरण
पुष्टि हो गई
यहां, किराये में बदलाव करने के अनुरोध को प्रोसेस करने के बाद मिलने वाला जवाब दिया गया है.
<?xml version="1.0" encodin>g<="UTF-8"?
RateModificationsResponse timestamp="2023-05-22T16:20:00-04:00"
id="12345678"
> < > < partner=&quo>t;partner
_key"
Success/
/RateModificationsResponse
समस्याएं
यहां उस RateModifications मैसेज का जवाब दिया गया है जिसे गड़बड़ियों की वजह से प्रोसेस नहीं किया गया था.
<?xml version="1.0" encodin>g<="UTF-8"?
RateModificationsResponse timestamp="2023-05-22T16:20:00-04:00"
id="12345678"
> < > < partner="partne>r_key"
<Issues>
< Issue <code="1001" stat>us
="error"Example/Issue
/Issues
/RateModificationsResponse