Skip Navigation

Bargain Finder Max

Air
Search
REST API
Travel Agency
Try Now
  • This release contains a Swagger documentation update.

API Information

Format
JSON
Endpoint
/v4/offers/shop
Current Version
4
Environment
Production

What's New

  • This release contains a Swagger documentation update.

Resolved Issues

In the Request

Optional

Description: The value of the `PreferLevel` parameter under the `Cabinpref` element has been updated in the request.


  • This release contains a Swagger documentation update.

API Information

Format
JSON
Endpoint
/v5/offers/shop
Current Version
5
Environment
Production

What's New

  • This release contains a Swagger documentation update.

Resolved Issues

In the Request

Optional

Description: The value of the `PreferLevel` parameter under the `Cabinpref` element has been updated in the request.


  • New "PublishedFareCurrency" element was added under "FareComponentDesc" to the GIR Response. This element will return the local 3-letter currency code.
  • New "OriginDestinationInformationRef" element was added in the GIR Response as a reference number to "OriginDestinationInformation" from the request to match one-way itineraries into a full journey.
  • Attributes "PseudoCityCode" was updated to not allow lower-case letters.
  • Due to ASRM (Air Shopping Rule Manager) GUI and related functionality sunset, the TravelPersona attribute was removed with the 6.8.0/v5 release (06/30/2023).
  • Disclosure Airline code will no longer show under the Operating Airline code element as default. "OperatingAirline" will show the true operating carrier code and "DisclosureAirline" will show the disclosure carrier code. This change will be applied for any customer adopting SOAP/XML 6.8.0 or REST/JSON v5 for BFM/Revalidate and higher versions.
  • The "FareCurrency" element was updated to display the "NUC" 3-letter currency code and not the local currency code, as in the previous versions.
  • "FareAmount" was updated to display the "NUC" currency value and not the local currency value, as in the previous versions.

API Information

Format
JSON
Endpoint
/v5/offers/shop
Current Version
5
Environment
Production

What's New

  • New "PublishedFareCurrency" element was added under "FareComponentDesc" to the GIR Response. This element will return the local 3-letter currency code.
  • New "OriginDestinationInformationRef" element was added in the GIR Response as a reference number to "OriginDestinationInformation" from the request to match one-way itineraries into a full journey.
  • Attributes "PseudoCityCode" was updated to not allow lower-case letters.
  • Due to ASRM (Air Shopping Rule Manager) GUI and related functionality sunset, the TravelPersona attribute was removed with the 6.8.0/v5 release (06/30/2023).
  • Disclosure Airline code will no longer show under the Operating Airline code element as default. "OperatingAirline" will show the true operating carrier code and "DisclosureAirline" will show the disclosure carrier code. This change will be applied for any customer adopting SOAP/XML 6.8.0 or REST/JSON v5 for BFM/Revalidate and higher versions.
  • The "FareCurrency" element was updated to display the "NUC" 3-letter currency code and not the local currency code, as in the previous versions.
  • "FareAmount" was updated to display the "NUC" currency value and not the local currency value, as in the previous versions.

Business Value

  • Each of these enhancements enables greater personalization and efficiency to further refine the search.

New Features

In the Response

Optional

Parameter: PublishedFareCurrency

Type: String

Description: Added under "FareComponentDesc" in the GIR response. Returns the local 3-letter currency code.

Sample Value:

GIR-JSON RS:
...
"fareComponentDescs": [
      {
        "id": 1,
        "governingCarrier": "WS",
        "fareAmount": 217.0812248381,
        "fareCurrency": "NUC",
        "fareBasisCode": "LBVF4QBK",
        "farePassengerType": "ADT",
        "publishedFareAmount": 217.08,
        "publishedFareCurrency": "CAD",
        "directionality": "FROM",
        "applicablePricingCategories": "2 3 5 8 10 12 16 31 33",
        "aslRetailerRuleCode": "HPSHFALL",
        "vendorCode": "ATP",
        "fareTypeBitmap": "00",
        "fareType": "EOU",
        "fareTariff": "45",
        "fareRule": "EL01",
        "cabinCode": "Y",
        "segments": [{"segment": {}}, {"segment": {"stopover": true}}],
        "handlingMarkupDetails": [
...
        ]
      },
...
Note:

In the Response

Optional

Parameter: OriginDestinationInformationRef

Type: integer

Description: Added in the GIR response as a reference number to help match one-way itineraries to full journeys.

Sample Value:

GIR-JSON RS:
...
{
"id": 1,
"pricingSource": "ADVJR1",
"originDestinationInformationRef": 1,
"legs": [
{
"ref": 64
}
]
...
}
...
Note:

Functional Updates And Enhancements

In the Request

Required

Parameter: TravelerPersona

Type: string

Description: Due to ASRM (Air Shopping Rule Manager) GUI and related functionality sunset, the TravelPersona was ignored after 31 March 2023 and finally removed from the 6.8.0/v5 release (06/30/2023) schema.

Sample Value:

JSON RQ:
...
{
  "TPA_Extensions": {
    "IntelliSellTransaction": {
...
      "TravelerPersona": "ABC1",
...
    }
  }
}
...
Note: TravelerPersona identified the traveler’s profile to be used with the Air Shopping Rules Manager. The name of the "Travel Persona" was to be used with the Air Shopping Rules Manager application only.

In the Request

Required

Parameter: PseudoCityCode

Type: string

Description: PseudoCityCode was updated to not allow lower-case letters.

Sample Value:

OTA RQ:
...
"POS": {
"Source": [
{
"PseudoCityCode": "ABC1",
"RequestorID": {
"Type": "0.AAA.X",
"ID": "REQ.ID",
"CompanyName": {
"Code": "TN"
}
}
}
]
},
...
Note: PseudoCityCode: Four-character pseudo city code (PCC).

In the Response

Required

Parameter: OperatingAirline Code

Type: string

Description: Disclosure Airline code will no longer show under the Operating Airline code element as default. "OperatingAirline" will show the true operating carrier and "DisclosureAirline" will now return the disclosure carrier. This change will be applied to any customer adopting SOAP/XML 6.8.0 or REST/JSON v5 for BFM/Revalidate and higher versions.

Sample Value:

RS example:
{
  "FlightSegment": {
...
    "OperatingAirline": "KL",
...
    "DisclosureAirline": "WA",
...
    }
  }
}
Note:

In the Response

Required

Parameter: fareCurrency

Type: string

Description: Updated to display the "NUC" 3-letter currency code and not the local currency code, as was done in previous versions.

