סקירה כללית
ממשק ה-API הזה מאפשר לכם להגדיר דרכים להחיל פעולות באופן דינמי על שיעור כשהתנאים מתקיימים, למשל התאמת המחיר או הפעלת האפשרות להנפקת החזר כספי. בניגוד ל-Promotions API, שיכול להחיל רק מבצעים שעומדים בדרישות עם ההנחות העמוקות ביותר, ה-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
יש את המאפיינים והרכיבים הבאים:
רכיב / @Attribute | מופעים | סוג | תיאור |
---|---|---|---|
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 | המזהה הייחודי של הנכס. הערך הזה צריך להתאים למזהה המלון שצוין באמצעות
<id> ברכיב <listing> בפיד רשימת המלונות. מזהה המלון מופיע גם ב-Hotel Center. |
RateModifications / HotelRateModifications / @action | 0..1 | enum | אם לא מציינים את הערך של |
RateModifications / HotelRateModifications / ItineraryRateModification | 0..200 | ItineraryRateModification | שינוי יחיד של התעריף בנכס. הערה: קשה לנפות באגים בשינויים של שיעורי העלאה, ולכן מומלץ להשתמש בהם במשורה. אם אתם צריכים לבצע יותר מ-200 שינויים בשיעור, פנו למנהל החשבונות הטכני (TAM). |
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 | מציין את פרק הזמן שבו ההזמנה צריכה להתבצע ביחס לתאריך הצ'ק-אין (על סמך אזור הזמן של הנכס). לדוגמה, אפשר להגדיר את חלון ההזמנות ל-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' מציין שאפשר להשתמש בימים חול בטווח התאריכים. התווים התקינים הם:
כל שילוב של תווים תקין. |
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 | המזהה הזה מתאים שיעור להגדרה בקובץ Rate Rule Definition.
הערה:
|
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 ) השעה המאוחרת ביותר ביום (לפי השעון המקומי של המלון) שבה יכבדו בקשה להחזר כספי מלא. אפשר לשלב את השדה הזה עם השדה refundable_until_days כדי לציין, לדוגמה, "החזר כספי זמין עד השעה 16:00, יומיים לפני צ'ק-אין". אם לא מגדירים את 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 | מציין תוכנית תעריפים. תוכנית תעריפים מוגדרת על ידי שילוב של חבילת שירות, תעריפים וזמינות, כפי שהם מוגדרים בהודעות Transaction (נתוני המלון), OTA_HotelRateAmountNotifRQ ו-OTA_HotelAvailNotifRQ, וכפי שהם מזוהים לפי PackageID. |
RateModifications / HotelRateModifications / ItineraryRateModification / RatePlans / RatePlan / @id | 1 | string | המזהה הייחודי של תוכנית התמחור. הערך הזה ממופה לערך PackageID ב-<PackageData> בהודעת Transaction (נתוני נכס), ובמאפיין 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> בהודעה Transaction (Property Data), והפנייה אליו מתבצעת באמצעות הערך שלו בשדה <RoomID> . (הערך של <RoomID> מופיע גם במאפיין InvTypeCode בהודעות OTA_HotelRateAmountNotifRQ). |
RateModifications / HotelRateModifications / ItineraryRateModification / RoomTypes / RoomType / @id | 1 | string | המזהה הייחודי של מלאי שטחי הפרסום (סוג החדר). הערך הזה ממופה ל-<RoomID> בהודעת Transaction (נתוני נכס).
מספר התווים המקסימלי הוא 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 שונה מקוד המדינה בן שתי האותיות ב-ISO. בנוסף, אין תמיכה בקודים של אזורים מ-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
יש את הרכיבים והמאפיינים הבאים:
רכיב / @Attribute | מופעים | סוג | תיאור |
---|---|---|---|
RateModifications | 1 | Complex element | רכיב הבסיס שמציין את ההצלחה או הבעיות בהודעת בקשה שהתקבלה של RateModifications. |
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 | תיאור של אזהרה, שגיאה או כשל שנתקלו בהם במהלך עיבוד ההודעה RateModifications. פרטים על הבעיות האלה מופיעים בקטע הודעות שגיאה לגבי סטטוס הפיד. |
RateModificationsResponse / Issues / Issue / @code | 1 | integer | המזהה של הבעיה. |
RateModificationsResponse / Issues / Issue / @status | 1 | enum | סוג הבעיה. הערכים החוקיים הם |
דוגמאות
הפעולה הצליחה
זוהי תגובה להודעת RateModifications שעברה עיבוד בהצלחה.
<?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