API Information

Response Format
JSON
Method/Endpoint
BargainFinderMax_ADRQv4.1.0/shop/altdates/flights
Current Version
4.1.0
Target Audience
TN
Environment
Production
Documentation
Go to the Alternate Date documentation

What's New

  • Alternate Date has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
  • Return only options with at least one free bag.
  • Search by fare basis code(s).
  • Exclude Codeshare flights.
  • Additionally the following information will be returned in the response:
  • More details in the Selling Fare Data applicable to Agency Retailer.
  • Extended Ancillary Fee Groups with ancillary subcode(s), type(s) and hints for up to 10 standard bags.

Business Value

  • These enhancements drive greater transparency for baggage allowance and charges, a more streamlined workflow with multiple fares per itinerary and more targeted results with the shop by fare basis code, and a better schedule filtering options with the exclude codeshares parameter.

New Features

In the Request

Optional

Parameter: FreePieceRequired

Type: Boolean

Description: Indicator to specify only fare options that include a bag in the fare filed to be returned. Exclude any fares that do not include at least one free bag. The parameter to be used in a search, at the leg level.

Sample Value:

{ "TravelPreferences": { "TPA_Extensions": "", "Baggage": { "FreePieceRequired": "false", "RequestType": "A" } } }
Note: Only options with free pieces will be returned. It is required to specify the baggage Request type “A” - Allowance or “C” - Charges in the request, to shop for a free bag.
Parameter: FreePieceRequired

Type: Boolean

Description: Indicator to specify only fare options that include a bag in the fare filed to be returned. Exclude any fares that do not include at least one free bag. The parameter to be used in a search for the whole journey.

Sample Value:

{ "TravelPreferences": { "TPA_Extensions": { "Baggage": { "RequestType": "A", "FreePieceRequired": "true" } } } }
Note: Only options with free pieces will be returned. It is required to specify the baggage Request type “A” - Allowance or “C” - Charges in the request, to shop for a bag.
Parameter: FreePieceRequired

Type: Boolean

Description: Indicator to specify only fare options that include a bag in the fare filed to be returned. Exclude any fares that do not include at least one free bag. The parameter to be used in a search, at the leg level.

Sample Value:

{ "FlexibleFares": { "FareParameters": { "Leg": [ { "Num": 1, "Baggage": { "FreePieceRequired": "true" } }, { "Num": 2, "Baggage": { "FreePieceRequired": "false" } } ] } } }
Note: Only options with free pieces will be returned. It is required to specify the baggage Request type “A” - Allowance or “C” - Charges in the request, to shop for a free bag.
Parameter: FreePieceRequired

Type: Boolean

Description: Indicator to specify only fare options that include a bag in the fare filed to be returned. Exclude any fares that do not include at least one free bag. The parameter to be used in a search for the MFPI group.

Sample Value:

{ "FlexibleFares": { "FareParameters": { "Baggage": { "FreePieceRequired": "true" }, "Leg": [ { "Num": 1, "Cabin": { "Type": "Y" } }, { "Num": 2, "Cabin": { "Type": "Y" } } ] } } }
Note: Only options with free pieces will be returned. It is required to specify the baggage Request type “A” - Allowance or “C” - Charges in the request, to shop for a free bag.
Parameter: FareBasis Code

Type: FareBasisType

Description: Fare basis code(s) to be used in a search, at the leg level, in the multiple fares per itinerary group definition.

Sample Value:

{ "FlexibleFares": { "FareParameters": { "ClassOfService": { "Code": "U" }, "Leg": { "Num": 1, "ClassOfService": { "Code": "Q" }, "FareBasis": { "Code": "YCA-" } } } } }
Note: Multiple fare basis code can be requested at the leg level in each multiple fares per itinerary group. Allows wildcards.
Parameter: FareBasis Code

Type: FareBasisType

Description: Ffare basis code(s) to be used in a search, for the whole itinerary, in the multiple fares per itinerary group definition.

Sample Value:

{ "FlexibleFares": { "FareParameters": { "PassengerTypeQuantity": { "Code": "NEG", "Quantity": 2 }, "FareBasis": [ { "Code": "LLX-" }, { "Code": "-1S5" } ] } } }
Note: Multiple fare basis codes can be requested in each multiple fares per itinerary group. Allows wildcards.
Parameter: CodeShareIndicator

Type: CodeShareIndicator

Description: Ability to filter out codeshare flights. This new option is available with two attributes: “ExcludeCodeshare” removes codeshare flights. The same Marketing/Operating (base flights), can be combined with “KeepOnlines” to also return the online flights that are codeshare, for more diversity.

Sample Value:

{ "TravelPreferences": { "TPA_Extensions": { "CodeShareIndicator": { "ExcludeCodeshare": "true", "KeepOnlines": "false" } } } }

In the Response

Required

Parameter: BaggageID

Type: BaggageIDType

Description: Baggage ID number for the applicable baggage hints.

Sample Value:

{ "OrderStandardBag": { "PassengerBags": { "Code": "ADT", "BaggageSequenceOrder": [ { "BaggageID": 1, "StandardBag": 1 }, { "BaggageID": 2, "StandardBag": 2 }, { "BaggageID": 3, "StandardBag": 3 } ] } } }
Parameter: StandardBag

Type: Short

Description: Standard baggage hint: for example, “1” is the first standard baggage, “2” is the second standard baggage, etc.

Sample Value:

{ "OrderStandardBag": { "PassengerBags": { "Code": "ADT", "BaggageSequenceOrder": [ { "BaggageID": 1, "StandardBag": 1 }, { "BaggageID": 2, "StandardBag": 2 }, { "BaggageID": 3, "StandardBag": 3 } ] } } }