Sample Value:

    "fareComponentDescs": [
      {
        "id": 1,
        "governingCarrier": "WS",
        "fareAmount": 222.29,
        "fareCurrency": "NUC",
        "fareBasisCode": "LBVF4QBK",
        "farePassengerType": "ADT",
        "publishedFareAmount": 222.29,
        "publishedFareCurrency": "CAD",
        "directionality": "FROM",
        "applicablePricingCategories": "2 3 5 8 10 12 16 31 33",
        "aslRetailerRuleCode": "HPSHFALL",
        "vendorCode": "ATP",
        "fareTypeBitmap": "00",
        "fareType": "EOU",
        "fareTariff": "45",
        "fareRule": "EL01",
        "cabinCode": "Y",
        "segments": [{"segment": {}}, {"segment": {"stopover": true}}],
        "handlingMarkupDetails": [
...
        ]
      },
Note:

In the Response

Required

Parameter: fareAmount

Type: integer

Description: Updated to display the "NUC" currency value and not the local currency value, as was done in previous versions.

Sample Value:

    "fareComponentDescs": [
      {
        "id": 1,
        "governingCarrier": "WS",
        "fareAmount": 222.29,
        "fareCurrency": "NUC",
        "fareBasisCode": "LBVF4QBK",
        "farePassengerType": "ADT",
        "publishedFareAmount": 222.29,
        "publishedFareCurrency": "CAD",
        "directionality": "FROM",
        "applicablePricingCategories": "2 3 5 8 10 12 16 31 33",
        "aslRetailerRuleCode": "HPSHFALL",
        "vendorCode": "ATP",
        "fareTypeBitmap": "00",
        "fareType": "EOU",
        "fareTariff": "45",
        "fareRule": "EL01",
        "cabinCode": "Y",
        "segments": [{"segment": {}}, {"segment": {"stopover": true}}],
        "handlingMarkupDetails": [
...
        ]
      },
Note:

  • The Bargain Finder Max has been enhanced with the following changes:
  • UniversalTicketingAttributes - allows to return ATPCO Route Happy Universal Ticket Attributes content in the response.
  • UniversalProductAttributes - allows to return ATPCO Route Happy Universal Product Attributes content in the response.
  • UniversalTicketingAttributes & UniversalProductAttributes Language, translations can be specified and returned if applicable.
  • Ability to fix PCC(s) in the BFM request in addition to recommended PCC(Global Shopping) was added.

API Information

Format
JSON
Endpoint
/v4/offers/shop
Current Version
4
Environment
Production

What's New

  • The Bargain Finder Max has been enhanced with the following changes:
  • UniversalTicketingAttributes - allows to return ATPCO Route Happy Universal Ticket Attributes content in the response.
  • UniversalProductAttributes - allows to return ATPCO Route Happy Universal Product Attributes content in the response.
  • UniversalTicketingAttributes & UniversalProductAttributes Language, translations can be specified and returned if applicable.
  • Ability to fix PCC(s) in the BFM request in addition to recommended PCC(Global Shopping) was added.

Business Value

  • Each of these enhancements enables greater personalization and efficiency to further refine the search.

New Features

In the Request

Optional

Parameter: UniversalTicketingAttributes

Type: boolean

Description: Parameter allows to return ATPCO Route Happy Universal Ticket Attributes content in the response.

Sample Value:

RQ:

"RichContent": {
"UniversalTicketingAttributes": true,
"Language": "es"
}
Note: Universal Ticket Attributes (UTAs): Provide standardized, easy to integrate fare benefits and restrictions and can be composed by refundability, changes, baggage, carry-on allowance, seat selection, priority boarding attributes.

In the Request

Optional

Parameter: Language

Type: string

Description: Allows specifying the desired language translations for Universal Ticket and Product Attributes.

Sample Value:

RQ:

"RichContent": {
"UniversalTicketingAttributes": true,
"Language": "es"
}
Note: If the language is not specified, it defaults to EN. If the translations are not available in provided language or the provided language code is incorrect, it defaults to EN.

In the Request

Optional

Parameter: FixedPCC

Type: boolean

Description: Prevent replacing provided PCC by Global Shopping recommendation.

Sample Value:

RQ:
"POS": {
"Source": [
{
"FixedPCC": true,
"PseudoCityCode": " ABC1 ",
"RequestorID": {
"Type": "1",
"ID": "1",
"CompanyName": {
"Code": "TN"
}
}
}
]
},

...
"AlternatePCC": [
{
"PseudoCityCode": "ABC1",
"FixedPCC": true
},
{
"PseudoCityCode": "ABC1"
}
Note: Universal Product Attributes (UPAs): Provide targeted messaging and visual content that showcases airline products and services eg., media, photos, videos, graphics, and captions.

In the Response

Optional

Parameter: utaDescs

Type: List

Description: List of Universal Ticket attributes presented in an indexed way that can easily be associated with flight components. A List of all UTAs that are available on any of the returned flights.

Sample Value:

RS:

 "utaDescs": [
      {
        "id": 1,
        "categoryId": "seat-selection",
        "groupCode": "SA",
        "subCode": "PSA",
        "application": "F",
        "assessment": "benefit",
        "headline": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n",
        "descriptions": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n",
        "commercialName": "PRE RESERVED SEATS",
        "smallIconUrl": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n",
        "largeIconUrl": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n"
      },
      ...
 ],
Note: *NOTE: Headline, Description, SmallIconUrl, and LargeIconUrl values are Base64 coded(this is due to the complexity and multiple special characters used across the available languages translations.

In the Response

Optional

Parameter: upaDescs

Type: List

Description: List of Universal Product attribute items presented in an indexed way that can easily be associated with flight components. A List of all UPAs that are available on any of the returned flights.

Sample Value:

RS:

"upaDescs": [
      {
        "id": 1,
        "smallIconUrl": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n",
        "largeIconUrl": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n",
        "headline": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n",
        "description": "RXhhbXBsZSBCYXNlNjQgc3RyaW5n",
        "categories": [{"ref": 9}],
        "photos": [{"ref": 13}]
      },
],
Note: *NOTE: Headline, Description, SmallIconUrl, ThumbUrl, MediumSquareUrl, Caption, URL, and LargeIconUrl values are Base64 coded(this is due to the complexity and multiple special characters used across the available languages translations.

In the Response

Optional

Parameter: richContent

Type: List

Description: Rich Content information (UTA, UPA) associated to the returned flights with a specific reference Id(UTARef, UPARef).

Sample Value:

RS:

"richContent": {
                          "universalTicketingAttributes": [
                            {"utas": [{"ref": 49}, {"ref": 20}]},
                            {"segments": [{"id": 0}], "utas": [{"ref": 2}, {"ref": 17}]},
                            {
                              "segments": [{"id": 0}],
                              "utas": [{"ref": 10}, {"ref": 40}, {"ref": 14}]
                            },
                            {"segments": [{"id": 1}], "utas": [{"ref": 2}, {"ref": 17}]},
                            {
                              "segments": [{"id": 1}],
                              "utas": [{"ref": 10}, {"ref": 14}]
                            }
                          ],
                          "universalProductAttributes": [
                            {"segments": [{"id": 0}], "upas": [{"ref": 17}, {"ref": 38}]},
                            {"segments": [{"id": 1}], "upas": [{"ref": 17}, {"ref": 15}]}
                          ]

In the Request

Optional

Parameter: UniversalProductAttributes

Type: boolean

Description: Parameter allows to return ATPCO Route Happy Universal Product Attributes content in the response.

Sample Value:

"RichContent": {
"UniversalProductAttributes": true,
}
Note: Universal Product Attributes (UPAs): Provide targeted messaging and visual content that showcases airline products and services eg., media, photos, videos, graphics, and captions.

  • The Bargain Finder Max Request has been enhanced with the following changes:
  • AvoidCabinDowngrade - new optional elements in the shopping request. Release date: June 30, 2022
  • NOTICE: Due to ASRM GUI(Air Shopping Rule Manager) and related functionality sunset, the TravelPersona attribute will be ignored after 31 March 2023.

API Information

Format
JSON
Endpoint
/v4/offers/shop
Current Version
4
Environment
Production

What's New

  • The Bargain Finder Max Request has been enhanced with the following changes:
  • AvoidCabinDowngrade - new optional elements in the shopping request. Release date: June 30, 2022
  • NOTICE: Due to ASRM GUI(Air Shopping Rule Manager) and related functionality sunset, the TravelPersona attribute will be ignored after 31 March 2023.

Business Value

  • Each of these enhancements enables greater personalization and efficiency to further refine the search.

New Features

In the Request

Optional

Parameter: AvoidCabinDowngrade

Type: boolean

Description: AvoidCabinDowngrade guarantees that lower cabin class will not be applied within a single shopping option, depending on the chosen mode: All - Apply Avoid Cabin Downgrade logic on the entire itinerary; Main - Apply Avoid Cabin Downgrade logic on the main flight of every leg; None - Disable Avoid Cabin Downgrade logic (default value).

Sample Value:

{
    "TravelPreferences": {
        "TPA_Extensions": {
            "AvoidCabinDowngrade": {
                "Mode": "All"
            },
            "FlexibleFares": {
                "FareParameters": [{
                        "Cabin": {
                            "Type": "C"
                        },
                        "AvoidCabinDowngrade": {
                            "Mode": "Main"
                        }
                    }
                ]
            }
        }
    },
}
Note: AvoidCabinDowngrade can be used on the main or flex fare level. Release date: June 30, 2022

  • The Bargain Finder Max Request has been enhanced with the following changes:
  • Shop by Priority boarding - new optional elements in the shopping request and response.
  • Shop by Seat type/pitch - new optional elements in the shopping request and response.
  • AvoidCabinDowngrade - new optional elements in the shopping request. Release date: June 30, 2022
  • NOTICE: Due to ASRM GUI(Air Shopping Rule Manager) and related functionality sunset, the TravelPersona attribute will be ignored after 31 March 2023.

API Information

Format
JSON
Endpoint
/v4/offers/shop
Current Version
4
Environment
Production

What's New

  • The Bargain Finder Max Request has been enhanced with the following changes:
  • Shop by Priority boarding - new optional elements in the shopping request and response.
  • Shop by Seat type/pitch - new optional elements in the shopping request and response.
  • AvoidCabinDowngrade - new optional elements in the shopping request. Release date: June 30, 2022
  • NOTICE: Due to ASRM GUI(Air Shopping Rule Manager) and related functionality sunset, the TravelPersona attribute will be ignored after 31 March 2023.

Business Value

  • Each of these enhancements enables greater personalization and efficiency to further refine the search.

New Features

In the Request

Optional

Parameter: PriorityBoarding

Type: Boolean

Description: The purpose of Shop by Priority Boarding is to enable Shopping with the ability to create a more modernized way to display relevant offers from the same or different airlines for easy comparison to travelers.

Sample Value:

{
    "TravelPreferences": {
        "CabinPref": [
            {
                "Cabin": "Y",
                "PreferLevel": "Preferred"
            }
        ],
        "TPA_Extensions": {
            "NumTrips": {
                "Number": 100
            },
            "PriorityBoarding": {
                "FreePriorityBoarding": true,
                "Info": true
            }
        }
    }
}

In the Request

Optional

Parameter: Info

Type: Boolean

Description: Supports a request to return priority boarding information about what is included in the fare regarding priority boarding.

Sample Value:

{
    "TravelPreferences": {
        "CabinPref": [
            {
                "Cabin": "Y",
                "PreferLevel": "Preferred"
            }
        ],
        "TPA_Extensions": {
            "NumTrips": {
                "Number": 100
            },
            "PriorityBoarding": {
                "FreePriorityBoarding": true,
                "Info": true
            }
        }
    }
}

In the Request

Optional

Parameter: Seats

Type: Boolean

Description: The purpose of Shop by Seat Pitch and Seat Type is to enable Shopping to create a more modernized way to display relevant offers from the same or different airlines for easy comparison to travelers.

Sample Value:

{
    "TravelPreferences": {
        "TPA_Extensions": {
            "Seats": {
                "Seat": [
                    {
                        "Type": "StandardLegroom",
                        "AtLeast": 10,
                        "LessThan": 34
                    }
                ]
            }
        }
    }
}
Note: Support mode to filter by Seat Type and/or Seat Pitch (measured in inches) to return only an offer that matches the condition indicated in the attribute.

In the Request

Optional

Parameter: SeatInfo

Type: Boolean

Description: Support to return Seat Type and Seat Pitch information about what is included in the offer regarding seat type and seat pitch.

Sample Value:

{
    "RichContent": {
        "SeatInfo": true
    }
}

In the Response

Optional

Parameter: PriorityBoardingList

Type: Boolean

Description: PriorityBoardingList provides information for whether priority boarding is free, chargeable, or information is not available (F - Free (No charge); C - Charge; N - Not available).

Sample Value:

{
    "priorityBoarding": [
        {
            "type": "C",
            "segment": [
                {
                    "id": 0
                }
            ]
        }
    ]
}

In the Response

Optional

Parameter: Seat

Type: Boolean

Description: List of references to flight amenities. The Seat element describes properties of seats in each cabin. These elements are later referenced from Flight Amenities.

Sample Value:

"flightAmenities": {
      "seat": [
        {
          "id": 1,
          "pitch": "37",
          "type": "recliner seat"
        },

(...)

{
    "fareComponents": [
        {
            "ref": 17,
            "segments": [
                {
                    "segment": {
                        "bookingCode": "L",
                        "cabinCode": "Y",
                        "mealCode": "S",
                        "seatsAvailable": 9,
                        "availabilityBreak": true,
                        "flightAmenities": [
                            {
                                "seatRef": 2
                            }
                        ]
                    }
                }
            ]
        }
    ]
}

In the Request

Optional

Parameter: AvoidCabinDowngrade

Type: boolean

Description: AvoidCabinDowngrade guarantees that lower cabin class will not be applied within a single shopping option, depending on the chosen mode: All - Apply Avoid Cabin Downgrade logic on the entire itinerary; Main - Apply Avoid Cabin Downgrade logic on the main flight of every leg; None - Disable Avoid Cabin Downgrade logic (default value).

Sample Value:

{
    "TravelPreferences": {
        "TPA_Extensions": {
            "AvoidCabinDowngrade": {
                "Mode": "All"
            },
            "FlexibleFares": {
                "FareParameters": [{
                        "Cabin": {
                            "Type": "C"
                        },
                        "AvoidCabinDowngrade": {
                            "Mode": "Main"
                        }
                    }
                ]
            }
        }
    },
}
Note: AvoidCabinDowngrade can be used on the main or flex fare level. Release date: June 30, 2022

  • The Bargain Finder Max GIR Responses have been enhanced with minor fixes:

API Information

Format
JSON
Endpoint
/v4/offers/shop
Current Version
4
Environment
Production

What's New

  • The Bargain Finder Max GIR Responses have been enhanced with minor fixes:

Business Value

  • Each of these enhancements enable greater personalization and efficiency to further refine the search.


  • The BargainFinderMax Request has been enhanced with the following changes:
  • Flight Amenities - distribute ATPCO Routehappy rich content via BargainFinderMax.
  • Shop by Carry-On baggage - two new attributes added into existing baggage sections.
  • The BargainFinderMax GIR Response have been enhanced with the new parameters and other changes listed below:
  • Shop by Carry-On baggage - new elements in the shopping response.
  • Flight Amenities - new ATPCO Routehappy rich content in the shopping response.
  • Baggage Charge EquivalentAmount and EquivalentCurrency attributes were changed from required to optional.

API Information

Format
JSON
Endpoint
/v3/offers/shop
Current Version
3
Environment
Production

What's New

  • The BargainFinderMax Request has been enhanced with the following changes:
  • Flight Amenities - distribute ATPCO Routehappy rich content via BargainFinderMax.
  • Shop by Carry-On baggage - two new attributes added into existing baggage sections.
  • The BargainFinderMax GIR Response have been enhanced with the new parameters and other changes listed below:
  • Shop by Carry-On baggage - new elements in the shopping response.
  • Flight Amenities - new ATPCO Routehappy rich content in the shopping response.
  • Baggage Charge EquivalentAmount and EquivalentCurrency attributes were changed from required to optional.

Business Value

  • Each of these enhancements enables greater personalization and efficiency to further refine the search.

New Features

In the Request

Optional

Parameter: FlightAmenities

Type: Boolean

Description: Allow distribution of the Routehappy Amenities content through BargainFinderMaxRQ and RevalidateItinRQ. The default value is false.

Sample Value:

"RichContent": {
    "FlightAmenities": true
}
Note: Amenities - Comprehensive flight amenities data about the onboard experience. Functionality requires activation. xPath: OTA_AirLowFareSearchRQ/TPA_Extensions/RichContent/@FlightAmenities

In the Request

Optional

Parameter: FreeCarryOn

Type: Boolean

Description: Allows filtering solution by availability with Free Carry-On baggage - available on Main Fare, Main Fare Leg, Flex Fares, Flex Fares Leg. Available through BargainFinderMaxRQ and RevalidateItinRQ.

Sample Value:

"TravelPreferences": {
    "TPA_Extensions": {
        "FlexibleFares": {
            "FareParameters": [{
                    "Baggage": {
                        "FreePieceRequired": true,
                        "FreeCarryOn": true
                    },
                    "Leg": [{
                            "Baggage": {
                                "FreePieceRequired": false,
                                "FreeCarryOn": false
                            }
                        }
                    ]
                }
            ]
        }
    },
    "Baggage": {
        "RequestType": "A",
        "Description": true,
        "RequestedPieces": 4,
        "FreePieceRequired": true,
        "FreeCarryOn": true,
        "CarryOnInfo": true
    }
},
Note: If one of the new attributes is specified on leg level, it is overriding the setting for the fare.

In the Request

Optional

Parameter: CarryOnInfo

Type: Boolean

Description: Show Carry-on baggage info in response - available on Main Fare. Available through BargainFinderMaxRQ and RevalidateItinRQ.

Sample Value:

"TravelPreferences": {
    "TPA_Extensions": {
        "FlexibleFares": {
            "FareParameters": [{
                    "Baggage": {
                        "FreePieceRequired": true,
                        "FreeCarryOn": true
                    },
                    "Leg": [{
                            "Baggage": {
                                "FreePieceRequired": false,
                                "FreeCarryOn": false
                            }
                        }
                    ]
                }
            ]
        }
    },
    "Baggage": {
        "RequestType": "A",
        "Description": true,
        "RequestedPieces": 4,
        "FreePieceRequired": true,
        "FreeCarryOn": true,
        "CarryOnInfo": true
    }
},
Note: If one of the new attributes is specified on leg level, it is overriding the setting for the fare.

In the Response

Required

Parameter: ProvisionType="B"

Type: BaggageProvisionType

Description: Provision Type (e.g. allowance, charges, embargo etc.) (BPT). For Carry On Allowances.

Sample Value:

GIR:
"baggageAllowanceDescs": [
      {"id": 1, "pieceCount": 0},
      {"id": 2, "pieceCount": 0},
      {"id": 3, "pieceCount": 2},
      {"id": 4, "pieceCount": 2},
      {"id": 5, "pieceCount": 0},
      {"id": 6, "pieceCount": 2},
      {"id": 7, "pieceCount": 1},
      {"id": 8, "pieceCount": 0},
      {"id": 9, "pieceCount": 0},
      {"id": 10, "pieceCount": 1}
 

"baggageInformation": [{
        "provisionType": "B",
        "airlineCode": "DL",
        "segments": [{
                "id": 0
            }
        ],
        "allowance": {
            "ref": 6
        }
    }, {
        "provisionType": "B",
        "airlineCode": "DL",
        "segments": [{
                "id": 1
            }
        ],
        "allowance": {
            "ref": 6
        }
    }
Note: CarryOn in GIR-JSON response – will be returned under "provisionType": "B" with new added Allowance element under BaggageInformation or if Charge under "provisionType": "CC".

In the Response

Optional

Parameter: Allowance Pieces

Type: complexType / integer

Description: Allowance amount stated in pieces.

Sample Value:

GIR:
"baggageAllowanceDescs": [
      {"id": 1, "pieceCount": 0},
      {"id": 2, "pieceCount": 0},
      {"id": 3, "pieceCount": 2},
      {"id": 4, "pieceCount": 2},
      {"id": 5, "pieceCount": 0},
      {"id": 6, "pieceCount": 2},
      {"id": 7, "pieceCount": 1},
      {"id": 8, "pieceCount": 0},
      {"id": 9, "pieceCount": 0},
      {"id": 10, "pieceCount": 1}
 

"baggageInformation": [{
        "provisionType": "B",
        "airlineCode": "DL",
        "segments": [{
                "id": 0
            }
        ],
        "allowance": {
            "ref": 6
        }
    }, {
        "provisionType": "B",
        "airlineCode": "DL",
        "segments": [{
                "id": 1
            }
        ],
        "allowance": {
            "ref": 6
        }
    }
Note: For GIR response amount is referenced to the ID (difference shown in the sample field).

In the Response

Optional

Parameter: ProvisionType="CC"

Type: BaggageProvisionType

Description: Provision Type (e.g. allowance, charges, embargo etc.) (BPT). For Carry On Charges.

Sample Value:

GIR:
"baggageChargeDescs": [{
        "id": 1,
        "equivalentAmount": 100,
        "equivalentCurrency": "EUR",
        "description1": "UP TO 70 POUNDS/32 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }, {
        "id": 2,
        "equivalentAmount": 100,
        "equivalentCurrency": "EUR",
        "description1": "UP TO 70 POUNDS/32 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }, {
        "id": 3,
        "firstPiece": 1,
        "description1": "UP TO 18 POUNDS/8 KILOGRAMS",
        "description2": "UP TO 46 LINEAR INCHES/118 LINEAR CENTIMETERS",
        "noChargeNotAvailable": "X"
    }, {
        "id": 4,
        "equivalentAmount": 150,
        "equivalentCurrency": "EUR",
        "firstPiece": 1,
        "description1": "UP TO 50 POUNDS/23 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }
],


"baggageInformation": [{
        "provisionType": "CC",
        "airlineCode": "LH",
        "segments": [{
                "id": 0
            }
        ],
        "charge": {
            "ref": 3
        }
    }
Note: CarryOn in GIR response – will be returned under "provisionType": "B" with new added Allowance element under BaggageInformation or if Charge under "provisionType": "CC".

In the Response

Optional

Parameter: FlightAmenities

Type: complexType

Description: Route Happy Amenities in GIR shopping response. List of references to flight amenities.

Sample Value:

GIR:
"flightAmenities": {
      "beverage": [{"id": 1, "alcoholicCost": "free", "nonAlcoholicCost": "free", "exists": true}],
      "entertainment": [{"id": 1, "exists": false, "type": "none"}, {"id": 2, "cost": "free", "exists": true, "type": "on-demand"}],
      "food": [
        {"id": 1, "cost": "free", "exists": true, "type": "meal"},
        {"id": 2, "cost": "free", "exists": true, "type": "light meal"},
        {"id": 3, "cost": "free", "exists": true, "type": "snack"},
        {"id": 4, "cost": "free", "exists": true, "type": "premium meal"}


 "ref": 5,
                            "segments": [
                              {"segment": {"bookingCode": "K", "cabinCode": "Y", "mealCode": "G", "seatsAvailable": 2}},
                              {
                                "segment": {
                                  "bookingCode": "K",
                                  "cabinCode": "Y",
                                  "mealCode": "L",
                                  "seatsAvailable": 2,
                                  "availabilityBreak": true,
                                  "flightAmenities": [{"beverageRef": 1, "entertainmentRef": 2, "foodRef": 1, "layoutRef": 7, "powerRef": 2, "seatRef": 9, "wifiRef": 2}]
                                }
                              }
                            ]
                          }
Note: Seat Amenity - Type, Pitch / Beverages Amenity - Alcoholic cost, Nonalcoholic cost, exists / Food Amenity - Cost, Exists, Type / Power Amenity - Cost, Distribution, Type / Layout Amenity - Row layout, Direct Aisle Access / Entertainment Amenity - Cost, Exists, Type / Wi-Fi Amenity - Cost, Exists, Type

Functional Updates And Enhancements

In the Request

Optional

Parameter: RequestType

Type: BaggageRequestType

Description: This element allows users to request baggage information. It allows requesting CarryOn baggage information independently, without the need to display other baggage types.

Sample Value:

"TravelPreferences": {
      "TPA_Extensions": {
        "NumTrips": {"Number": 200},
        "FlexibleFares": {"FareParameters": [{"PublicFare": {"Ind": true}, "Cabin": {"Type": "Economy"}, "Baggage": {"FreeCarryOn": true}, "Leg": [{"Num": 1, "Baggage": {"FreeCarryOn": true}}]}]}
      },
      "Baggage": {"RequestType": "C", "FreeCarryOn": true, "CarryOnInfo": true}
    },
Note: An existing attribute changed from required to optional.

In the Response

Optional

Parameter: EquivalentAmount

Type: MonetaryAmountType

Description: An existing attribute changed from required to optional.

Sample Value:

"baggageChargeDescs": [{
        "id": 1,
        "equivalentAmount": 100,
        "equivalentCurrency": "EUR",
        "description1": "UP TO 70 POUNDS/32 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }, {
        "id": 2,
        "equivalentAmount": 100,
        "equivalentCurrency": "EUR",
        "description1": "UP TO 70 POUNDS/32 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }, {
        "id": 3,
        "firstPiece": 1,
        "description1": "UP TO 18 POUNDS/8 KILOGRAMS",
        "description2": "UP TO 46 LINEAR INCHES/118 LINEAR CENTIMETERS",
        "noChargeNotAvailable": "X"
    }, {
        "id": 4,
        "equivalentAmount": 150,
        "equivalentCurrency": "EUR",
        "firstPiece": 1,
        "description1": "UP TO 50 POUNDS/23 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }
],

In the Response

Optional

Parameter: EquivalentCurrency

Type: CurrencyCodeType

Description: An existing attribute changed from required to optional.

Sample Value:

"baggageChargeDescs": [{
        "id": 1,
        "equivalentAmount": 100,
        "equivalentCurrency": "EUR",
        "description1": "UP TO 70 POUNDS/32 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }, {
        "id": 2,
        "equivalentAmount": 100,
        "equivalentCurrency": "EUR",
        "description1": "UP TO 70 POUNDS/32 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }, {
        "id": 3,
        "firstPiece": 1,
        "description1": "UP TO 18 POUNDS/8 KILOGRAMS",
        "description2": "UP TO 46 LINEAR INCHES/118 LINEAR CENTIMETERS",
        "noChargeNotAvailable": "X"
    }, {
        "id": 4,
        "equivalentAmount": 150,
        "equivalentCurrency": "EUR",
        "firstPiece": 1,
        "description1": "UP TO 50 POUNDS/23 KILOGRAMS",
        "description2": "UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS"
    }
],

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • Shop by Fare Basis Code – project introduces enhancements to our Bargain Finder Max API to support the capability for shopping to exclude a fare option based on Fare Basis Code.
  • Shop by – Class of Service – project introduces enhancements to our Bargain Finder Max API to support the capability for shopping to exclude a fare option based on Class of Service (RBD).
  • Shop with parity mode – the project introduces enhancements to our Multiple Branded Fare shopping capabilities that allows to control the parity mode also for the lowest fare returned.
  • Enhanced Multi-Ticket – the new parameter allows to specify the requested number of One-Way solutions in Multi-Ticket processing.
  • Ancillary, Fare type descriptors - new Fare type descriptors in Bargain Finder Max. Exposure of new elements in the response to describe the fare type, the fare rule and fare tariff. The most relevant is return Fare type code descriptor in the response that indicates Basic Economy fares from the response.

API Information

Format
JSON
Endpoint
/v1/offers/shop
Current Version
1.0.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • Shop by Fare Basis Code – project introduces enhancements to our Bargain Finder Max API to support the capability for shopping to exclude a fare option based on Fare Basis Code.
  • Shop by – Class of Service – project introduces enhancements to our Bargain Finder Max API to support the capability for shopping to exclude a fare option based on Class of Service (RBD).
  • Shop with parity mode – the project introduces enhancements to our Multiple Branded Fare shopping capabilities that allows to control the parity mode also for the lowest fare returned.
  • Enhanced Multi-Ticket – the new parameter allows to specify the requested number of One-Way solutions in Multi-Ticket processing.
  • Ancillary, Fare type descriptors - new Fare type descriptors in Bargain Finder Max. Exposure of new elements in the response to describe the fare type, the fare rule and fare tariff. The most relevant is return Fare type code descriptor in the response that indicates Basic Economy fares from the response.

Business Value

  • Each of these enhancements enable greater personalization and efficiency to further refine the search.

New Features

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Fare Basis Code. Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

 "FareParameters": [
                        {
                            "FareBasis": [
                                {
                                    "Code": "OVAJZNB3",
                                    "PreferLevel": "Preferred"
                                },
                                {
                                    "Code": "ZPLAXJFK",
                                    "PreferLevel": "Preferred"
                                },
                                {
                                    "Code": "IP7J3",
                                    "PreferLevel": "Unacceptable"
                                }
                            ]
                        }
                    ]
                },
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Main fare level. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Fare Basis Code. Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

"OriginDestinationInformation": [
            {
                "RPH": "1",
                "DepartureDateTime": "2020-01-01T00:00:00",
                "OriginLocation": {
                    "LocationCode": "LAX"
                },
                "DestinationLocation": {
                    "LocationCode": "JFK"
                },
                "TPA_Extensions": {
                    "FareBasis": [
                        {
                            "Code": "OVAJZNB3",
                            "PreferLevel": "Preferred"
                        },
                        {
                            "Code": "ZPLAXJFK",
                            "PreferLevel": "Unacceptable"
                        },
                        {
                            "Code": "IP7J1",
                            "PreferLevel": "Preferred"
                        }
                    ]
                }
            },
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Main fare leg level. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Fare Basis Code. Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

 "FareParameters": [
                        {
                            "FareBasis": [
                                {
                                    "Code": "OVAJZNB3",
                                    "PreferLevel": "Preferred"
                                },
                                {
                                    "Code": "ZPLAXJFK",
                                    "PreferLevel": "Preferred"
                                },
                                {
                                    "Code": "IP7J3",
                                    "PreferLevel": "Unacceptable"
                                }
                            ]
                        }
                    ]
                },
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Flex fare level. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Fare Basis Code. Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

"FlexibleFares": {
                    "FareParameters": [
                        {
                            "FareBasis": [
                                {
                                    "Code": "OVAJZNB3",
                                    "PreferLevel": "Preferred"
                                },
                                {
                                    "Code": "ZPLAXJFK",
                                    "PreferLevel": "Preferred"
                                },
                                {
                                    "Code": "IP7J3",
                                    "PreferLevel": "Unacceptable"
                                }
                            ]
                        }
                    ]
                },
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Flex fare leg level. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Class of Service (RBD). Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

"TravelPreferences": {
  "TPA_Extensions": {
    "ClassOfService": [{
        "Code": "J",
        "PreferLevel": "Unacceptable"
      }
    ]
  }
},
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Main Fare. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Class of Service (RBD). Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

"OriginDestinationInformation": [{
    "RPH": "1",
    "DepartureDateTime": "2019-10-27T00:00:00",
    "OriginLocation": {
      "LocationCode": "LAX"
    },
    "DestinationLocation": {
      "LocationCode": "JFK"
    },
    "TPA_Extensions": {
      "ClassOfService": [{
          "Code": "J",
          "PreferLevel": "Unacceptable"
        }
      ]
    }
  }
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Main fare leg level. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Class of Service (RBD). Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

"FlexibleFares": {
    "FareParameters": [
        {
            "ClassOfService": [
                {
                    "Code": "O",
                    "PreferLevel": "Preferred"
                },
                {
                    "Code": "J",
                    "PreferLevel": "Unacceptable"
                }
            ]
        }
    ]
},
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Flex fare level. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: PreferLevel

Type: IncludeExcludePreferLevelType

Description: New parameter to support the capability for shopping to exclude a fare option based on Class of Service (RBD). Allow to exclude for fares in shopping Main Fare and within MFPI (FlexFare group).

Sample Value:

"FlexibleFares": {
  "FareParameters": [{
      "Leg": [{
          "Num": 1,
          "ClassOfService": [{
              "Code": "J",
              "PreferLevel": "Unacceptable"
            }
          ]
        }
      ]
    }
  ]
},
Note: In the BargainFinderMax schema the PreferLevel was added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Flex fare leg level. Used to indicate a level of preference for an associate item: unacceptable or preferred. Default value is Preferred.

In the Request

Optional

Parameter: ParityModeForLowest

Type: string

Description: Parity mode for lowest branded fare. This parameter gives the ability to apply parity mode for the main/primary fare.

Sample Value:

"PriceRequestInformation": {
                "TPA_Extensions": {
                    "BrandedFareIndicators": {
                        "SingleBrandedFare": false,
                        "ParityModeForLowest": "Leg",
                        "MultipleBrandedFares": true
                    }
                }
            }
        },
Note: If set, given parity mode will be forced on the cheapest branded fare solution. If not specified, no parity (None) is forced on the cheapest branded fare solution. It's designed to work with MultipleBrandedFares feature only.

In the Request

Optional

Parameter: RequestedOneWays

Type: positiveInteger

Description: The new parameter RequestedOneWays allows to specify the requested number of One-Way solutions in Multi-Ticket processing.

Sample Value:

            "MultiTicket": {
                "DisplayPolicy": "SOW",
                "RequestedOneWays": 30
            }
        }
    }
}
Note: Allow to set requested number of OneWays in MultiTicket processing.

In the Response

Optional

Parameter: FareType

Type: string

Description: New Fare type descriptors in BargainFinderMax. Provides exposure of new elements in the response to describe the fare type, the fare rule, fare tariff and fare bitmap. The most relevant is return Fare type code descriptor in the response that indicates Basic Economy fares from the response. Fare type (e.g. FIT, RU).

Sample Value:

"fareComponentDescs": [
            {
                "id": 1,
                "governingCarrier": "AA",
                "fareAmount": 79.44,
                "fareCurrency": "USD",
                "fareBasisCode": "OVAJZNB3/DRB",
                "farePassengerType": "ADT",
                "ticketDesignator": "DRB",
                "publishedFareAmount": 79.44,
                "oneWayFare": true,
                "privateFare": true,
                "directionality": "FROM",
                "direction": "WH",
                "notValidBefore": "2020-01-01",
                "notValidAfter": "2020-01-01",
                "applicablePricingCategories": "10 15 18 25",
                "vendorCode": "ATP",
                "fareTypeBitmap": "0A",
                "fareType": "EOU",
                "fareTariff": "770",
                "fareRule": "XX26",
                "segments": [
                    {
                        "segment": {}
                    }
                ]
            }
        ]
Note: Elements "FareType", "ATPCO_FareTariff", "ATPCO_FareRule", "FareIndicator", "PrivateTariffIndicator", and "FareTypeBitmap" are rare. They are part of fare pricing. They should be sent if the carrier uses them also in ancillaries’ records (for example, if a carrier uses private/public fare indicator in the S7 rules).

In the Response

Optional

Parameter: FareTariff

Type: string

Description: New Fare type descriptors in BargainFinderMax. Provides exposure of new elements in the response to describe the fare type, the fare rule, fare tariff and fare bitmap. The most relevant is return Fare type code descriptor in the response that indicates Basic Economy fares from the response. Fare tariff (e.g. 21).

Sample Value:

"fareComponentDescs": [
            {
                "id": 1,
                "governingCarrier": "AA",
                "fareAmount": 79.44,
                "fareCurrency": "USD",
                "fareBasisCode": "OVAJZNB3/DRB",
                "farePassengerType": "ADT",
                "ticketDesignator": "DRB",
                "publishedFareAmount": 79.44,
                "oneWayFare": true,
                "privateFare": true,
                "directionality": "FROM",
                "direction": "WH",
                "notValidBefore": "2020-01-01",
                "notValidAfter": "2020-01-01",
                "applicablePricingCategories": "10 15 18 25",
                "vendorCode": "ATP",
                "fareTypeBitmap": "0A",
                "fareType": "EOU",
                "fareTariff": "770",
                "fareRule": "XX26",
                "segments": [
                    {
                        "segment": {}
                    }
                ]
            }
        ]
Note: Elements "FareType", "ATPCO_FareTariff", "ATPCO_FareRule", "FareIndicator", "PrivateTariffIndicator", and "FareTypeBitmap" are rare. They are part of fare pricing. They should be sent if the carrier uses them also in ancillaries’ records (for example, if a carrier uses private/public fare indicator in the S7 rules).

In the Response

Optional

Parameter: FareRule

Type: string

Description: New Fare type descriptors in BargainFinderMax. Provides exposure of new elements in the response to describe the fare type, the fare rule, fare tariff and fare bitmap. The most relevant is return Fare type code descriptor in the response that indicates Basic Economy fares from the response. FareRule, part of the fare pricing (e.g. 62DD, K0ST), expected if carrier uses them also in ancillaries’ records.

Sample Value:

"fareComponentDescs": [
            {
                "id": 1,
                "governingCarrier": "AA",
                "fareAmount": 79.44,
                "fareCurrency": "USD",
                "fareBasisCode": "OVAJZNB3/DRB",
                "farePassengerType": "ADT",
                "ticketDesignator": "DRB",
                "publishedFareAmount": 79.44,
                "oneWayFare": true,
                "privateFare": true,
                "directionality": "FROM",
                "direction": "WH",
                "notValidBefore": "2020-01-01",
                "notValidAfter": "2020-01-01",
                "applicablePricingCategories": "10 15 18 25",
                "vendorCode": "ATP",
                "fareTypeBitmap": "0A",
                "fareType": "EOU",
                "fareTariff": "770",
                "fareRule": "XX26",
                "segments": [
                    {
                        "segment": {}
                    }
                ]
            }
        ]
Note: Elements "FareType", "ATPCO_FareTariff", "ATPCO_FareRule", "FareIndicator", "PrivateTariffIndicator", and "FareTypeBitmap" are rare. They are part of fare pricing. They should be sent if the carrier uses them also in ancillaries’ records (for example, if a carrier uses private/public fare indicator in the S7 rules).

  • Bargain Finder Max has been enhanced with following new features:
  • REST JSON API response format - Grouped Itinerary Response (GIR). Note: OTA JSON Response type is no longer available with the new version
  • Streamed response format - Split the response into multiple packages by setting a limited number of itineraries in each one of them
  • Branded Fare Attributes - Parameter to request brand attributes, allows Sabre agencies to return additional brand attributes.
  • Exclude Non-Branded Fares - Allows for only branded fares to be returned when requesting single or multiple brands
  • Alternate Airport Cross Border Indicator - Added flexibility to determine whether alternate airports can be in other country than main pair when mileage is used
  • New Distribution Capability (NDC) - New parameters introduced to the Shopping request and response to support the new functionality
  • Credit Card Fee - The credit card amount returned with Low-Cost-Carriers options added at passenger level
  • Booking Fee - The booking fee amount returned with Low-Cost-Carriers options added at passenger level
  • Source PCC - The source PCC of the contract processed for Agency Managed Commission will be added for audit and tracking purposes
  • Fare Type Bitmap - A fare pricing component related to ancillaries offer

API Information

Format
JSON
Endpoint
/v1/offers/shop
Current Version
1
Environment
Production

What's New

  • Bargain Finder Max has been enhanced with following new features:
  • REST JSON API response format - Grouped Itinerary Response (GIR). Note: OTA JSON Response type is no longer available with the new version
  • Streamed response format - Split the response into multiple packages by setting a limited number of itineraries in each one of them
  • Branded Fare Attributes - Parameter to request brand attributes, allows Sabre agencies to return additional brand attributes.
  • Exclude Non-Branded Fares - Allows for only branded fares to be returned when requesting single or multiple brands
  • Alternate Airport Cross Border Indicator - Added flexibility to determine whether alternate airports can be in other country than main pair when mileage is used
  • New Distribution Capability (NDC) - New parameters introduced to the Shopping request and response to support the new functionality
  • Credit Card Fee - The credit card amount returned with Low-Cost-Carriers options added at passenger level
  • Booking Fee - The booking fee amount returned with Low-Cost-Carriers options added at passenger level
  • Source PCC - The source PCC of the contract processed for Agency Managed Commission will be added for audit and tracking purposes
  • Fare Type Bitmap - A fare pricing component related to ancillaries offer

Business Value

  • Each of these enhancements enable greater personalization and efficiency to further refine the search and response structure.All this boosted with additional option to use AirStreaming functionality.

New Features

In the Request

Optional

Parameter: AirStreaming

Type: complexType

Description: New parameter to activate the AirStreaming functionality which allows to receive a chunked response. Attribute MaxItinsPerChunk is set individually by the customers and configures what is the maximum number of itineraries per one chunk in the below example the value is set to max. 10 Itineraries per chunk. There are 2 types of streaming available, therefore the Method of AirStreaming is equal either to “Services” or “WholeResponse”.

Sample Value:

{
    "OTA_AirLowFareSearchRQ": {
        "TPA_Extensions": {
            "IntelliSellTransaction": {
                "AirStreaming": {
                    "Method": "Services",
                    "MaxItinsPerChunk": 10
                }
            }
        }
    }
}
Note: This feature requires some development work on the customer’s side, therefore more information is available in dedicated DAG Document. The same document describes 2 available types of AirStreaming. Functionality is available in JSON over the REST Endpoints. Applies to BargainFinderMax, Alternate Airport Shop, and Alternate Dates services.

In the Request

Optional

Parameter: NonBrandedFares

Type: complexType

Description: New Parameter to allow to exclude non-branded fares in the shopping response. When the PreferLevel is set to “Preferred" this means “Use non-branded fares”. If this is single filter (no other preferred elements) the meaning is “Use ONLY non-branded fares”. If other preferred filters are also used the meaning is “Use non-branded fares or fares with given (in filters) brands”. When the PreferLevel is set to “Unacceptable" this means “Do not use non-branded fares”. If this is single filter (no other unacceptable elements) the meaning is “Use ONLY branded fares – skip all non-branded”. If other unacceptable filters are also used the meaning is “Use only branded fares excluding fares matching given (in filters) brands”.

Sample Value:

{
    "PriceRequestInformation": {
        "TPA_Extensions": {
            "BrandedFareIndicators": {
                "SingleBrandedFare": "true",
                "BrandFilters": {
                    "Brand": {
                        "Code": "A3",
                        "PreferLevel": "Unacceptable"
                    },
                    "NonBrandedFares": {
                        "PreferLevel": "Preferred"
                    }
                }
            }
        }
    }
}
Note: In the BargainFinderMax schema version 5.1.0, the NonBrandedFares were added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Main Fare. Used to indicate a level of preference for an associate item: unacceptable or preferred.

In the Request

Optional

Parameter: NonBrandedFares

Type: complexType

Description: New Parameter to allow to exclude non-branded fares in the shopping response. When the PreferLevel is set to “Preferred" this means “Use non-branded fares”. If this is single filter (no other preferred elements) the meaning is “Use ONLY non-branded fares”. If other preferred filters are also used the meaning is “Use non-branded fares or fares with given (in filters) brands”. When the PreferLevel is set to “Unacceptable" this means “Do not use non-branded fares”. If this is single filter (no other unacceptable elements) the meaning is “Use ONLY branded fares – skip all non-branded”. If other unacceptable filters are also used the meaning is “Use only branded fares excluding fares matching given (in filters) brands”.

Sample Value:

{
    "OriginDestinationInformation": {
        "RPH": 1,
        "DepartureDateTime": "2019-10-10T00:00:00",
        "OriginLocation": {
            "LocationCode": "DFW"
        },
        "DestinationLocation": {
            "LocationCode": "KRK"
        },
        "TPA_Extensions": {
            "SegmentType": {
                "Code": "O"
            },
            "BrandFilters": {
                "Brand": {
                    "Code": "A2",
                    "PreferLevel": "Preferred"
                },
                "NonBrandedFares": {
                    "PreferLevel": "Preferred"
                }
            }
        }
    }
}
Note: In the BargainFinderMax schema version 5.1.0, the NonBrandedFares were added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Main Fare leg. Used to indicate a level of preference for an associate item: unacceptable or preferred.

In the Request

Optional

Parameter: NonBrandedFares

Type: complexType

Description: New Parameter to allow to exclude non-branded fares in the shopping response. When the PreferLevel is set to “Preferred" this means “Use non-branded fares”. If this is single filter (no other preferred elements) the meaning is “Use ONLY non-branded fares”. If other preferred filters are also used the meaning is “Use non-branded fares or fares with given (in filters) brands”. When the PreferLevel is set to “Unacceptable" this means “Do not use non-branded fares”. If this is single filter (no other unacceptable elements) the meaning is “Use ONLY branded fares – skip all non-branded”. If other unacceptable filters are also used the meaning is “Use only branded fares excluding fares matching given (in filters) brands”.

Sample Value:

{
    "FlexibleFares": {
        "FareParameters": {
            "BrandedFareIndicators": {
                "BrandFilters": {
                    "NonBrandedFares": {
                        "PreferLevel": "Preferred"
                    }
                }
            }
        }
    }
}
Note: In the BargainFinderMax schema version 5.1.0, the NonBrandedFares were added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Flex Fare. Used to indicate a level of preference for an associate item: unacceptable or preferred.

In the Request

Optional

Parameter: NonBrandedFares

Type: complexType

Description: New Parameter to allow to exclude non-branded fares in the shopping response. When the PreferLevel is set to “Preferred" this means “Use non-branded fares”. If this is single filter (no other preferred elements) the meaning is “Use ONLY non-branded fares”. If other preferred filters are also used the meaning is “Use non-branded fares or fares with given (in filters) brands”. When the PreferLevel is set to “Unacceptable" this means “Do not use non-branded fares”. If this is single filter (no other unacceptable elements) the meaning is “Use ONLY branded fares – skip all non-branded”. If other unacceptable filters are also used the meaning is “Use only branded fares excluding fares matching given (in filters) brands”.

Sample Value:

{
    "FlexibleFares": {
        "FareParameters": {
            "BrandedFareIndicators": {
                "BrandFilters": {
                    "Brand": {
                        "Code": "B2",
                        "PreferLevel": "Unacceptable"
                    },
                    "NonBrandedFares": {
                        "PreferLevel": "Preferred"
                    }
                }
            },
            "Leg": {
                "Num": 1,
                "FareType": {
                    "Code": "EU",
                    "PreferLevel": "Preferred"
                },
                "BrandFilters": {
                    "Brand": {
                        "Code": "A2",
                        "PreferLevel": " Preferred "
                    },
                    "NonBrandedFares": {
                        "PreferLevel": "Preferred"
                    }
                }
            }
        }
    }
}
Note: In the BargainFinderMax schema version 5.1.0, the NonBrandedFares were added in all 4 levels: Main fare, Main fare leg, Flex fare, Flex fare leg. This section covers Flex Fare leg. Used to indicate a level of preference for an associate item: unacceptable or preferred.

In the Request

Optional

Parameter: AllowBorderCross

Type: boolean

Description: New parameter set from default to true. In addition to SisterDestinationMileage, it enables to cross a given country border if an alternative Airport is in the range of mileage radius.

Sample Value:

{
    "OriginDestinationInformation": {
        "TPA_Extensions": {
            "SisterDestinationMileage": {
                "AllowBorderCross": "true"
            }
        }
    }
}
Note: Allow to return alternate airports from other countries. Default value is true. AllowBorderCross configuration set at AlternateAirportMileage overrides values of the same parameter set at leg level.

In the Request

Optional

Parameter: AllowBorderCross

Type: boolean

Description: New parameter set from default to true. In addition to SisterOriginMileage it enables to cross a given country border if an alternative Airport is in the range of requested mileage radius.

Sample Value:

{
    "OriginDestinationInformation": {
        "TPA_Extensions": {
            "SisterOriginMileage": {
                "AllowBorderCross": "true"
            }
        }
    }
}
Note: Allow to return alternate airports from other countries. Default value is true. AllowBorderCross configuration set at AlternateAirportMileage overrides values of the same parameter set at leg level.

In the Request

Optional

Parameter: AllowBorderCross

Type: boolean

Description: New parameter set from default to true. In addition to AlternateAirportMileage it enables to cross a given country border if an alternative Airport is in the range of requested mileage radius.

Sample Value:

{
    "TPA_Extensions": {
        "AlternateAirportMileage": {
            "AllowBorderCross": "true"
        }
    }
}
Note: Allow to return alternate airports from other countries. Default value is true. AllowBorderCross configuration set at AlternateAirportMileage overrides values of the same parameter set at leg level.

In the Request

Optional

Parameter: DataSources

Type: complexType

Description: NDC content. Allows sabre agency to choose which content source to drive at the request level. Customer will be able to drive all content sources ATPCO/LCC/NDC, or NDC Only or ATPCO Only, or any combination of them, overriding current default.

Sample Value:

{
    "TravelPreferences": {
        "TPA_Extensions": {
            "DataSources": {
                "ATPCO": "Enable",
                "LCC": "Disable",
                "NDC": "Enable"
            }
        }
    }
}
Note: This parameter is currently available for JSON/REST API only.

In the Request

Optional

Parameter: PreferNDCSourceOnTie

Type: complexType

Description: Select content from NDC Content Source in case of identical offers.

Sample Value:

"TPA_Extensions": {
                "NumTrips": {
                    "Number": 10
                },
                "DataSources": {
                    "ATPCO": "Enable",
                    "LCC": "Disable",
                    "NDC": "Enable"
                },
                "PreferNDCSourceOnTie": {
                    "Value": true
                }
            }
Note: This parameter is currently available for JSON/REST API only.

In the Response

Optional

Parameter: OfferId

Type: string

Description: NDC Offer Id, uniquely identifies an Offer item within the context of one message. An OfferID is assigned to an itinerary’s price point. Example "cdjnxalksm0-1".

Sample Value:

{
    "PricedItineraries": {
        "PricedItinerary": {
            "AirItineraryPricingInfo": {
                "Offer": {
                    "OfferId": "do3385fr4jsvz1el50-2"
                }
            }
        }
    }
}
Note: This parameter is currently available for JSON/REST API only.

In the Response

Optional

Parameter: OfferItemId

Type: string

Description: NDC OfferItem Id, Unique identifier for this Offer item instance. Offer item is a priceable chunk of services. Example "cdjnxalksm0-1-1".

Sample Value:

{
    "PricedItineraries": {
        "PricedItinerary": {
            "AirItineraryPricingInfo": {
                "Offer": {
                    "OfferItemId": "do3385fr4jsvz1el50-2-1"
                }
            }
        }
    }
}
Note: This parameter is currently available for JSON/REST API only.

In the Response

Optional

Parameter: ServiceId

Type: string

Description: NDC Service Id, uniquely Identifies a Service within the context of one message. A service is a feature/service included in a given flight. Example "cdjnxalksm0-1-1-1.

Sample Value:

{
    "PricedItineraries": {
        "PricedItinerary": {
            "AirItineraryPricingInfo": {
                "Offer": {
                    "ServiceId": "do3385fr4jsvz1el50-2-1-1"
                }
            }
        }
    }
}
Note: This parameter is currently available for JSON/REST API only.

In the Response

Optional

Parameter: TTL

Type: string

Description: Parameter indicates Time to Live in minutes, how long the offer will be valid in the Offer Store. the TTL for NDC offers is different than for ATPCO.

Sample Value:

{
    "PricedItineraries": {
        "PricedItinerary": {
            "AirItineraryPricingInfo": {
                "Offer": {
                    "TTL": 35
                }
            }
        }
    }
}
Note: This parameter is currently available for JSON/REST API only.

In the Response

Required

Parameter: Source

Type: string

Description: Parameter allows to identify the source of the offer i.e. NDC, ATPCO, LCC.

Sample Value:

{
    "PricedItineraries": {
        "PricedItinerary": {
            "AirItineraryPricingInfo": {
                "Source": {
                    "value": "NDC"
                }
            }
        }
    }
}
Note: This parameter is currently available for JSON/REST API only.

In the Request

Optional

Parameter: ReturnBrandAncillaries

Type: boolean

Description: To request brand attributes, allows Sabre agencies to return additional brand attributes in the response it returns the structured data filed in table 166. Brand attributes is a feature within the Branded fares capabilities and will be returned with single and multiple branded fares request.

Sample Value:

{
    "TravelerInfoSummary": {
        "SeatsRequested": 1,
        "AirTravelerAvail": {
            "PassengerTypeQuantity": {
                "Code": "ADT",
                "Quantity": 1,
                "TPA_Extensions": {
                    "VoluntaryChanges": {
                        "Match": "Info"
                    }
                }
            }
        },
        "PriceRequestInformation": {
            "CurrencyCode": "USD",
            "TPA_Extensions": {
                "BrandedFareIndicators": {
                    "MultipleBrandedFares": "true",
                    "ReturnBrandAncillaries": "true"
                }
            }
        }
    }
}

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • Shop by Fare Type Code – to support the capability for shopping to include/exclude a fare option based on Fare Type Code.
  • Shop by Brand ID Code – to support the capability for shopping to include/exclude a fare option based on Brand ID code.

API Information

Format
JSON
Current Version
4.3.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • Shop by Fare Type Code – to support the capability for shopping to include/exclude a fare option based on Fare Type Code.
  • Shop by Brand ID Code – to support the capability for shopping to include/exclude a fare option based on Brand ID code.

Business Value

  • Each of these enhancements enable greater personalization and efficiency to further refine the search.

New Features

In the Request

Optional

Parameter: FareType Code

Type: FareTypePrefType

Description: New parameters to support the capability for shopping to include/exclude a fare option based on Fare Type Code. The parameter to be used in a search for the whole journey.

Sample Value:

{
    "TravelPreferences": {
        "TPA_Extensions": {
            "FareType": [
                {
                    "@Code": "EOU",
                    "@PreferLevel": "Preferred"
                },
                {
                    "@Code": "ERU",
                    "@PreferLevel": "Unacceptable"
                }
            ]
        }
    }
}
Note: New parameter at the shopping, to filter fares by Fare Type Code filters out all unbundled (basic economy fares) which are fares filed with a fare type code = EOU (economy one-way unbundled) or ERU (economy return unbundled).

In the Request

Optional

Parameter: FareType Code

Type: FareTypePrefType

Description: New parameters to support the capability for shopping to include/exclude a fare option based on Fare Type Code. The parameter to be used in a search, at the leg level.

Sample Value:

{
    "OriginDestinationInformation": {
        "@RPH": 1,
        "DepartureDateTime": "2018-10-10T00:00:00",
        "OriginLocation": {
            "@LocationCode": "DFW"
        },
        "DestinationLocation": {
            "@LocationCode": "KRK"
        },
        "TPA_Extensions": {
            "SegmentType": {
                "@Code": "O"
            },
            "FareType": [
                {
                    "@Code": "EOU",
                    "@PreferLevel": "Preferred"
                },
                {
                    "@Code": "ERU",
                    "@PreferLevel": "Preferred"
                }
            ]
        }
    }
}
Note: New parameter at the shopping, to filter fares by Fare Type Code filters out all unbundled (basic economy fares) which are fares filed with a fare type code = EOU (economy one-way unbundled) or ERU (economy return unbundled).

In the Request

Optional

Parameter: FareType Code

Type: FareTypePrefType

Description: New parameters to support the capability for shopping to include/exclude a fare option based on Fare Type Code. To be used in a search, for the whole itinerary, in the multiple fares per itinerary group definition.

Sample Value:

{
    "TPA_Extensions": {
        "FlexibleFares": {
            "FareParameters": {
                "FareType": [
                    {
                        "@Code": "EU",
                        "@PreferLevel": "Preferred"
                    },
                    {
                        "@Code": "ERU",
                        "@PreferLevel": "Preferred"
                    }
                ],
                "Leg": [
                    {
                        "@Num": 1,
                        "FareType": {
                            "@Code": "EU",
                            "@PreferLevel": "Preferred"
                        }
                    },
                    {
                        "@Num": 2,
                        "FareType": {
                            "@Code": "EOU",
                            "@PreferLevel": "Unacceptable"
                        }
                    }
                ]
            }
        },
        "FareType": [
            {
                "@Code": "EOU",
                "@PreferLevel": "Preferred"
            },
            {
                "@Code": "ERU",
                "@PreferLevel": "Preferred"
            }
        ]
    }
}
Note: New parameter at the shopping, to filter fares by Fare Type Code filters out all unbundled (basic economy fares) which are fares filed with a fare type code = EOU (economy one-way unbundled) or ERU (economy return unbundled).

In the Request

Optional

Parameter: FareType Code

Type: FareTypePrefType

Description: New parameters to support the capability for shopping to include/exclude a fare option based on Fare Type Code. To be used in a search, at the leg level, in the multiple fares per itinerary group definition.

Sample Value:

{
    "FlexibleFares": {
        "FareParameters": {
            "Leg": [
                {
                    "@Num": 1,
                    "FareType": {
                        "@Code": "ERU",
                        "@PreferLevel": "Preferred"
                    }
                },
                {
                    "@Num": 2,
                    "FareType": {
                        "@Code": "EOU",
                        "@PreferLevel": "Unacceptable"
                    }
                }
            ]
        }
    }
}
Note: New parameter at the shopping, to filter fares by Fare Type Code filters out all unbundled (basic economy fares) which are fares filed with a fare type code = EOU (economy one-way unbundled) or ERU (economy return unbundled).

In the Request

Optional

Parameter: Brand Code

Type: BrandCodePrefType

Description: New parameter to support the capability for shopping to include/exclude a fare option based on Brand ID code. The parameter to be used in a search for the whole journey.

Sample Value:

{
    "PriceRequestInformation": {
        "TPA_Extensions": {
            "BrandedFareIndicators": {
                "@SingleBrandedFare": "true",
                "BrandFilters": {
                    "Brand": [
                        {
                            "@Code": "A3",
                            "@PreferLevel": "Preferred"
                        },
                        {
                            "@Code": "A2",
                            "@PreferLevel": "Preferred"
                        }
                    ]
                }
            }
        }
    }
}
Note: If brand filters are used in either single brand mode or multiple brand mode both cheapest and upsells fares will be considered for filtering. If “preferred” brands are given then only branded fares matching the brand codes will be returned. If “unacceptable” brands are given then branded fares matching this brand codes will be excluded (non-branded will stay in processing).

In the Request

Optional

Parameter: Brand Code

Type: BrandCodePrefType

Description: New parameter to support the capability for shopping to include/exclude a fare option based on Brand ID code. The parameter to be used in a search, at the leg level.

Sample Value:

{
    "OriginDestinationInformation": {
        "@RPH": 1,
        "DepartureDateTime": "2018-10-10T00:00:00",
        "OriginLocation": {
            "@LocationCode": "DFW"
        },
        "DestinationLocation": {
            "@LocationCode": "KRK"
        },
        "TPA_Extensions": {
            "SegmentType": {
                "@Code": "O"
            },
            "BrandFilters": {
                "Brand": [
                    {
                        "@Code": "A2",
                        "@PreferLevel": "Preferred"
                    },
                    {
                        "@Code": "A3",
                        "@PreferLevel": "Preferred"
                    }
                ]
            }
        }
    }
}
Note: If brand filters are used in either single brand mode or multiple brand mode both cheapest and upsells fares will be considered for filtering. If “preferred” brands are given then only branded fares matching the brand codes will be returned. If “unacceptable” brands are given then branded fares matching this brand codes will be excluded (non-branded will stay in processing).

In the Request

Optional

Parameter: Brand Code

Type: BrandCodePrefType

Description: New parameter to support the capability for shopping to include/exclude a fare option based on Brand ID code. To be used in a search, for the whole itinerary, in the multiple fares per itinerary group definition.

Sample Value:

{
    "FlexibleFares": {
        "FareParameters": {
            "BrandedFareIndicators": {
                "BrandFilters": {
                    "Brand": [
                        {
                            "@Code": "B2",
                            "@PreferLevel": "Unacceptable"
                        },
                        {
                            "@Code": "A1",
                            "@PreferLevel": "Unacceptable"
                        }
                    ]
                }
            }
        }
    }
}
Note: If brand filters are used in multiple brand mode. The cheapest and upsells fares will be considered for filtering. If “preferred” brands are given then only branded fares matching the brand codes will be returned If “unacceptable” brands are given then branded fares matching this brand codes will be excluded (non-branded will stay in processing).

In the Request

Optional

Parameter: Brand Code

Type: BrandCodePrefType

Description: New parameter to support the capability for shopping to include/exclude a fare option based on Brand ID code. To be used in a search, at the leg level, in the multiple fares per itinerary group definition.

Sample Value:

{
    "FlexibleFares": {
        "FareParameters": {
            "BrandedFareIndicators": {
                "BrandFilters": {
                    "Brand": [
                        {
                            "@Code": "B2",
                            "@PreferLevel": "Unacceptable"
                        },
                        {
                            "@Code": "A1",
                            "@PreferLevel": "Unacceptable"
                        }
                    ]
                }
            },
            "Leg": [
                {
                    "@Num": 1,
                    "FareType": {
                        "@Code": "EU",
                        "@PreferLevel": "Preferred"
                    },
                    "BrandFilters": {
                        "Brand": [
                            {
                                "@Code": "A1",
                                "@PreferLevel": "Unacceptable"
                            },
                            {
                                "@Code": "A2",
                                "@PreferLevel": "Unacceptable"
                            }
                        ]
                    }
                },
                {
                    "@Num": 2,
                    "FareType": {
                        "@Code": "EU",
                        "@PreferLevel": "Unacceptable"
                    },
                    "BrandFilters": {
                        "Brand": [
                            {
                                "@Code": "B3",
                                "@PreferLevel": "Unacceptable"
                            },
                            {
                                "@Code": "B4",
                                "@PreferLevel": "Unacceptable"
                            }
                        ]
                    }
                }
            ]
        }
    }
}
Note: If brand filters are used in multiple brand mode. The cheapest and upsells fares will be considered for filtering. If “preferred” brands are given then only branded fares matching the brand codes will be returned If “unacceptable” brands are given then branded fares matching this brand codes will be excluded (non-branded will stay in processing).

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • Long Connect – To specify the number or percentage of itineraries with long connections to be returned.
  • Revalidate Itinerary – To control the availability validation for a given itinerary.
  • Branded Fares Optimization – To control the brand parity logic preference (leg or itinerary parity, number of up-sells, allow brand-less legs and fallback modes).
  • AirShoppingRuleManager – To specify and invoke the traveler persona rules.
  • Additionally, the following information will be returned in the BargainFinderMax response:
  • Forced Stopover Indicator – New indicator at the segment level to denote stopover point.
  • Revalidate Itinerary – Renamed element from "repriced" to "revalidated".

API Information

Format
JSON
Endpoint
/BargainFinderMaxRQv4.2.0/shop/flights
Current Version
4.2.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • Long Connect – To specify the number or percentage of itineraries with long connections to be returned.
  • Revalidate Itinerary – To control the availability validation for a given itinerary.
  • Branded Fares Optimization – To control the brand parity logic preference (leg or itinerary parity, number of up-sells, allow brand-less legs and fallback modes).
  • AirShoppingRuleManager – To specify and invoke the traveler persona rules.
  • Additionally, the following information will be returned in the BargainFinderMax response:
  • Forced Stopover Indicator – New indicator at the segment level to denote stopover point.
  • Revalidate Itinerary – Renamed element from "repriced" to "revalidated".

Business Value

  • Each of these new parameters power new ways to market, shop and convert lookers to bookers.

New Features

In the Request

Optional

Parameter: NumberOfSolutions

Type: CountOrPercentage

Description: Indicator to specify the desired number of solutions to be returned in the response either in percentage or a number.

Sample Value:

{
    "TravelPreferences": {
        "ValidInterlineTicket": "true",
        "TPA_Extensions": {
            "TripType": {
                "Value": "OneWay"
            },
            "LongConnectTime": {
                "Enable": "true",
                "Min": 781,
                "NumberOfSolutions": "23%"
            },
            "JumpCabinLogic": {
                "Disabled": "true"
            }
        }
    }
}

In the Request

Optional

Parameter: AlwaysCheckAvailability

Type: Boolean

Description: This parameter allows customers to control the availability validation for a given itinerary.

Sample Value:

{
    "TravelPreferences": {
        "VendorPref": {
            "PreferLevel": "Preferred",
            "Code": "EK"
        },
        "TPA_Extensions": {
            "VerificationItinCallLogic": {
                "Value": "M",
                "AlwaysCheckAvailability": "true"
            }
        }
    }
}
Note: Applicable only to Revalidate Itinerary functionality.

In the Request

Optional

Parameter: UpsellLimit

Type: Integer

Description: New parameter to limit the number of branded fare upsell solutions to be returned.

Sample Value:

{
    "PriceRequestInformation": {
        "AccountCode": {
            "Code": "BD001"
        },
        "TPA_Extensions": {
            "BrandedFareIndicators": {
                "MultipleBrandedFares": "true",
                "SingleBrandedFare": "true",
                "ParityMode": "Leg",
                "UpsellLimit": 2
            }
        }
    }
}

In the Request

Optional

Parameter: ItinParityBrandlessLeg

Type: Boolean

Description: New parameter to allow for brand-less leg solutions when itinerary parity is requested.

Sample Value:

{
       "TPA_Extensions": {
              "BrandedFareIndicators": {
                     "MultipleBrandedFares": "true",
                     "ItinParityBrandlessLeg": "true",
                     "ParityMode": "Itin"
              }
       }
}

}

In the Request

Optional

Parameter: ParityMode

Type: String

Description: New parameter to control the brand parity logic preference (Leg Parity or Itinerary Parity).

Sample Value:

{
    "TPA_Extensions": {
        "Priority": {
            "Price": {
                "Priority": 2
            },
            "DirectFlights": {
                "Priority": 1
            },
            "Time": {
                "Priority": 3
            },
            "Vendor": {
                "Priority": 4
            }
        },
        "BrandedFareIndicators": {
            "MultipleBrandedFares": "true",
            "SingleBrandedFare": "true",
            "ParityMode": "Itin",
            "ItinParityFallbackMode": "LowestSingle"
        }
    }
}
Note: ParityMode and ItinParityFallbackMode parameters are optional. When specifying the ParityMode=”Itin” at the request level without specifying the ItinParityFallbackMode, then the default fallback mode in the “BFM rule” level will be applied. Possible fallback modes: LowestSingle (no upsell options only lowest single possible branded solutions) or Leg (upsells generated using leg parity mode).

In the Request

Optional

Parameter: ItinParityFallbackMode

Type: String

Description: New parameter to control the fall back mode logic when brand itinerary parity cannot be met (lowest single brand or leg parity).

Sample Value:

{
    "TPA_Extensions": {
        "Priority": {
            "Price": {
                "Priority": 2
            },
            "DirectFlights": {
                "Priority": 1
            },
            "Time": {
                "Priority": 3
            },
            "Vendor": {
                "Priority": 4
            }
        },
        "BrandedFareIndicators": {
            "MultipleBrandedFares": "true",
            "SingleBrandedFare": "true",
            "ParityMode": "Itin",
            "ItinParityFallbackMode": "LowestSingle"
        }
    }
}
Note: Possible FallBack modes to be used are: LowestSingle (no upsell options only lowest single possible branded solutions) or Leg (upsells generated using leg parity mode).

In the Request

Required

Parameter: TravelerPersona@Name

Type: String

Description: New parameter to specify the traveler persona as created via the Air Shopping Rules Manager.

Sample Value:

{
    "IntelliSellTransaction": {
        "RequestType": {
            "Name": "50ITINS"
        },
        "TravelerPersona": {
            "Name": "ABCTRAVEL"
        }
    }
}
Note: The name of the ‘Travel Persona’ is to be used with the Air Shopping Rules Manager application, only. The applicable rules associated to the travel persona will be invoked by Bargain Finder Max.

In the Response

Optional

Parameter: RequestedStopover Ind

Type: Boolean

Description: Indicator to identify which segment is the one departing from the stopover point in the BargainFinderMax response (within one leg).

Sample Value:

{
    "FlightSegment": {
        "DepartureDateTime": "2018-08-12T16:50:00",
        "ArrivalDateTime": "2018-08-12T20:20:00",
        "StopQuantity": 0,
        "FlightNumber": 872,
        "ResBookDesigCode": "V",
        "ElapsedTime": 150,
        "DepartureAirport": {
            "LocationCode": "LHR",
            "TerminalID": 5
        },
        "ArrivalAirport": {
            "LocationCode": "KRK"
        },
        "OperatingAirline": {
            "Code": "YY",
            "FlightNumber": 872
        },
        "Equipment": {
            "AirEquipType": 320
        },
        "MarketingAirline": {
            "Code": "YY"
        },
        "MarriageGrp": "O",
        "DepartureTimeZone": {
            "GMTOffset": 1
        },
        "ArrivalTimeZone": {
            "GMTOffset": 2
        },
        "TPA_Extensions": {
            "eTicket": {
                "Ind": "true"
            },
            "Mileage": {
                "Amount": 889
            },
            "RequestedStopover": {
                "Ind": "true"
            }
        }
    }
}

Functional Updates And Enhancements

In the Response

Optional

Parameter: Revalidated

Type: Boolean

Description: Indicator to identify the itinerary offer that was validated.

Sample Value:

{
    "AirItineraryPricingInfo": {
        "PricingSource": "WPNI1_ITIN",
        "PricingSubSource": "MIP",
        "Revalidated": "true",
        "FareReturned": "true",
        "ItinTotalFare": {
            "BaseFare": {
                "Amount": 9254.00,
                "CurrencyCode": "EUR",
                "DecimalPlaces": 2
            },
            "FareConstruction": {
                "Amount": 11364.48,
                "CurrencyCode": "NUC",
                "DecimalPlaces": 2
            },
            "EquivFare": {
                "Amount": 11070.00,
                "CurrencyCode": "USD",
                "DecimalPlaces": 2
            },
            "Taxes": {
                "Tax": {
                    "TaxCode": "TOTALTAX",
                    "Amount": 1256.40,
                    "CurrencyCode": "USD",
                    "DecimalPlaces": 2
                }
            },
            "TotalFare": {
                "Amount": 12326.40,
                "CurrencyCode": "USD",
                "DecimalPlaces": 2
            }
        }
    }
}
Note: When the @Revalidated parameter is included with the ‘true’ value in the response this means the system revalidated the given itinerary with the specified flight schedule, RBD, date of travel and city-pair.

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • 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 baggages.

API Information

Format
JSON
Endpoint
/v4.1.0/shop/flights
Current Version
4.1.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced with the following new optional search parameters:
  • 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 baggages.

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.

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 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.

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:

{
    "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.

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 for the multiple fares per itinerary 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.

In the Request

Optional

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 codes can be requested at the leg level in each multiple fares per itinerary group. Allows wildcards.

In the Request

Optional

Parameter: FareBasis Code

Type: FareBasisType

Description: Defines the fare 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.

In the Request

Optional

Parameter: CodeShareIndicator

Type: CodeShareIndicator

Description: Ability to filter out codeshare flights. The 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

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"
    }
}

In the Response

Optional

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"
            }
        ]
    }
}

In the Response

Optional

Parameter: NonHiddenHandlingFee

Type: Boolean

Description: Applicable to Agency Retailer subscribers. Indicates whether a 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"
        }
    }
}

In the Response

Optional

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"
    }
}

In the Response

Optional

Parameter: AncillaryTypeCode

Type: String

Description: An 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.

In the Response

Optional

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.

In the Response

Optional

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
            }
        ]
    }
}

