如何在EnhancedAirBookRQ中传递farebasis code并指定高等级faretype
Sabre EnhancedAirBook 指定品牌运价(Branded Fares)FareType 方法
当航班采用品牌运价(Branded Fares)时,每个航班对应多个FareType(关联不同的FareBasis Code),默认调用EnhancedAirBook接口会返回最便宜的FareType详情。如何在请求中指定特定的高等级FareType?以下是我当前的请求(仅返回最便宜FareType),需要修改以传入选定的FareBasis Code:
<EnhancedAirBookRQ xmlns="http://services.sabre.com/sp/eab/v3_10" version="3.10.0" HaltOnError="true"> <OTA_AirBookRQ> <HaltOnStatus Code="NN"/> <HaltOnStatus Code="UC"/> <HaltOnStatus Code="LL"/> <HaltOnStatus Code="PN"/> <HaltOnStatus Code="NO"/> <HaltOnStatus Code="US"/> <HaltOnStatus Code="UU"/> <OriginDestinationInformation> <FlightSegment DepartureDateTime="2023-09-15T15:05:00" FlightNumber="1666" ResBookDesigCode="P" NumberInParty="1" Status="NN"> <DestinationLocation LocationCode="IST"/> <MarketingAirline Code="TK" FlightNumber="1666"/> <MarriageGrp>O</MarriageGrp> <OriginLocation LocationCode="HAM"/> </FlightSegment> <FlightSegment DepartureDateTime="2023-10-17T06:55:00" FlightNumber="1661" ResBookDesigCode="P" NumberInParty="1" Status="NN"> <DestinationLocation LocationCode="HAM"/> <MarketingAirline Code="TK" FlightNumber="1661"/> <MarriageGrp>O</MarriageGrp> <OriginLocation LocationCode="IST"/> </FlightSegment> </OriginDestinationInformation> <RedisplayReservation NumAttempts="5" WaitInterval="1000"/> </OTA_AirBookRQ> <OTA_AirPriceRQ> <PriceRequestInformation Retain="true"> <OptionalQualifiers> <PricingQualifiers CurrencyCode="EUR"> <PassengerType Code="ADT" Quantity="1"/> </PricingQualifiers> </OptionalQualifiers> </PriceRequestInformation> </OTA_AirPriceRQ> <PostProcessing IgnoreAfter="false"> <RedisplayReservation WaitInterval="5000" UnmaskCreditCard="false"/> </PostProcessing> </EnhancedAirBookRQ>
修改方案
要指定特定的FareBasis Code,需在<OTA_AirPriceRQ>的<PricingQualifiers>节点下添加<FareBasisCodes>子节点,为每个航班段明确指定对应的FareBasis Code,且顺序必须与<OriginDestinationInformation>中的航班段顺序一致。
修改后的示例请求
<EnhancedAirBookRQ xmlns="http://services.sabre.com/sp/eab/v3_10" version="3.10.0" HaltOnError="true"> <OTA_AirBookRQ> <HaltOnStatus Code="NN"/> <HaltOnStatus Code="UC"/> <HaltOnStatus Code="LL"/> <HaltOnStatus Code="PN"/> <HaltOnStatus Code="NO"/> <HaltOnStatus Code="US"/> <HaltOnStatus Code="UU"/> <OriginDestinationInformation> <FlightSegment DepartureDateTime="2023-09-15T15:05:00" FlightNumber="1666" ResBookDesigCode="P" NumberInParty="1" Status="NN"> <DestinationLocation LocationCode="IST"/> <MarketingAirline Code="TK" FlightNumber="1666"/> <MarriageGrp>O</MarriageGrp> <OriginLocation LocationCode="HAM"/> </FlightSegment> <FlightSegment DepartureDateTime="2023-10-17T06:55:00" FlightNumber="1661" ResBookDesigCode="P" NumberInParty="1" Status="NN"> <DestinationLocation LocationCode="HAM"/> <MarketingAirline Code="TK" FlightNumber="1661"/> <MarriageGrp>O</MarriageGrp> <OriginLocation LocationCode="IST"/> </FlightSegment> </OriginDestinationInformation> <RedisplayReservation NumAttempts="5" WaitInterval="1000"/> </OTA_AirBookRQ> <OTA_AirPriceRQ> <PriceRequestInformation Retain="true"> <OptionalQualifiers> <PricingQualifiers CurrencyCode="EUR"> <PassengerType Code="ADT" Quantity="1"/> <!-- 新增指定FareBasis Code,顺序与航班段一一对应 --> <FareBasisCodes> <FareBasisCode>P123XYZ</FareBasisCode> <!-- 去程对应FareBasis Code --> <FareBasisCode>P456ABC</FareBasisCode> <!-- 回程对应FareBasis Code --> </FareBasisCodes> </PricingQualifiers> </OptionalQualifiers> </PriceRequestInformation> </OTA_AirPriceRQ> <PostProcessing IgnoreAfter="false"> <RedisplayReservation WaitInterval="5000" UnmaskCreditCard="false"/> </PostProcessing> </EnhancedAirBookRQ>
关键注意事项
<FareBasisCodes>中的<FareBasisCode>数量必须与航班段数量完全匹配,顺序严格对应- 将示例中的
P123XYZ、P456ABC替换为你实际需要选择的FareBasis Code - 确保
<FlightSegment>中的ResBookDesigCode与指定FareBasis Code对应的舱位等级一致,避免定价冲突
内容的提问来源于stack exchange,提问作者Developer Travellers
相关产品推荐
相关产品推荐