Optional

Parameter: NoMarkupBaseFare

Type: Boolean

Description: Applicable to Agency Retailer subscribers. Indicates the original base selling fare, which can include any Fare Retailer Net fare Markups plus any Fare Retailer Handling Fees. Excludes all Fare Retailer Selling rule adjustments.

Sample Value:

{ "NoMarkupBaseFare": { "Amount": 161.00, "CurrencyCode": "USD" } }
Parameter: HiddenHandlingFee

Type: Boolean

Description: Applicable to Agency Retailer subscribers. Indicates whether a Fare Retailer hidden Handling fee rule was applied.

Sample Value:

{ "SellingFareData": { "LayerTypeName": "ART", "HiddenHandlingFee": "true", "HandlingMarkupSummary": [ { "TypeCode": "A", "Description": "3PCT", "ExtendedDescription": "HAND BSE", "MonetaryAmountValue": 0.56, "HiddenHandlingFee": "true" }, { "TypeCode": "C", "Description": "HAND PTK", "ExtendedDescription": "HAND PTK", "MonetaryAmountValue": 15.00, "HiddenHandlingFee": "true" }, { "TypeCode": "E", "Description": "2PCT", "ExtendedDescription": "HAND TTL", "MonetaryAmountValue": 0.97, "HiddenHandlingFee": "true" } ] } }
Parameter: NonHiddenHandlingFee

Type: Boolean

Description: Applicable to Agency Retailer subscribers. Indicates whether Fare Retailer non-hidden Handling Fee rule was applied.

Sample Value:

{ "SellingFareData": { "LayerTypeName": "ART", "NonHiddenHandlingFee": "true", "HandlingMarkupSummary": { "TypeCode": "B", "Description": "5PCT", "ExtendedDescription": "HAND BSE", "MonetaryAmountValue": 1.00, "NonHiddenHandlingFee": "true" } } }
Parameter: FareRetailerRule

Type: Boolean

Description: Applicable to Agency Retailer subscribers. Indicates whether a Fare Retailer-Selling level rule was applied.

Sample Value:

{ "HandlingMarkupSummary": { "TypeCode": "J", "Description": "ADJT AMT", "ExtendedDescription": "ADJT AMT", "MonetaryAmountValue": 6.04, "FareRetailerRule": "true" } }
Parameter: AncillaryTypeCode

Type: String

Description: AncillaryTypeCode that corresponds to a type of ancillary, type F or P (treated as F) and is being displayed for all the ancillary groups.

Sample Value:

{ "AncillaryFeeGroup": { "Code": "BG", "Name": "BAGGAGE", "AncillaryFeeItem": [ { "Amount": 25.00, "Description": "1ST ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CC", "BaggageID": 1 }, { "Amount": 45.00, "Description": "2ND ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CD", "BaggageID": 2 }, { "Amount": 45.00, "Description": "3RD OR MORE ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CE", "BaggageID": 3 }, { "Amount": 30.80, "Description": "RUCKSACK OR KNAPSACK", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0EB", "BaggageID": 4 } ] } }
Note: If one of the records is F type and another P (treated as F) and both have the same subcode, P type will take precedence.
Parameter: Subcode

Type: String

Description: Optional service industry subcodes that are being displayed for all ancillary groups.

Sample Value:

{ "AncillaryFeeGroup": { "Code": "BG", "Name": "BAGGAGE", "AncillaryFeeItem": [ { "Amount": 25.00, "Description": "1ST ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CC", "BaggageID": 1 }, { "Amount": 45.00, "Description": "2ND ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CD", "BaggageID": 2 }, { "Amount": 45.00, "Description": "3RD OR MORE ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CE", "BaggageID": 3 }, { "Amount": 30.80, "Description": "RUCKSACK OR KNAPSACK", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0EB", "BaggageID": 4 } ] } }
Note: List of standard ATPCO subcodes: 0CC, 0CD, 0CE, 0CF, 0CG, 0CH, 0CI, 0CJ, 0CK, 0EN.
Parameter: BaggageID

Type: BaggageIDType

Description: Baggage ID number that follows the current hierarchy in sorting Air Extras.

Sample Value:

{ "AncillaryFeeGroup": { "Code": "BG", "Name": "BAGGAGE", "AncillaryFeeItem": [ { "Amount": 25.00, "Description": "1ST ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CC", "BaggageID": 1 }, { "Amount": 45.00, "Description": "2ND ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CD", "BaggageID": 2 }, { "Amount": 45.00, "Description": "3RD OR MORE ADDITIONAL BAG", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0CE", "BaggageID": 3 }, { "Amount": 30.80, "Description": "RUCKSACK OR KNAPSACK", "OriginAirport": "AMS", "DestinationAirport": "LHR", "Carrier": "KL", "PassengerCode": "ADT", "Date": "2018-04-10", "StartSegment": 1, "EndSegment": 1, "AncillaryTypeCode": "F", "Subcode": "0EB", "BaggageID": 4 } ] } }
Parameter: Code

Type: PassengerCodeType

Description: Passenger type code related to a specific baggage sequence order with applicable hints.

Sample Value:

{ "OrderStandardBag": { "PassengerBags": { "Code": "ADT", "BaggageSequenceOrder": [ { "BaggageID": 1, "StandardBag": 1 }, { "BaggageID": 2, "StandardBag": 2 }, { "BaggageID": 3, "StandardBag": 3 } ] } } }