In the Response

Optional

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
                }
            ]
        }
    }
}

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
                }
            ]
        }
    }
}

In the Response

Required

Parameter: StandardBag

Type: Short

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

Sample Value:

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

  • Bargain Finder Max has been enhanced with the following new optional search parameters: • Enforce a specific stopover point within the leg of a journey • Specify cabin per leg in multiple fares per itinerary

API Information

Format
JSON
Endpoint
/POST v3.4.0/shop/flights
Current Version
3.4.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced with the following new optional search parameters: • Enforce a specific stopover point within the leg of a journey • Specify cabin per leg in multiple fares per itinerary

Business Value

  • These enhancements enable the opportunity to find lower priced itinerary options by specifying stopover point, and a more efficient and targeted result with search by preferred cabin at the leg level.

New Features

In the Request

Optional

Parameter: Stopover

Type: StopoverType

Description: The new parameter, which allows to specify the information for the requested stopover.

Sample Value:

{
    "OriginDestinationInformation": {
        "RPH": 1,
        "DepartureDateTime": "2018-01-01T00:00:00",
        "DepartureWindow": 10001200,
        "OriginLocation": {
            "LocationCode": "LAX"
        },
        "DestinationLocation": {
            "LocationCode": "LGA"
        },
        "TPA_Extensions": {
            "Stopover": {
                "DepartureDateTime": "2018-01-06T00:00:00",
                "DepartureWindow": 10001200,
                "StopoverPoint": {
                    "LocationCode": "JFK",
                    "LocationType": "A"
                }
            }
        }
    }
}
Note: The DepartureDateTime – Element is (required) and contains text in date time format: YYYY-MM-DDTHH:MM:SS DepartureWindow – Element is (optional) and contains text in range format: HHMMHHMM StopoverPoint – Element is (required) LocationCode (required)(attribute) airport/city code LocationType (optional)(attribute) 'A' or 'C' value

Functional Updates And Enhancements

In the Request

Optional

Parameter: Cabin

Type: CabinType

Description: Defines the preferred cabin to be used in a search at the leg level in flex fare group.

Sample Value:

{
    "FlexibleFares": {
        "FareParameters": {
            "Leg": [
                {
                    "Num": 1,
                    "Cabin": {
                        "Type": "Y"
                    }
                },
                {
                    "Num": 2,
                    "Cabin": {
                        "Type": "C"
                    }
                }
            ]
        }
    }
}
Note: Multiple preferred cabins can be requested at the leg level in each multiple fares per itinerary group.

  • Bargain Finder Max has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
  • New indicator in the response to advise baggage allowance is not permitted
  • Revalidate availability and pricing for a specific itinerary option for same (or lower fare) if offered and, if not offered, offer alternate itinerary options
  • New option to search by class of service
  • Modification of the default logic for corporate ID/account code and passenger type code processing in multiple fares per itinerary to match main fare processing
  • New option to search which marketing and operating airline combinations are preferred or unacceptable
  • New workflow response option, anchored search, to return expanded options for a single segment (inbound or outbound), to display only those itinerary options which combine with the previously selected segment

API Information

Format
JSON
Endpoint
/POST v3.3.0/shop/flights
Current Version
3.3.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
  • New indicator in the response to advise baggage allowance is not permitted
  • Revalidate availability and pricing for a specific itinerary option for same (or lower fare) if offered and, if not offered, offer alternate itinerary options
  • New option to search by class of service
  • Modification of the default logic for corporate ID/account code and passenger type code processing in multiple fares per itinerary to match main fare processing
  • New option to search which marketing and operating airline combinations are preferred or unacceptable
  • New workflow response option, anchored search, to return expanded options for a single segment (inbound or outbound), to display only those itinerary options which combine with the previously selected segment

Business Value

  • These enhancements drive greater transparency for baggage allowance and charges, a more streamlined workflow with multiple fares per itinerary and revalidate itinerary options, and more targeted results with the search by class of service, anchored search, and preferred airline options.

New Features

In the Request

Optional

Parameter: NoChargeNotAvailable

Type: CharacterType

Description: This attribute will be returned in the response whenever there are no charge or charges are unavailable when requesting baggage information. The response might contain one of the below possible description: X - Service not available F - no charge for service (free) and an EMD is not issued to reflect free service E - No charge for service (free) and an EMD is issued to reflect the fee service. G - No charge for service (free), booking is not required and an EMD is not issued to reflect free service. H - No charge for service (free), booking is not required, and an EMD is issued to reflect the free service.

Sample Value:

{ "BaggageInformation": { "ProvisionType": "C", "AirlineCode": "S7", "Segment": { "Id": 0 }, "Charge": { "EquivalentAmount": 0, "EquivalentCurrency": "RUB", "Description1": "UP TO 70 POUNDS/32 KILOGRAMS", "Description2": "UP TO 80 LINEAR INCHES/203 LINEAR CENTIMETERS", "NoChargeNotAvailable": "X" } } }
       

Functional Updates And Enhancements

In the Request

Optional

Parameter: NoChargeNotAvailable

Type: CharacterType

Description: This attribute will be returned in the response whenever there are no charge or charges are unavailable when requesting baggage information. The response might contain one of the below possible description: X - Service not available F - no charge for service (free) and an EMD is not issued to reflect free service E - No charge for service (free) and an EMD is issued to reflect the fee service. G - No charge for service (free), booking is not required and an EMD is not issued to reflect free service. H - No charge for service (free), booking is not required, and an EMD is issued to reflect the free service.

Sample Value:

{ "BaggageInformation": { "ProvisionType": "C", "AirlineCode": "S7", "Segment": { "Id": 0 }, "Charge": { "EquivalentAmount": 0, "EquivalentCurrency": "RUB", "Description1": "UP TO 70 POUNDS/32 KILOGRAMS", "Description2": "UP TO 80 LINEAR INCHES/203 LINEAR CENTIMETERS", "NoChargeNotAvailable": "X" } } }
       

In the Request

Optional

Parameter: VerificationItinCallLogic

Type: VerificationItinCallLogicType

Description: The new parameter VerificationItinCallLogic and value attribute were added, which defines how the current itinerary is priced. Valid values are: • L − Look for the lowest fare (default). • M − Look in the requested RBD and requested pricing qualifiers. • B − Perform both L and M searches, and return both fares.

Sample Value:

{ "TravelPreferences": { "TPA_Extensions": { "VerificationItinCallLogic": { "Value": "L" } } } }
       

In the Request

Optional

Parameter: LookForAlternatives

Type: Boolean

Description: Indicator to specify to return alternative options or the lowest fare in the response.

Sample Value:

{ "TravelPreferences": { "LookForAlternatives": "true", "VendorPref": { "Code": "K0", "PreferLevel": "Preferred" }, "CabinPref": { "Cabin": "J" }, "TPA_Extensions": { "NumTrips": { "Number": 30 } } } }
       
Note: If set to false, no alternative solutions will be returned in the response.

In the Request

Optional

Parameter: Repriced

Type: Boolean

Description: Indicator to identify the re-priced itinerary. The WPNI1_ITIN attribute is used to identify the alternative option returned.

Sample Value:

{ "AirItineraryPricingInfo": { "PricingSource": "WPNI1_ITIN", "PricingSubSource": "MIP", "Repriced": "true", "FareReturned": "true", "LastTicketDate": "2017-08-18", "ItinTotalFare": { "BaseFare": { "Amount": 947.91, "CurrencyCode": "USD", "DecimalPlaces": 2 }, "FareConstruction": { "Amount": 947.91, "CurrencyCode": "USD", "DecimalPlaces": 2 }, "EquivFare": { "Amount": 1210.00, "CurrencyCode": "AUD", "DecimalPlaces": 2 }, "Taxes": { "Tax": { "TaxCode": "TOTALTAX", "Amount": 109.10, "CurrencyCode": "AUD", "DecimalPlaces": 2 } } } } }
       
Note: When the @Repriced parameter is included with the "true” value in the response, this means the system re-priced the given itinerary with the specified flight schedule, RBD, date, and city pair.

In the Request

Optional

Parameter: UsePassengerFares

Type: Boolean

Description: Indicates that at least one fare component must be applicable the passenger type specified.

Sample Value:

{ "TravelPreferences": { "TPA_Extensions": { "FlexibleFares": { "FareParameters": { "UsePassengerFares": { "Ind": "true" } } } } } }
       
Note: This parameter can be specified by the customer at the multiple fares per itinerary group level.

In the Request

Optional

Parameter: UseNegotiatedFares Ind

Type: Boolean

Description: Indicates returned fares must match the AccountCode/CorporateID specified on at least one fare component.

Sample Value:

{ "TPA_Extensions": { "NumTrips": { "Number": 50 }, "FlexibleFares": { "FareParameters": [ { "UsePassengerFares": { "Ind": "true" } }, { "UseNegotiatedFares": { "Ind": "false" } } ] } } }
       
Note: This parameter can be specified by the customer at the multiple fares per itinerary group level.

In the Request

Optional

Parameter: ClassOfService Code

Type: ClassOfServiceType

Description: Defines the class of service to be used in a search at the leg level.

Sample Value:

{ "OriginDestinationInformation": { "RPH": 1, "DepartureDateTime": "2017-09-01T00:00:00", "OriginLocation": { "LocationCode": "LAX" }, "DestinationLocation": { "LocationCode": "JFK" }, "TPA_Extensions": { "SegmentType": { "Code": "O" }, "ClassOfService": [ { "Code": "A" }, { "Code": "B" } ] } } }
       
Note: Multiple class of services can be requested per leg in Main request and multiple fares per itinerary groups

In the Request

Optional

Parameter: ClassofService Code

Type: ClassOfServiceType

Description: This parameter is used to specify the class of service to apply to entire itinerary.

Sample Value:

{ "TravelPreferences": { "TPA_Extensions": { "ClassOfService": [ { "Code": "Q" }, { "Code": "R" } ] } } }
       
Note: Multiple class of services can be requested for the entire itinerary.

In the Request

Optional

Parameter: ClassofService Code

Type: ClassOfServiceType

Description: Defines the class of service to be used in a search at the leg level in flex fare group.

Sample Value:

{ "FlexibleFares": { "FareParameters": { "Leg": [ { "Num": 1, "ClassOfService": { "Code": "F" } }, { "Num": 2, "ClassOfService": [ { "Code": "G" }, { "Code": "H" } ] } ] } } }
       
Note: Multiple class of services can be requested at the leg level in each multiple fares per itinerary group.

In the Request

Optional

Parameter: ClassofService Code

Type: ClassOfServiceType

Description: Defines the class of service to be used in a search for the entire multiple fares per itinerary group.

Sample Value:

{ "TravelPreferences": { "TPA_Extensions": { "FlexibleFares": { "FareParameters": { "PassengerType": { "Code": "JCB" }, "ClassOfService": [ { "Code": "D" }, { "Code": "E" } ] } } } } }
       
Note: Multiple class of services can be requested in each multiple fares per itinerary group.

In the Request

Optional

Parameter: Fixed

Type: Boolean

Description: This attribute has been added to the OriginDestinationInformation element. It allows to indicate the OriginDestination node, with flight information, should be fixed from a shopping response

Sample Value:

{ "OriginDestinationInformation": { "Fixed": "true", "RPH": 1, "DepartureDateTime": "2017-09-01T00:00:00", "OriginLocation": { "LocationCode": "SYD" }, "DestinationLocation": { "LocationCode": "PER" }, "TPA_Extensions": { "Flight": { "ArrivalDateTime": "2017-08-01T06:30:00", "DepartureDateTime": "2015-08-01T09:50:00", "Number": 1, "Type": "A", "OriginLocation": { "LocationCode": "SYD" }, "DestinationLocation": { "LocationCode": "LAX" }, "Airline": { "Marketing": "K0", "Operating": "K0" } } } } }
       

In the Request

Optional

Parameter: VendorPrefPairing

Type: VendorPrefPairingType

Description: This element “VendorPrefPairing”, has been added at request level, next to the already existing “VendorPref” element. This element allows to specify which marketing and operating airline pairs are preferred or unacceptable.

Sample Value:

{ "TravelPreferences": { "VendorPrefPairing": { "Applicability": "AllSegments", "PreferLevel": "Preferred", "VendorPref": [ { "Code": "K0", "Type": "Marketing" }, { "Code": "K0", "Type": "Operating" } ] }, "TPA_Extensions": "" } }
       

  • Bargain Finder Max has been enhanced to enable more flexibility within the request and return options to provide additional information in the response as follows: • Additional response element for Validating Carrier without BSP check. • Multiple Fares per Itinerary- New optional parameter added to the request to ensure all fares, main and alternate, will be sorted based upon price and returned with the final result.

API Information

Format
JSON
Endpoint
/POST v3.2.0/shop/flights
Current Version
3.2.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced to enable more flexibility within the request and return options to provide additional information in the response as follows: • Additional response element for Validating Carrier without BSP check. • Multiple Fares per Itinerary- New optional parameter added to the request to ensure all fares, main and alternate, will be sorted based upon price and returned with the final result.


  • Bargain Finder Max has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
  • Baggage Enhancement – Allows you to specify in the request the number of bags returned in the response (up to 4 pieces).
  • VITA Enhancement – Allows you to choose the traditional Validating Carrier (VC) automatically in place of a lower priced VC. This is activated via travel journey record (TJR) with a new element in the response.
  • Expand Preferred Carrier – New optional parameters in the request: *To allow interline options to be returned when a preferred carrier is specified
  • Governing Carrier Override – Optional parameter that allows you to override the governing carrier via shopping request to get fares filed by a specified carrier.
  • Branded Fares Enhancement – New optional parameter in the response: *To indicate brand program code that is returned from the branding service *To indicate that a minimum of one of the legs included in the itinerary option contains a brand(s).

API Information

Format
JSON
Endpoint
/POST /v3.1.0/shop/flights
Current Version
3.1.0
Environment
Production

What's New

  • Bargain Finder Max has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
  • Baggage Enhancement – Allows you to specify in the request the number of bags returned in the response (up to 4 pieces).
  • VITA Enhancement – Allows you to choose the traditional Validating Carrier (VC) automatically in place of a lower priced VC. This is activated via travel journey record (TJR) with a new element in the response.
  • Expand Preferred Carrier – New optional parameters in the request: *To allow interline options to be returned when a preferred carrier is specified
  • Governing Carrier Override – Optional parameter that allows you to override the governing carrier via shopping request to get fares filed by a specified carrier.
  • Branded Fares Enhancement – New optional parameter in the response: *To indicate brand program code that is returned from the branding service *To indicate that a minimum of one of the legs included in the itinerary option contains a brand(s).

New Features

In the Request

Optional

Parameter: RequestedPieces

Type: UnsignedShort

Description: Parameter that allows you to specify in the request the number of bags to be returned in the response (up to 4 pieces). Allowed values are from 1 to 4.

Sample Value:

"TravelPreferences": {
    "TPA_Extensions": {},
    "Baggage": {
        "RequestType": "C",
        "Description": true,
        "RequestedPieces": 4
    }
 }
Note: If customers specify a value higher than 4, no error response will be returned, but this value will be reduced to 4. If 0 or a negative number is specified, the request will not be processed, and an error response will be returned. For the ‘RequestedPieces’, no additional elements/parameters were added to the shopping response. In order to show in the response information for up to 4 bags, the “BaggageInformation” element (under “BaggageInformationList”) occurrence may increase proportionally to the number of requested bags.

In the Response

Optional

Parameter: OtherTicketing

Type: Complex

Description: Other possible validating carrier information. Element introduced for VITA logic. In order to activate, customers will have to update their TJR.

Sample Value:

N/A
Note: This functionality is not activated via the request. It require a change to TJR settings.

In the Response

Optional

Parameter: Code

Type: CarrierCode

Description: Carrier code of another possible validating carrier. Re-price is required if this carrier must be used as the validating carrier at ticketing.

Sample Value:

"OtherTicketing": [
    {
        "Code": "EY"
    }
]

In the Request

Optional

Parameter: VendorPrefApplicability

Type: VendorPrefApplicabilityType

Description: Indicates whether the provided carrier type preference should apply to at least one segment of the itinerary or to the entire itinerary. One instance is allowed per carrier type.

Sample Value:

N/A
Note: “VendorPrefApplicabilityType” refers to information within the “VendorPref” element.

In the Request

Required

Parameter: Value

Type: String

Description: Carrier selection method. Valid values are: • “AtLeastOneSegment” − The specified carrier should be returned for at least one segment in the itinerary. • “AllSegments” − The specified carrier should apply for the entire itinerary.

Sample Value:

"VendorPrefApplicability": [
    {
        "Value": "AllSegments",
        "Type": "Marketing"
    }
]
Note: This parameter is required within “VendorPrefApplicabilityType”. The value specified as “AllSegments” follows current logic for marketing vendor preference – will prefer/exclude online itineraries or a combination of specified carriers only.

In the Request

Required

Parameter: Type

Type: CarrierType

Description: Type of carrier it applies to. Valid values are: • “Marketing” • “Operating”

Sample Value:

"VendorPrefApplicability": [
    {
        "Value": "AllSegments",
        "Type": "Marketing"
    }
]
Note: This parameter is required within the “VendorPrefApplicabilityType”. In order to specify Vendor Preference Applicability for Operating carrier(s), the “Type” attribute must be set to “Operating” within the VendorPref element.

In the Request

Optional

Parameter: GoverningCarrierOverride

Type: GoverningCarrierOverrideType

Description: Parameter that allows you to override the governing carrier via shopping request to get fares filed by a specified carrier.

Sample Value:

N/A
Note: One carrier can be specified per request.

In the Request

Required

Parameter: AirlineCode

Type: CarrierCode

Description: Two-character airline code of the governing carrier.

Sample Value:

"GoverningCarrierOverride": {
    "AirlineCode": "VS"
}

In the Response

Optional

Parameter: ProgramCode

Type: String

Description: Attribute for the brand program code that is returned from the branding service. This allows you to use this attribute returned in the shopping response in subsequent requests, for example, in a "GetMarketingText" request and correctly match brand programs.

Sample Value:

"FareComponent": [
    {
        "ProgramID": "5840",
        "ProgramCode": "A",
        "ProgramDescription": "NZA",
        "ProgramSystemCode": "A",
        "BrandID": "SW",
        "BrandName": "SMARTSAVER",

        ...
   
    }
]

In the Response

Optional

Parameter: BrandsOnAnyMarket

Type: Boolean

Description: Attribute that allows you to indicate that a minimum of one of the legs included in the itinerary option contains a brand(s).

Sample Value:

"AirItineraryPricingInfo": [
    {
        "LastTicketDate": "2017-02-28",
        "PricingSource": "ADVJR1",
        "PricingSubSource": "MIP",
        "FareReturned": true,
        "BrandsOnAnyMarket": true,
                                 
        ...
   
    }
]
Note: This parameter is required within “SingleBrandedFare” only. It indicates that the itinerary can have additional branded options, so you can request them with a subsequent AllBrandsPricingRQ transaction.

  • Bargain FinderSM Max has been enhanced to enable more customization and flexibility within the request and return additional information in the response as follows:
  • Schedule Filtering – new elements were added to the request schema: *Search by Airport or City codes – Allows you to specify for Origin/Destination if search should be processed as a city or airport code *Preferred Operating Carrier– Allows you to narrow the search by operating carrier (following the same logic as the current element for the marketing carrier).
  • Baggage Allowance and Charges - Allows you to manage baggage information at the request level.
  • Override Electronic Ticket Validation - Allows you to select a validating carrier and override the local settlement validation method and Interline Electronic Ticketing (IET) validation.
  • Multiple Fares Per Itinerary (MFPI) – Enables more customization for change fee, refundability and passenger type functionality: * Added ability to include multiple Passenger Types allowable per fare group. * Modifying default logic for Passenger Type processing within a fare group and added capability to force a requested Passenger Type. *Added Change Fee and Refundability to be added per fare group; the response changed to make a clear distinction.

API Information

Format
JSON
Endpoint
/POST /v3.0.0/shop/flights
Current Version
3.0.0
Environment
Production

What's New

  • Bargain FinderSM Max has been enhanced to enable more customization and flexibility within the request and return additional information in the response as follows:
  • Schedule Filtering – new elements were added to the request schema: *Search by Airport or City codes – Allows you to specify for Origin/Destination if search should be processed as a city or airport code *Preferred Operating Carrier– Allows you to narrow the search by operating carrier (following the same logic as the current element for the marketing carrier).
  • Baggage Allowance and Charges - Allows you to manage baggage information at the request level.
  • Override Electronic Ticket Validation - Allows you to select a validating carrier and override the local settlement validation method and Interline Electronic Ticketing (IET) validation.
  • Multiple Fares Per Itinerary (MFPI) – Enables more customization for change fee, refundability and passenger type functionality: * Added ability to include multiple Passenger Types allowable per fare group. * Modifying default logic for Passenger Type processing within a fare group and added capability to force a requested Passenger Type. *Added Change Fee and Refundability to be added per fare group; the response changed to make a clear distinction.

Business Value

  • Each of these enhancements enable greater personalization and efficiency to further refine the search. Results are more relevant options, which drives higher booking conversion.

New Features

In the Request

Optional

Parameter: LocationType

Type: String

Description: Parameter to narrow origin/destination search to specified airport or city. Valid values are: • “A” - Airport code • “C” - City code

Sample Value:

"DestinationLocation": {
    "LocationCode": "OSL",
    "G": "A"
}
Note: If no “LocationType” is specified, the “LocationCode” will default to a city code (if city and airport codes are the same).

In the Request

Optional

Parameter: Type

Type: PreferLevelType

Description: “Type” parameter allows you to narrow the search by carrier type. Valid values are: • “Marketing” • “Operating”

Sample Value:

"VendorPref": [{
    "Code": "BA",
    "Type": "Marketing",
    "PreferLevel": "Preferred"
},
{
    "Code": "AA",
    "Type": "Operating",
    "PreferLevel": "Preferred"
}]
Note: If no “Type” parameter is added, vendor preference defaults to the marketing carrier.

In the Request

Optional

Parameter: Baggage

Type: Complex

Description: Element to request baggage information

Sample Value:

N/A
Note: If the “Baggage” element is added, the parameter “RequestType” is required. Current baggage information, allowance only, will be returned if the “Baggage” element is not added to the request.

In the Request

Required

Parameter: RequestType

Type: BaggageRequestType

Description: Baggage information request type. Valid values are: • “A” - Allowance only • “C” - Allowance and charges • “N” - No baggage information

Sample Value:

"Baggage": {
    "RequestType": "A",
    "Description": true
}
Note: The “RequestType” parameter is required within the “Baggage” element.

In the Request

Optional

Parameter: Description

Type: Boolean

Description: The “Description” parameter allows you to request baggage text information. Valid values are: • “true” - To request text information. • “false” – Not to request text information.

Sample Value:

"Baggage": {
    "RequestType": "A",
    "Description": true
}
Note: If “RequestType” is set to “N”, the “Description” parameter will be ignored. If no “Description” parameter is specified in the request, it is considered as “false”.

In the Response

Optional

Parameter: ProvisionType

Type: BaggageProvisionType

Description: “ProvisionType” indicates baggage information. Valid values are: • “A” - Checked Baggage Allowance. • “C” - Day of Check-in Charges.

Sample Value:

"BaggageInformation": [{
    "ProvisionType": "A",
    "AirlineCode": "SK",
    "Segment": [{
        "Id": 0
    },
    {
        "Id": 1
    }],
    "Allowance": [{
        "Pieces": 1,
        "Description1": "UP TO 50 POUNDS/23 KILOGRAMS"
    }]
}]

In the Response

Optional

Parameter: AirlineCode

Type: AirlineCodeType

Description: “AirlineCode” indicates the carrier whose baggage provisions apply.

Sample Value:

"BaggageInformation": [{
    "ProvisionType": "A",
    "AirlineCode": "SK",
    "Segment": [{
        "Id": 0
    },
    {
        "Id": 1
    }],
    "Allowance": [{
        "Pieces": 1,
        "Description1": "UP TO 50 POUNDS/23 KILOGRAMS"
    }]
}]

In the Response

Optional

Parameter: Description1

Type: String

Description: Baggage text information.

Sample Value:

"BaggageInformation": [{
    "ProvisionType": "A",
    "AirlineCode": "SK",
    "Segment": [{
        "Id": 0
    },
    {
        "Id": 1
    }],
    "Allowance": [{
        "Pieces": 1,
        "Description1": "UP TO 50 POUNDS/23 KILOGRAMS"
    }]
}]

In the Response

Optional

Parameter: Description2

Type: String

Description: Baggage text information.

Sample Value:

N/A

In the Response

Optional

Parameter: Charge

Type: Complex

Description: Charge information for the first two checked bags (if applicable).

Sample Value:

N/A
Note: If the “Charge” element is applicable, the “EquivalentAmount” and “EquivalentCurrency” parameters are required.

In the Response

Required

Parameter: EquivalentAmount

Type: MonetaryAmountType

Description: Equivalent amount for baggage charges.

Sample Value:

N/A
Note: “EquivalentAmount” is required within the “Charge” element.

In the Response

Required

Parameter: EquivalentCurrency

Type: CurrencyCodeType

Description: Equivalent currency for baggage charges.

Sample Value:

N/A
Note: “EquivalentCurrency” is required within the “Charge” element.

In the Response

Optional

Parameter: FirstPiece

Type: Byte

Description: Specify first baggage piece for which the specified charge information applies.

Sample Value:

N/A
Note: “FirstPiece” can be the same as “LastPiece” if the specified charge applies to one piece only.

In the Response

Optional

Parameter: LastPiece

Type: Byte

Description: Specify last baggage piece for which the specified charge information applies.

Sample Value:

N/A
Note: “LastPiece” can be the same as “FirstPiece” if the specified charge applies to one piece only.

In the Request

Optional

Parameter: ValidatingCarrierCheck

Type: Complex

Description: The ValidatingCarrierCheck element encompasses the elements allowing you to override the local settlement method validation and Interline Electronic Ticketing agreements.

Sample Value:

N/A

In the Request

Required

Parameter: SettlementValidation

Type: Boolean

Description: The “SettlementValidation” parameter allows you to override the local settlement plan check.

Sample Value:

 "ValidatingCarrierCheck": {
    "SettlementValidation": {
        "Ind": false
    },
    "IETValidation": {
        "Ind": true
    },
    "Carrier": [{
        "Code": "QR"
    },
    {
        "Code": "EY"
    }],
    "Country": [{
        "Code": "DE"
    },
    {
        "Code": "FR"
    },
    {
        "Code": "IT"
    }]
}
Note: When SettlementValidation/@Ind is set to false, it disables the settlement method validation in the local point of sale. When SettlementValidation/@Ind is set to true, it validates the settlement method in the local POS. If specified along with Carrier Code, the settlement validation will be disabled. ed (if “false”) or proceed (if “true”) for the carriers specified in the request; if no Carrier Code is specified, the settlement validation will be disabled/proceed for all validating carriers. If a country code(s) is provided, the settlement validation will be triggered for the specified country/countries). The “SettlementValidation” element is required within the “ValidatingCarrierCheck” element.

In the Request

Required

Parameter: IETValidation

Type: Boolean

Description: IETValidation allows you to disable Electronic Ticketing agreements validation or specify in which points of sale and for which carriers Electronic Ticketing agreements should be checked.

Sample Value:

 "ValidatingCarrierCheck": {
    "SettlementValidation": {
        "Ind": false
    },
    "IETValidation": {
        "Ind": true
    },
    "Carrier": [{
        "Code": "QR"
    },
    {
        "Code": "EY"
    }],
    "Country": [{
        "Code": "DE"
    },
    {
        "Code": "FR"
    },
    {
        "Code": "IT"
    }]
}
Note: When IETValidation/@Ind is set to “false,” it disables the Interline Electronic Ticketing agreements validation. When IETValidation/@Ind is set to “true,” at least one Country Code must be specified and will trigger IET validation performed in the specified countries. The “IETValidation” element is required within the “ValidatingCarrierCheck” element.

In the Request

Optional

Parameter: Carrier/@Code

Type: String

Description: Carrier/@Code parameter allows you to specify a carrier code(s) for which the specified settlement method and/or IET validation should (should not) be done.

Sample Value:

 "ValidatingCarrierCheck": {
    "SettlementValidation": {
        "Ind": false
    },
    "IETValidation": {
        "Ind": true
    },
    "Carrier": [{
        "Code": "QR"
    },
    {
        "Code": "EY"
    }],
    "Country": [{
        "Code": "DE"
    },
    {
        "Code": "FR"
    },
    {
        "Code": "IT"
    }]
}
Note: If a carrier code is not added in the request, the settlement validation is enabled/disabled for all carriers.

In the Request

Required

Parameter: Country/@Code

Type: String

Description: Country/@Code parameter allows you to specify country code(s) for which IET and/or settlement validation should be performed. At least one country code must be provided if IETValidation/@Ind is set to “true”.

Sample Value:

 "ValidatingCarrierCheck": {
    "SettlementValidation": {
        "Ind": false
    },
    "IETValidation": {
        "Ind": true
    },
    "Carrier": [{
        "Code": "QR"
    },
    {
        "Code": "EY"
    }],
    "Country": [{
        "Code": "DE"
    },
    {
        "Code": "FR"
    },
    {
        "Code": "IT"
    }]
}
Note: Country code is a valid parameter only if IET Validation is set to “true” in the request; otherwise, it is ignored. The format is a two-character country code as defined by ISO.

In the Response

Optional

Parameter: SettlementMethod

Type: String (Length 3 characters)

Description: The “SettlementMethod” parameter describes the settlement method verified for validating carrier(s).

Sample Value:

"ValidatingCarrier": [{
    "SettlementMethod": "ARC",
    "NewVcxProcess": true,
    "Default": {
        "Code": "MS"
    }
},
{
    "SettlementMethod": "BSP",
    "Country": "IT",
    "NewVcxProcess": true,
    "Default": {
        "Code": "HR"
    },
    "Alternate": [{
        "Code": "HV"
    }]
}]
Note: If no settlement method is checked (SettlementValidation Ind="false" in request), NSP appears in the response.

In the Response

Optional

Parameter: NewVcxProcess

Type: Boolean

Description: “NewVcxProcess” indicates whether IET validation was requested (by IETValidation Ind set as “true" or “false” in the request).

Sample Value:

"ValidatingCarrier": [{
    "SettlementMethod": "ARC",
    "NewVcxProcess": true,
    "Default": {
        "Code": "MS"
    }
},
{
    "SettlementMethod": "BSP",
    "Country": "IT",
    "NewVcxProcess": true,
    "Default": {
        "Code": "HR"
    },
    "Alternate": [{
        "Code": "HV"
    }]
}]

In the Response

Optional

Parameter: Default/@Code

Type: CarrierCode

Description: This parameter indicates the default carrier code for Settlement Method and IET validation check.

Sample Value:

"ValidatingCarrier": [{
    "SettlementMethod": "ARC",
    "NewVcxProcess": true,
    "Default": {
        "Code": "MS"
    }
},
{
    "SettlementMethod": "BSP",
    "Country": "IT",
    "NewVcxProcess": true,
    "Default": {
        "Code": "HR"
    },
    "Alternate": [{
        "Code": "HV"
    }]
}]

In the Response

Optional

Parameter: Alternate/@Code

Type: CarrierCode

Description: This parameter indicates the alternate carrier code for Settlement Method and IET check.

Sample Value:

"ValidatingCarrier": [{
    "SettlementMethod": "ARC",
    "NewVcxProcess": true,
    "Default": {
        "Code": "MS"
    }
},
{
    "SettlementMethod": "BSP",
    "Country": "IT",
    "NewVcxProcess": true,
    "Default": {
        "Code": "HR"
    },
    "Alternate": [{
        "Code": "HV"
    }]
}]

In the Response

Optional

Parameter: Country/@Code

Type: String

Description: Returns the country code in which IET validation was done for the default or alternate Validating Carrier. The format is a two-character country code as defined by ISO.

Sample Value:

"ValidatingCarrier": [{
    "SettlementMethod": "ARC",
    "NewVcxProcess": true,
    "Default": {
        "Code": "MS"
    }
},
{
    "SettlementMethod": "BSP",
    "Country": "IT",
    "NewVcxProcess": true,
    "Default": {
        "Code": "HR"
    },
    "Alternate": [{
        "Code": "HV"
    }]
}]
Note: Above schema applies if no settlement method with IET validation checked in request: |-|SettlementValidation Ind="false"/|--| |-|IETValidation Ind="true"/|--|

In the Response

Optional

Parameter: Country

Type: String

Description: Country code for which settlement method and IET validation was checked (other than the original POS). Format is a two-character country code as defined by ISO.

Sample Value:

"ValidatingCarrier": [{
    "SettlementMethod": "ARC",
    "NewVcxProcess": true,
    "Default": {
        "Code": "MS"
    }
},
{
    "SettlementMethod": "BSP",
    "Country": "IT",
    "NewVcxProcess": true,
    "Default": {
        "Code": "HR"
    },
    "Alternate": [{
        "Code": "HV"
    }]
}]
Note: This schema applies if settlement method with IET validation check was requested: |-|SettlementValidation Ind="true"/|--| |-|IETValidation Ind="true"/|--| |-|Country Code="PL"/|--|

In the Request

Optional

Parameter: PassengerTypeQuantity/@Code

Type: String

Description: This is a functional enhancement to Multiple Fares Per Itinerary (MFPI) within Bargain FinderSM Max. This parameter allows you to specify multiple passenger type codes in a FlexibleFares group.

Sample Value:

"PassengerTypeQuantity": [{
    "Code": "MIL",
    "Quantity": 1
}]
Note: This is an extension of MFPI functionality – specify multiple passenger types.

In the Request

Optional

Parameter: PassengerTypeQuantity/@Quantity

Type: Numeric1to999

Description: This is a functional enhancement to Multiple Fares Per Itinerary within Bargain Finder Max. This parameter is used to specify the quantity of passengers per a given Passenger Type.

Sample Value:

"PassengerTypeQuantity": [{
    "Code": "MIL",
    "Quantity": 1
}]
Note: Up to four PassengerTypeQuantity elements with different Passenger Types Codes can be added in a single Multiple Fares group. The number of passenger types will match the number of passengers traveling.

In the Request

Optional

Parameter: XOFares/@Ind

Type: Boolean

Description: This is a functional enhancement to Multiple Fares Per Itinerary within Bargain Finder Max. When XOFares/@Ind is set to “true,” it will force the specified fare on all legs of the returned solution to match the passenger type requested. This enhancement will remove the default application of XO (stay true to passenger type) qualifier on MFPI groups.

Sample Value:

N/A
Note: When XOFares/@Ind is set to “true,” only the fares matching the requested passenger type will be returned on all fare components. Otherwise, the fare matching the specified passenger type will be returned on at least one leg. NOTE: If you are using this option today in MFPI you will want to validate your logic is working as expected.

In the Request

Optional

Parameter: VoluntaryChanges

Type: VoluntaryChangesSMPType

Description: This element identifies whether penalties associated with voluntary changes should be included in the search results.

Sample Value:

"VoluntaryChanges": {
    "Match": "Any",
    "Penalty": [{
        "Type": "Refund",
        "Exclude": true,
        "Application": "Before",
        "CurrencyCode": "USD"
    }]
}
Note: By adding this functionality users requesting an MFPI request can use the optional Max Penalty qualifier to filter by fare flexibility and maximum penalty amounts.

  • Bargain Finder Max service has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
  • Multiple Fares Per Itinerary (MFPI) – enables more customization for cabin functionality: * Modified default logic for cabin processing to jump cabin if lower fare found in different cabin * Added ability to disable jump cabin functionality allowable per fare group
  • Agency Retailer – allows you to create selling levels for your authorized Category 35 negotiated fares or adjust the selling level of any fare in compliance with the agencies carrier agreements. - Applies to limited release customers only.

API Information

Format
JSON
Endpoint
/POST /v1.9.7/shop/flights/
Current Version
1.9.7
Environment
Production

What's New

  • Bargain Finder Max service has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
  • Multiple Fares Per Itinerary (MFPI) – enables more customization for cabin functionality: * Modified default logic for cabin processing to jump cabin if lower fare found in different cabin * Added ability to disable jump cabin functionality allowable per fare group
  • Agency Retailer – allows you to create selling levels for your authorized Category 35 negotiated fares or adjust the selling level of any fare in compliance with the agencies carrier agreements. - Applies to limited release customers only.

New Features

In the Request

Optional

Parameter: JumpCabinLogic/@Disabled

Type: Boolean

Description: This is a functional enhancement to Multiple Fares Per Itinerary within Bargain FinderSM Max. When JumpCabinLogic/@Disabled is set to “true,” the following logic will apply: for two (and more) segment solutions where at least one segment offers preferred cabin, jump cabin will be performed for the segment where the preferred cabin is not offered, but the lower cabin is offered and available. It should be specified along with the cabin type in the MFPI group.

Sample Value:

"JumpCabinLogic": {
    "Disabled": true
},
"KeepSameCabin": {
    "Enabled": false
}

In the Request

Optional

Parameter: KeepSameCabin/@Enabled

Type: Boolean

Description: This is a functional enhancement to Multiple Fares Per Itinerary within Bargain Finder Max. When KeepSameCabin/@Enabled is set to “true,” it is guaranteed all segments within the applicable Multiple Fare Per Itinerary group match the requested cabin.

Sample Value:

"JumpCabinLogic": {
    "Disabled": true
},
"KeepSameCabin": {
    "Enabled": false
}

In the Request

Optional

Parameter: SellingLevels

Type: Complex

Description: Element controlling Mark Up Any Fare functionality. When SellingLevels element is defined, one of its sub-elements must be provided, either SellingLevelRules or ShowFareAmounts.

Sample Value:

N/A

In the Request

Required

Parameter: SellingLevelRules/@Ignore

Type: Boolean

Description: If ignore set to “true,” adjustment SellingLevelRules will be ignored. To use this element, the ORGFQD EPR keyword is required.

Sample Value:

"SellingLevels": {
    "SellingLevelRules": {
        "Ignore": true
    }
}

In the Request

Required

Parameter: ShowFareAmounts

Type: Complex

Description: The ShowFareAmounts element defines which FareLevel should be returned in the response. When the ShowFareAmounts element is defined, only one of its attributes can be defined, either Original or Adjusted. At least one is required.

Sample Value:

"SellingLevels": {
    "ShowFareAmounts": {
        "Adjusted": true
    }
}

In the Request

Optional

Parameter: ShowFareAmounts/@Original

Type: Boolean

Description: When ShowFareAmounts/@Original is set to “true,” the original fare amount will be returned in the total fare amount, and additional MarkUp information will be returned in the SellingFareData element. To use this attribute, the ORGFQD EPR keyword is required.

Sample Value:

"SellingLevels": {
    "ShowFareAmounts": {
        "Original": true
    }
}

In the Request

Optional

Parameter: ShowFareAmounts/@Adjusted

Type: Boolean

Description: When ShowFareAmounts/@Adjusted is set to “true,” the selling fare level amount and total adjusted fare amount will be returned. To use this attribute, the AGYRET EPR keyword is required.

Sample Value:

"SellingLevels": {
    "ShowFareAmounts": {
        "Adjusted": true
    }
}

In the Request

Optional

Parameter: RetailerRules

Type: Complex

Description: Provides the capability to request fares matching the specified retailer rules.

Sample Value:

N/A

In the Request

Optional

Parameter: RetailerRules/ @Force

Type: Boolean

Description: If RetailerRules/@Force is set to “true,” only fares with a matched Business Rule containing the specified Retailer Rule Qualifier will be returned.

Sample Value:

"RetailerRule": [{
    "Code": "MBRKERRQ"
}, {
    "Code": "MBRKERRQNET"
}]

In the Request

Required

Parameter: RetailerRule/@Code

Type: String (restriction: maximum length 20 characters)

Description: This attribute is used to provide the code(s) of retailer rules that should be matched by returned fares.

Sample Value:

"RetailerRule": [{
    "Code": "MBRKERRQ"
}, {
    "Code": "MBRKERRQNET"
}]

In the Response

Optional

Parameter: HandlingMarkupDetail

Type: Complex

Description: Provides information about handling markup details if applicable on the fare component level.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: HandlingMarkupDetail/@MarkupHandlingFeeAppID

Type: String

Description: HandlingMarkupDetail/@MarkupHandlingFeeAppID is a markup handling fee application ID.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: HandlingMarkupDetail/@MarkupTypeCode

Type: String

Description: HandlingMarkupDetail/@MarkupTypeCode defines the Markup type.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: HandlingMarkupDetail/@FareAmountAfterMarkup

Type: Decimal

Description: HandlingMarkupDetail/@FareAmountAfterMarkup is the fare amount after the applied markup.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: HandlingMarkupDetail/@MarkupAmount

Type: Decimal

Description: HandlingMarkupDetail/@MarkupAmount is the amount of the applied markup.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: HandlingMarkupDetail/@AmountCurrency

Type: String

Description: HandlingMarkupDetail/@AmountCurrency is the currency of a given markup amount.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: HandlingMarkupDetail/@MarkupRuleSourcePCC

Type: String (restriction: minimum three maximum four characters)

Description: HandlingMarkupDetail/@MarkupRuleSourcePCC is code of PCC who crated given markup rule.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: HandlingMarkupDetail/@MarkupRuleItemNumber

Type: UnsignedLong

Description: HandlingMarkupDetail/@MarkupRuleItemNumber is a number identifying a markup rule item.

Sample Value:

"HandlingMarkupDetail": [{
    "MarkupHandlingFeeAppID": "AJ",
    "FareAmountAfterMarkup": 207.50,
    "MarkupAmount": 19.00,
    "AmountCurrency": "EUR",
    "MarkupRuleSourcePCC": "A1D0",
    "MarkupRuleItemNumber": 7794
}] 

In the Response

Optional

Parameter: SellingFareDataList

Type: Complex

Description: Agency retailer MarkUp information if applicable.

Sample Value:

N/A

In the Response

Required

Parameter: SellingFareData/@LayerTypeName

Type: String

Description: Indicates that the returned fare level is the adjusted selling fare, meaning that the agency retailer markup was applied.

Sample Value:

"SellingFareDataList": {
    "SellingFareData": [{
        "LayerTypeName": "ADS",
        "HandlingMarkupSummary": [{
            "TypeCode": "J",
            "Description": "ADJT AMT",
            "MonetaryAmountValue": 21.00
        }]
    }]
}

In the Response

Optional

Parameter: HandlingMarkupSummary

Type: Complex

Description: This is a summary information about the Agency Retailer MarkUp amount, markUp type, and MarkUp description.

Sample Value:

N/A

In the Response

Required

Parameter: HandlingMarkupSummary/@TypeCode

Type: String (restricted to one character)

Description: HandlingMarkupSummary/@TypeCode defines the Agency Retailer markup type. Valid values are: • M − Embedded Mark Up • J − Adjusted Selling • H − Handling Fee • G − GST Taxes

Sample Value:

"SellingFareDataList": {
    "SellingFareData": [{
        "LayerTypeName": "ADS",
        "HandlingMarkupSummary": [{
            "TypeCode": "J",
            "Description": "ADJT AMT",
            "MonetaryAmountValue": 21.00
        }]
    }]
}

In the Response

Required

Parameter: HandlingMarkupSummary/@Description

Type: String (restriction: maximum 10 characters)

Description: HandlingMarkupSummary/@Description is a description of the selling fare data.

Sample Value:

"SellingFareDataList": {
    "SellingFareData": [{
        "LayerTypeName": "ADS",
        "HandlingMarkupSummary": [{
            "TypeCode": "J",
            "Description": "ADJT AMT",
            "MonetaryAmountValue": 21.00
        }]
    }]
}

In the Response

Required

Parameter: HandlingMarkupSummary/ @MonetaryAmountValue

Type: Decimal (up to three fractional digits)

Description: HandlingMarkupSummary/@MonetaryAmountValue is the Agency Retailer markup amount in the equivalent currency.

Sample Value:

"SellingFareDataList": {
    "SellingFareData": [{
        "LayerTypeName": "ADS",
        "HandlingMarkupSummary": [{
            "TypeCode": "J",
            "Description": "ADJT AMT",
            "MonetaryAmountValue": 21.00
        }]
    }]
}

In the Response

Optional

Parameter: FareRetailerRule

Type: Complex

Description: Matched general retailer rule code or adjusted selling level retailer rule code

Sample Value:

N/A

In the Response

Required

Parameter: FareRetailerRule/@TransactionType

Type: String

Description: FareRetailerRule/@TransactionType specifies the general or adjusted selling level.

Sample Value:

"FareRetailerRule": [{
    "TransactionType": "General",
    "Code": "MBRKERRQNET"
},
{
    "TransactionType": "AdjustedSellingLevel",
    "Code": "MBRKERRQ"
}]

In the Response

Required

Parameter: FareRetailerRule/@Code

Type: String

Description: FareRetailerRule/@Code returns the matched Agency Retailer rule code.

Sample Value:

"FareRetailerRule": [{
    "TransactionType": "General",
    "Code": "MBRKERRQNET"
},
{
    "TransactionType": "AdjustedSellingLevel",
    "Code": "MBRKERRQ"
}]

  • enabletagging: returns a Request ID for the itinerary data set and a Tag ID for each itinerary in the response and stores in the Sabre cache. The request ID can be used to make "paginated" calls (using limit and offset) via the new Bargain Finder Max - Pagination Request URL . The tag ID can be used to retrieve an itinerary via the new Bargain Finder Max - Tag ID Lookup URL.
  • limit and offset: paginate search results for a request ID by specifying itineraries to return per request in limit and specifying the starting position to begin retrieving itineraries in offset . Allows to retrieve and return search queries for mobile app requests. Rather than returning all results, you could return 5 results per request in limit (limit=5) and specify a starting position of 1 in offset (offset=1). You can select a starting position of 6 (offset=6) to retrieve the next 5 results (limit=5).
  • view: use a Sabre default response view or create a custom response view. To create a custom response view, define the response paths to include or exclude using the Custom Response View API , then pass the view as a filter in the request URI, e.g., view=NOWARNINGS to format the response. See the Response View Lookup API for a list of Sabre response views.

API Information

Format
JSON
Endpoint
/POST /v1.9.5.1/shop/flights
Current Version
1.9.5.1
Environment
Production

What's New

  • enabletagging: returns a Request ID for the itinerary data set and a Tag ID for each itinerary in the response and stores in the Sabre cache. The request ID can be used to make "paginated" calls (using limit and offset) via the new Bargain Finder Max - Pagination Request URL . The tag ID can be used to retrieve an itinerary via the new Bargain Finder Max - Tag ID Lookup URL.
  • limit and offset: paginate search results for a request ID by specifying itineraries to return per request in limit and specifying the starting position to begin retrieving itineraries in offset . Allows to retrieve and return search queries for mobile app requests. Rather than returning all results, you could return 5 results per request in limit (limit=5) and specify a starting position of 1 in offset (offset=1). You can select a starting position of 6 (offset=6) to retrieve the next 5 results (limit=5).
  • view: use a Sabre default response view or create a custom response view. To create a custom response view, define the response paths to include or exclude using the Custom Response View API , then pass the view as a filter in the request URI, e.g., view=NOWARNINGS to format the response. See the Response View Lookup API for a list of Sabre response views.

New Features

In the Request

Optional

Parameter: enabletagging

Type: boolean

Description: Returns a RequestID for the itinerary data set and stores in the Sabre cache. The request ID can be used to make "paginated" calls (using limit and offset) via the Pagination Request URL at: GET /v1.9.5.1/shop/flights/{requestid}. Returns a TagID for each itinerary and stores in the Sabre cache. The tag ID can be used to retrieve an itinerary from the Tag ID Lookup URL at: GET /v1.9.5.1/shop/flights/tags/{tagid}. See documentation for new methods and endpoints.

Sample Value:

N/A
Note: enabletagging=true – returns and stores itineraries for subsequent calls to the Sabre cache

In the Request

Optional

Parameter: limit

Type: string or number

Description: The number of itineraries to retrieve per request

Sample Value:

limit=50
Note: Default value: 50 itineraries per request . If limit is specified in the Pagination Request URL, then enabletagging=true must have been specified in the initial Bargain Finder Max API request.

In the Request

Optional

Parameter: offset

Type: number

Description: The starting position in the list of all itineraries that meet the query criteria

Sample Value:

offset=1
Note: Default value: 1. If offset is specified in the Pagination Request URL, then enabletagging=true must have been specified in the initial Bargain Finder Max API request.

In the Request

Optional

Parameter: view

Type: string

Description: The response view definition

Sample Value:

view=IF_ITIN_TOTAL_PRICE
Note: You can either use a Sabre default response view or create a custom response view us ing the Custom Response View API.

In the Response

N/A

Parameter: RequestID

Type: N/A

Description: The request ID that corresponds to the itinerary data set

Sample Value:

N/A
Note: A request ID is returned when enabletagging=true is used in a previous Bargain Finder Max API request. The request ID can be used to make "paginated" calls (using limit and offset) via the Pagination Request URL. See documentation for details on request ID expiration values.

In the Response

N/A

Parameter: TagID

Type: N/A

Description: The tag ID for the respective itinerary

Sample Value:

N/A
Note: A tag ID is returned when enabletagging=true is used in a previous Bargain Finder Max API request. The tag ID can be used to retrieve an itinerary from the Tag ID Lookup URL. See documentation for details on tag ID expiration values.

In the Response

N/A

Parameter: paginatedRequestLinkTemplate

Type: N/A

Description: Formats an API request with placeholders to retrieve the itinerary data set associated with a given request ID

Sample Value:

N/A

In the Response

N/A

Parameter: tagLookupLinkTemplate

Type: N/A

Description: Formats an API request with placeholders to retrieve the itinerary associated with a given tag ID

Sample Value:

N/A