v4 | March 31, 2023
- The Revalidate Itinerary 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
What's New
- The Revalidate Itinerary 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"
}
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.
v4 | December 18, 2021
- The Revalidate Itinerary 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
API Information
What's New
- The Revalidate Itinerary 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
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
v4 | June 30, 2021
- The Revalidate Itinerary GIR Responses have been enhanced with minor fixes.
API Information
What's New
- The Revalidate Itinerary GIR Responses have been enhanced with minor fixes.
Business Value
- Each of these enhancements enables greater personalization and efficiency to further refine the search.
v3 | March 31, 2021
- The Revalidate Itinerary Request has been enhanced with the following changes:
- Flight Amenities - distribute ATPCO Routehappy rich content via Revalidate Itinerary.
- Shop by Carry-On baggage - two new attributes added into existing baggage sections.
- The Revalidate Itinerary OTA and 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
What's New
- The Revalidate Itinerary Request has been enhanced with the following changes:
- Flight Amenities - distribute ATPCO Routehappy rich content via Revalidate Itinerary.
- Shop by Carry-On baggage - two new attributes added into existing baggage sections.
- The Revalidate Itinerary OTA and 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": "CC" 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"
}
],
v6.2.0 | December 15, 2020
- The Revalidate Itinerary Request has been enhanced with the following changes:
- Pre Reserved Seat Selection - Enables to return pre-reserved seat data and capability to filter by free pre-reserved seat
- TN Exchange & Refund - New attributes available on the Shopping Exchange path; KeepBookingCode & KeepOriginalBrand.
- Stopover section enhancement enables indicating the amount of nights between the connections. It is possible to indicate the min. and max. time-frames (hours).
- Functional update for the existing parameters: Qualifier & DepartureDateTime.
- The Revalidate Itinerary Response have been enhanced with the new parameters and other changes listed below:
- Flight Amenities - Seat type. Changes to the response schema to support flight amenities information in regard to Seat type and Seat pitch.
- Pre reserved seat selection - changes to the response schema to support pre-reserved seat information.
API Information
What's New
- The Revalidate Itinerary Request has been enhanced with the following changes:
- Pre Reserved Seat Selection - Enables to return pre-reserved seat data and capability to filter by free pre-reserved seat
- TN Exchange & Refund - New attributes available on the Shopping Exchange path; KeepBookingCode & KeepOriginalBrand.
- Stopover section enhancement enables indicating the amount of nights between the connections. It is possible to indicate the min. and max. time-frames (hours).
- Functional update for the existing parameters: Qualifier & DepartureDateTime.
- The Revalidate Itinerary Response have been enhanced with the new parameters and other changes listed below:
- Flight Amenities - Seat type. Changes to the response schema to support flight amenities information in regard to Seat type and Seat pitch.
- Pre reserved seat selection - changes to the response schema to support pre-reserved seat information.
Business Value
- Each of these enhancements enable greater personalization and efficiency to further refine the search.
- The new Swagger Documentation covering all the listed features will be available ca. around 16th-21st DEC. Stay tuned!
New Features
In the Request
Optional
- Parameter: SeatSelection
-
Type: FreeSeatSelectionAndInfoType
Description: The element that will contain parameters used for pre-reserved seat processing. Allows to return pre-reserved seat data and capability to filter by free pre-reserved seat
Sample Value:
{
"TPA_Extensions": {
"SeatSelection": {
"@Info": "true",
"@FreeSeatSelection": "false"
}
}
}Note: If SeatSelection element contains both Info and FreeSeatSelection then the applicable type is FreeSeatSelectionAndInfoType minOccurs="0" maxOccurs="1". If the element contains FreeSeatSelection only, then the applicable type is FreeSeatSelectionType. More details available below.
In the Request
Optional
- Parameter: FreeSeatSelection
-
Type: boolean
Description: Filter parameter to return only fares that include Free Seat selection in the fare.
Sample Value:
{
"TPA_Extensions": {
"SeatSelection": {
"@Info": "true",
"@FreeSeatSelection": "false"
}
}
}Note: Default value = false.
In the Request
Optional
- Parameter: Info
-
Type: boolean
Description: The parameter to obtain pre-reserved seat info: F - Free; C - Charge; N - Not Applicable will be returned in the response if set to "true".
Sample Value:
{
"TPA_Extensions": {
"SeatSelection": {
"@Info": "true",
"@FreeSeatSelection": "false"
}
}
}Note: Info & FreeSeatSelection are available together at the Main Fare level. Using both attributes at Main Fare enables seat information at every segment level in the Shopping Response.
In the Request
Optional
- Parameter: FreeSeatSelection
-
Type: boolean
Description: Additional option to use FreeSeatSelection (without Info mode).
Sample Value:
{
"TravelPreferences": {
"TPA_Extensions": {
"FlexibleFares": {
"Leg": {
"SeatSelection": {
"@FreeSeatSelection": "true"
}
}
}
}
}
}Note: The FreeSeatSelection filter might be used at all Fare levels: Main Fare; Main Fare Leg; Flexible Fare; Flexible Fare Leg. This option allows to indicate specific part of the journey where customer is looking for Free Seats only.
In the Request
Optional
- Parameter: KeepBookingCode
-
Type: boolean
Description: New parameter in the Shopping Exchange flow (ATPCO path).
Sample Value:
{
"Flight": {
"@Type": "A",
"@Number": "445",
"@DepartureDateTime": "2021-02-20T13:00:00",
"@ArrivalDateTime": "2021-02-20T14:35:00",
"@Shopped": "false",
"@ClassOfService": "M",
"@KeepBookingCode": "true",
"@Flown": "false",
"OriginLocation": {
"@LocationCode": "SYD"
},
"DestinationLocation": {
"@LocationCode": "MEL"
},
"Airline": {
"@Operating": "QF",
"@Marketing": "QF"
},
"Reservation": {
"@Status": "OK",
"@RealStatus": "HK"
},
"BookingDateTime": "2020-12-03T07:53:00"
},
"SegmentType": {
"@Code": "O"
},
"AlternateTime": [],
"CabinPref": []
}Note: If set to ''true'', the original booking code will be kept for unchanged flight.
In the Request
Optional
- Parameter: KeepOriginalBrand
-
Type: boolean
Description: New parameter in the Shopping Exchange flow (ATPCO path).
Sample Value:
{
"@BrandedResults": "false",
"@AttachExchangeInfo": "true",
"@ReissueExchange": "A",
"@KeepOriginalBrand": "true"
}Note: If set to ''true'', the original brand will be returned for unchanged flights.
In the Request
Optional
- Parameter: Stay
-
Type: N/A
Description: New extension of the Stopover section,. Enhancement enables indicating the amount of nights between the connections. It is possible to indicate the min. and max. time-frames (hours).
Sample Value:
{
"DepartureDateTime": "2020-12-20T09:12:15",
"OriginLocation": {
"@LocationCode": "JFK"
},
"DestinationLocation": {
"@LocationCode": "DEL"
},
"TPA_Extensions": {
"Stopover": {
"Stay": {
"@Nights": "2",
"@MinHours": "10",
"@MaxHours": "72"
},
"StopoverPoint": {
"@LocationCode": "AUH"
}
}
}
}Note: Information related to the stay at the stopover point
In the Request
Optional
- Parameter: Nights
-
Type: nonNegativeInteger
Description: New extension of the Stopover section, enhancement to specify break between next connection. Night indicator.
Sample Value:
{
"DepartureDateTime": "2020-12-20T09:12:15",
"OriginLocation": {
"@LocationCode": "JFK"
},
"DestinationLocation": {
"@LocationCode": "DEL"
},
"TPA_Extensions": {
"Stopover": {
"Stay": {
"@Nights": "2",
"@MinHours": "10",
"@MaxHours": "72"
},
"StopoverPoint": {
"@LocationCode": "AUH"
}
}
}
}Note: Number of nights spent at the stopover point.
In the Request
Optional
- Parameter: MinHours
-
Type: nonNegativeInteger
Description: New extension of the Stopover section, enhancement to specify break between next connection. Min. hours of stay indicator.
Sample Value:
{
"DepartureDateTime": "2020-12-20T09:12:15",
"OriginLocation": {
"@LocationCode": "JFK"
},
"DestinationLocation": {
"@LocationCode": "DEL"
},
"TPA_Extensions": {
"Stopover": {
"Stay": {
"@Nights": "2",
"@MinHours": "10",
"@MaxHours": "72"
},
"StopoverPoint": {
"@LocationCode": "AUH"
}
}
}
}Note: Minimum stay in hours at the stopover point.
In the Request
Optional
- Parameter: MaxHours
-
Type: positiveInteger
Description: New extension of the Stopover section, enhancement to specify break between next connection. Max. hours of stay indicator.
Sample Value:
{
"DepartureDateTime": "2020-12-20T09:12:15",
"OriginLocation": {
"@LocationCode": "JFK"
},
"DestinationLocation": {
"@LocationCode": "DEL"
},
"TPA_Extensions": {
"Stopover": {
"Stay": {
"@Nights": "2",
"@MinHours": "10",
"@MaxHours": "72"
},
"StopoverPoint": {
"@LocationCode": "AUH"
}
}
}
}Note: Maximum stay in hours at the stopover point.
In the Response
Required
- Parameter: Seat/@Type
-
Type: string
Description: Short name of seat type. It can be Standard, Middle seat free, Skycouch, Recliner, Flat.
Sample Value:
{
"@Id": "2",
"Seat": {
"@Type": "Standard",
"@LessThan": "34"
},
"Options": {
"@Min": "2",
"Option": [
{
"@SeatSelection": "free"
},
{
"@Exchanges": "allowed"
}
]
}
}
In the Response
Optional
- Parameter: Seat/@LessThan
-
Type: integer
Description: The number in inches. It means that seat pitch will have less than that value of inches.
Sample Value:
{
"@Id": "2",
"Seat": {
"@Type": "Standard",
"@LessThan": "34"
},
"Options": {
"@Min": "2",
"Option": [
{
"@SeatSelection": "free"
},
{
"@Exchanges": "allowed"
}
]
}
}Note: e.g. Less than 34"
In the Response
Optional
- Parameter: Seat/@AtLeast
-
Type: integer
Description: The number in inches. It means that seat pitch will have at least that value of inches.
Sample Value:
{
"@Id": "2",
"Seat": {
"@Type": "Standard",
"@LessThan": "34"
},
"Options": {
"@Min": "2",
"Option": [
{
"@SeatSelection": "free"
},
{
"@Exchanges": "allowed"
}
]
}
}Note: e.g. 34" and above.
In the Response
Optional
- Parameter: Seat/Cabin
-
Type: complexType
Description: The same as Cabin element in request. Contains type and prefer level (include/exclude).
Sample Value:
{
"@Id": "2",
"Seat": {
"@Type": "Standard",
"@LessThan": "34"
},
"Options": {
"@Min": "2",
"Option": [
{
"@SeatSelection": "free"
},
{
"@Exchanges": "allowed"
}
]
}
}Note: The Cabin element includes Type (SabreCabinCode - required) and optional PreferLevel.
In the Response
Optional
- Parameter: Options
-
Type: ShelfOptionsType
Description: The list of option that can be available on particular shelf.
Sample Value:
{
"@Id": "2",
"Seat": {
"@Type": "Standard",
"@LessThan": "34"
},
"Options": {
"@Min": "2",
"Option": [
{
"@SeatSelection": "free"
},
{
"@Exchanges": "allowed"
}
]
}
}Note: Up to 5.
In the Response
Optional
- Parameter: Options/@Max
-
Type: integer
Description: The Maximum number of options to be matched. If the attribute is not present - all of the options can be matched on this shelf.
Sample Value:
{
"@Id": "2",
"Seat": {
"@Type": "Standard",
"@LessThan": "34"
},
"Options": {
"@Min": "2",
"Option": [
{
"@SeatSelection": "free"
},
{
"@Exchanges": "allowed"
}
]
}
}
In the Response
Optional
- Parameter: Options/@Min
-
Type: integer
Description: The Minimum number of options to be matched. If the attribute is not present – none of the option has to match shelf.
Sample Value:
{
"@Id": "2",
"Seat": {
"@Type": "Standard",
"@LessThan": "34"
},
"Options": {
"@Min": "2",
"Option": [
{
"@SeatSelection": "free"
},
{
"@Exchanges": "allowed"
}
]
}
}
In the Response
Optional
- Parameter: FlightAmenities
-
Type: FlightAmenitiesListType
Description: Amenities are presented in an indexed way that can easily be associated with flight components.
Sample Value:
[
{
"@Id": "1",
"@Pitch": "30",
"@Type": "standard legroom"
},
{
"@Id": "2",
"@Pitch": "29",
"@Type": "below average legroom"
},
{
"@Id": "3",
"@Pitch": "31",
"@Type": "standard legroom"
}
]Note: List of all Flight Amenities of different types that are available on any of the returned flights.They are later referenced from other elements.
In the Response
Optional
- Parameter: Seat
-
Type: SeatAmenityType
Description: Indicator what type of amenity has been returned.
Sample Value:
[
{
"@Id": "1",
"@Pitch": "30",
"@Type": "standard legroom"
},
{
"@Id": "2",
"@Pitch": "29",
"@Type": "below average legroom"
},
{
"@Id": "3",
"@Pitch": "31",
"@Type": "standard legroom"
}
]
In the Response
Required
- Parameter: Id
-
Type: nonNegativeInteger
Description: Number of the seat returned.
Sample Value:
[
{
"@Id": "1",
"@Pitch": "30",
"@Type": "standard legroom"
},
{
"@Id": "2",
"@Pitch": "29",
"@Type": "below average legroom"
},
{
"@Id": "3",
"@Pitch": "31",
"@Type": "standard legroom"
}
]
In the Response
Optional
- Parameter: Pitch
-
Type: simpleType
Description: The size of the returned seat type.
Sample Value:
[
{
"@Id": "1",
"@Pitch": "30",
"@Type": "standard legroom"
},
{
"@Id": "2",
"@Pitch": "29",
"@Type": "below average legroom"
},
{
"@Id": "3",
"@Pitch": "31",
"@Type": "standard legroom"
}
]Note: Value returned in inches.
In the Response
Optional
- Parameter: Type
-
Type: string
Description: Name of seat type, the returned list is from Rich Content. Example values below.
Sample Value:
[
{
"@Id": "1",
"@Pitch": "30",
"@Type": "standard legroom"
},
{
"@Id": "2",
"@Pitch": "29",
"@Type": "below average legroom"
},
{
"@Id": "3",
"@Pitch": "31",
"@Type": "standard legroom"
}
]Note: Possible values: "middle seat free" ; "standard legroom" ; "below average legroom" ; "above average legroom" ; "skycouch" ; "recliner seat" ; "full flat seat" ; "full flat pod" ; "private suite" ; "angle flat seat" ; "cradle recliner" .
In the Response
Optional
- Parameter: FlightAmenities
-
Type: complexType
Description: Amenities references will be returned inside FareInfos, to easily reference the amenities for each cabin and only show amenities for the cabins for which price has been also provided.
Sample Value:
{
"@Ref": "7",
"Segment": {
"@BookingCode": "J",
"@CabinCode": "C",
"@MealCode": "R",
"@SeatsAvailable": "9",
"@AvailabilityBreak": "true",
"FlightAmenities": {
"@SeatRef": "2"
}
}
}Note: OTA_AirLowFareSearchRS/PricedItineraries/PricedItinerary/AirItineraryPricingInfo/PTC_FareBreakdowns/PTC_FareBreakdown/FareInfos/FareInfo/TPA_Extensions/FlightAmenities
In the Response
Optional
- Parameter: Subsegment
-
Type: positiveInteger
Description: 1-based number of the flight "subsegment" the referred amenity applies to.
Sample Value:
{
"@Ref": "7",
"Segment": {
"@BookingCode": "J",
"@CabinCode": "C",
"@MealCode": "R",
"@SeatsAvailable": "9",
"@AvailabilityBreak": "true",
"FlightAmenities": {
"@SeatRef": "2"
}
}
}Note: "Subsegment" is a portion of flight separated by a hidden stop. This attribute is omitted for flights without hidden stops.
In the Response
Optional
- Parameter: SeatRef
-
Type: nonNegativeInteger
Description: Seat reference.
Sample Value:
{
"@Ref": "7",
"Segment": {
"@BookingCode": "J",
"@CabinCode": "C",
"@MealCode": "R",
"@SeatsAvailable": "9",
"@AvailabilityBreak": "true",
"FlightAmenities": {
"@SeatRef": "2"
}
}
}
In the Response
Optional
- Parameter: SeatSelectionList
-
Type: complexType
Description: Seat Selection Information List.
Sample Value:
{
"@Type": "F",
"Segment": [
{
"@ID": "0"
},
{
"@ID": "1"
}
]
}Note: FlexibleFares / MFPI seat information functionality. MinOccurs="0" maxOccurs="1".
In the Response
Optional
- Parameter: SeatSelection
-
Type: complexType
Description: Contains information if pre-reserved seat selection is free, chargeable, or if it is not applicable.
Sample Value:
{
"@Type": "F",
"Segment": [
{
"@ID": "0"
},
{
"@ID": "1"
}
]
}Note: FlexibleFares / MFPI seat information functionality. MinOccurs="1" maxOccurs="unbounded".
In the Response
Required
- Parameter: Type
-
Type: string
Description: A character of one-letter seat response code.
Sample Value:
{
"@Type": "F",
"Segment": [
{
"@ID": "0"
},
{
"@ID": "1"
}
]
}Note: F - Free (No charge). Seat selection on listed segment is Free. ; C - Charge. Seat selection on listed segment is paid. ; N - Not applicable. Seat selection on listed segments is Not Allowed.
In the Response
Optional
- Parameter: Segment ID
-
Type: nonNegativeInteger
Description: Segment reference ID for seat selection type.
Sample Value:
{
"@Type": "F",
"Segment": [
{
"@ID": "0"
},
{
"@ID": "1"
}
]
}Note: FlexibleFares / MFPI seat information functionality.
Functional Updates And Enhancements
In the Request
Optional
- Parameter: DepartureDateTime
-
Type: IntDateTime
Description: Technical change to an existing attribute, no more required in the request.
Sample Value:
{
"TPA_Extensions": {
"DateFlexibility": { "-NbrOfDays": "0" },
"Stopover": {
"DepartureDateTime": "2021-02-16T00:00:00",
"StopoverPoint": {
"-LocationCode": "AUH",
"-LocationType": "A"
},
"Stay": { "-Nights": "3" }
}
}
}Note: OTA_AirLowFareSearchRQ/OriginDestinationInformation/TPA_Extensions/Stopover/DepartureDateTime
v6.1.0 | May 1, 2020
- Flight type (A: Air Segment, K: ARUNK, O: Open Segment) has been changed from required to optional.
- Deleted Passenger Type Code. NOTE: The below optional parameter is no longer available for our customers: PassengerType/@Code - more information available in SAN 15673 from 10th SEP 2019.
- The Revalidate Itinerary API GIR Response has been enhanced with the new parameters and other changes listed below:
- ElapsedTime attribute has been added at the ScheduleDesc and LegDesc levels.
- The MandatoryInd indicates mandatory Offer Items that cannot be removed from the Offer. Added at the Fare and Passenger Information levels.
- New attribute LastTicketTime added at FareType level.
- Ancillaries Baggage information - For carriers migrated to new ATPCO baggage processing, new ancillaryTypeCode value "C" will occur, along with new optional elements: "subgroup", "description1", "description2", "firstOccurrence", "lastOccurrence".
- The Parameters FareAmount and FareCurrency at FareComponentDesc level have been changed to optional.
- The Operating Carrier Code has been changed from required to optional.
API Information
What's New
- Flight type (A: Air Segment, K: ARUNK, O: Open Segment) has been changed from required to optional.
- Deleted Passenger Type Code. NOTE: The below optional parameter is no longer available for our customers: PassengerType/@Code - more information available in SAN 15673 from 10th SEP 2019.
- The Revalidate Itinerary API GIR Response has been enhanced with the new parameters and other changes listed below:
- ElapsedTime attribute has been added at the ScheduleDesc and LegDesc levels.
- The MandatoryInd indicates mandatory Offer Items that cannot be removed from the Offer. Added at the Fare and Passenger Information levels.
- New attribute LastTicketTime added at FareType level.
- Ancillaries Baggage information - For carriers migrated to new ATPCO baggage processing, new ancillaryTypeCode value "C" will occur, along with new optional elements: "subgroup", "description1", "description2", "firstOccurrence", "lastOccurrence".
- The Parameters FareAmount and FareCurrency at FareComponentDesc level have been changed to optional.
- The Operating Carrier Code has been changed from required to optional.
Business Value
- Each of these enhancements enable greater personalization and efficiency to further refine the search.
New Features
In the Response
Optional
- Parameter: elapsedTime
-
Type: integer
Description: This information allows customers to display travel time for NDC Offers.
Sample Value:
"legDescs": [
{
"id": 1,
"elapsedTime": 395,
"schedules": [
{
"ref": 4
}
]
}Note: The elapsedTime at legDescs level. This parameter is available on both, NDC and ATPCO path.
In the Response
Optional
- Parameter: elapsedTime
-
Type: integer
Description: This information allows customers to display travel time for NDC Offers.
Sample Value:
"scheduleDescs": [
{
"id": 1,
"stopCount": 0,
"eTicketable": true,
"elapsedTime": 390,
"departure": {
"airport": "SIN",
"time": "08:05:00 08:00",
"terminal": "3"Note: The elapsedTime at the scheduleDescs level. This parameter is available on both NDC and ATPCO paths.
In the Response
Optional
- Parameter: mandatoryInd
-
Type: boolean
Description: If set to 'true', indicates mandatory Offer Items that cannot be removed from the Offer. Mandatory Offer Items transition into Order Items. If not present or 'false', the Offer item is optional.
Sample Value:
"fare": {
"offerItemId": "cg5fd74bdf9fwtwjsk6kloyuh0-1-1",
"mandatoryInd": true,
"serviceId": "cg5fd74bdf9fwtwjsk6kloyuh0-1-1-1",
"validatingCarrierCode": "SQ",
"vita": true,
"eTicketable": true,
"governingCarriers": "SQ",
"passengerInfoList": [
{
"passengerInfo": {Note: Mandatory indicator at the Fare level. Applicable for ATPCO and NDC content.
In the Response
Optional
- Parameter: mandatoryInd
-
Type: boolean
Description: If set to 'true', indicates mandatory Offer Items that cannot be removed from the Offer. Mandatory Offer Items transition into Order Items. If not present or 'false', the Offer item is optional.
Sample Value:
{
"passengerInfo": {
"offerItemId": "cg5fd74bdf9fwtwjsk6kloyuh0-7-1",
"mandatoryInd": true,
"serviceId": "cg5fd74bdf9fwtwjsk6kloyuh0-7-1-1",
"passengerType": "ADT",
"passengerNumber": 1,
"fareComponents": [
{Note: Mandatory indicator at the Passenger Information level. Applicable for ATPCO and NDC content.
In the Response
Optional
- Parameter: lastTicketTime
-
Type: string
Description: New attribute added at the Fare level.
Sample Value:
"pricingInformation": [
{
"pricingSubsource": "MIP",
"fare": {
"validatingCarrierCode": "LO",
"vita": true,
"eTicketable": true,
"lastTicketDate": "2020-02-15",
"lastTicketTime": "10:28",
"governingCarriers": "LO",
"passengerInfoList": [
{Note: Pattern: HH_MM
In the Response
Optional
- Parameter: subgroup
-
Type: string
Description: Two-letter ancillary subgroup code from ATPCO filing. This is applicable only to non-standard bags, such as SP - Sporting Equipment.
Sample Value:
"ancillaryFeeGroup": {
"ancillaryFees": [
{
"code": "BG",
"name": "BAGGAGE",
"details": [
{
"code": "ADT",
"description": "PREPAID BAGGAGE 23KG",
"origin": "SVO",
"destination": "LHR",
"carrier": "SU",
"amount": 40,
"departureDate": "2020-03-20",
"startSegment": 1,
"endSegment": 1,
"ancillaryTypeCode": "C",
"subcode": "0C3",
"description1": "UP TO 50 POUNDS/23 KILOGRAMS",
"description2": "UP TO 80 LINEAR INCHES/203 LINEAR CM",
"firstOccurrence": 1,
"lastOccurrence": 2
},Note: For standard baggage, this attribute will never be returned.
In the Response
Optional
- Parameter: description1 description2
-
Type: string
Description: Ancillary Fee description lines from ATPCO filing.
Sample Value:
"ancillaryFeeGroup": {
"ancillaryFees": [
{
"code": "BG",
"name": "BAGGAGE",
"details": [
{
"code": "ADT",
"description": "PREPAID BAGGAGE 23KG",
"origin": "SVO",
"destination": "LHR",
"carrier": "SU",
"amount": 40,
"departureDate": "2020-03-20",
"startSegment": 1,
"endSegment": 1,
"ancillaryTypeCode": "C",
"subcode": "0C3",
"description1": "UP TO 50 POUNDS/23 KILOGRAMS",
"description2": "UP TO 80 LINEAR INCHES/203 LINEAR CM",
"firstOccurrence": 1,
"lastOccurrence": 2
},Note: Returned only for new ATPCO processing of baggage charges.
In the Response
Optional
- Parameter: firstOccurrence
-
Type: string
Description: Ancillary Baggage Information. First occurrence for which the baggage charge applies.
Sample Value:
"ancillaryFeeGroup": {
"ancillaryFees": [
{
"code": "BG",
"name": "BAGGAGE",
"details": [
{
"code": "ADT",
"description": "PREPAID BAGGAGE 23KG",
"origin": "SVO",
"destination": "LHR",
"carrier": "SU",
"amount": 40,
"departureDate": "2020-03-20",
"startSegment": 1,
"endSegment": 1,
"ancillaryTypeCode": "C",
"subcode": "0C3",
"description1": "UP TO 50 POUNDS/23 KILOGRAMS",
"description2": "UP TO 80 LINEAR INCHES/203 LINEAR CM",
"firstOccurrence": 1,
"lastOccurrence": 2
},Note: Returned only for new ATPCO processing of baggage charges.
In the Response
Optional
- Parameter: lastOccurrence
-
Type: string
Description: Ancillary Baggage Information. Last occurrence for which the baggage charge applies. If last occurrence is not returned, baggage option has no limit of pieces that can be sold.
Sample Value:
"ancillaryFeeGroup": {
"ancillaryFees": [
{
"code": "BG",
"name": "BAGGAGE",
"details": [
{
"code": "ADT",
"description": "PREPAID BAGGAGE 23KG",
"origin": "SVO",
"destination": "LHR",
"carrier": "SU",
"amount": 40,
"departureDate": "2020-03-20",
"startSegment": 1,
"endSegment": 1,
"ancillaryTypeCode": "C",
"subcode": "0C3",
"description1": "UP TO 50 POUNDS/23 KILOGRAMS",
"description2": "UP TO 80 LINEAR INCHES/203 LINEAR CM",
"firstOccurrence": 1,
"lastOccurrence": 2
},Note: Returned only for new ATPCO processing of baggage charges.
Functional Updates And Enhancements
In the Request
Optional
- Parameter: Type
-
Type: string
Description: Flight type (A: Air Segment, K: ARUNK, O: Open Segment)
Sample Value:
"Flight": [
{
"ClassOfService": "S",
"Number": 705,
"DepartureDateTime": "2018-04-15T23:55:00",
"ArrivalDateTime": "2018-04-16T08:35:00",
"Type": "A",
"Flown": false,
"OriginLocation": {
"LocationCode": "MAD"
},
"DestinationLocation": {
"LocationCode": "SCL"Note: This is an existing parameter but it has been changed from restricted to optional, and it's default value is equal to A - Air Segment. It belongs to the OriginDestinationFlightAttributeGroup.
In the Response
Optional
- Parameter: Operating
-
Type: CarrierCode
Description: Operating airline code.
Sample Value:
"carrier": {
"marketing": "HA",
"marketingFlightNumber": 452,
"operating": "HA",
"operatingFlightNumber": 452,
"equipment": {
"code": "332",
"typeForFirstLeg": "W",
"typeForLastLeg": "W"
}
}Note: Parameter already present in the schema, changed from required to optional. For the NDC offers, the operating carrier value is optional and very often might not appear in the response.
In the Response
Optional
- Parameter: fareAmount
-
Type: decimal
Description: An existing Fare Component parameter is now optional.
Sample Value:
"fareComponentDescs": [
{
"id": 2,
"governingCarrier": "SQ",
"fareAmount": 509.00,
"fareCurrency": "USD",
"fareBasisCode": "N15USOBA",
"farePassengerType": "ADT",
"publishedFareAmount": 509.00,
"oneWayFare": true,
"directionality": "FROM",
"direction": "PA",
"notValidBefore": "2020-02-28",
"notValidAfter": "2020-02-28",
"applicablePricingCategories": "3 4 5 6 7 8 9 10 12 15 16 18 23",
"vendorCode": "ATP",
"fareTypeBitmap": "00",
"fareType": "XOX",
"fareTariff": "3",
"fareRule": "UW11",
"segments": [
{Note: Changed from required to optional.
In the Response
Optional
- Parameter: fareCurrency
-
Type: mixed
Description: An existing Fare Component parameter is now optional.
Sample Value:
"fareComponentDescs": [
{
"id": 2,
"governingCarrier": "SQ",
"fareAmount": 509.00,
"fareCurrency": "USD",
"fareBasisCode": "N15USOBA",
"farePassengerType": "ADT",
"publishedFareAmount": 509.00,
"oneWayFare": true,
"directionality": "FROM",
"direction": "PA",
"notValidBefore": "2020-02-28",
"notValidAfter": "2020-02-28",
"applicablePricingCategories": "3 4 5 6 7 8 9 10 12 15 16 18 23",
"vendorCode": "ATP",
"fareTypeBitmap": "00",
"fareType": "XOX",
"fareTariff": "3",
"fareRule": "UW11",
"segments": [
{Note: Changed from required to optional.
v 5.4.0 | December 30, 2019
- The Revalidate Itinerary API Request is now enhanced with the following new features:
- New REST JSON API response format - Grouped Itinerary Response (GIR). Note: OTA JSON Response type is no longer available with the new version.
- Branded Fare Attributes - request associated 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 - allow alternate airports to be in other country than the main city-pair when mileage is used.
- Shop by Fare Basis Code – exclude a fare option based on Fare Basis Code.
- Shop by Class of Service – exclude a fare option based on Class of Service (Reservation Booking Designator).
- Shop with Parity Mode – allows to control the brand parity mode for the lowest fare returned.
- Enhanced Multi-Ticket – allows to specify the requested number of One-Way solutions in Multi-Ticket processing.
- Multiple Branded Fares at Multiple Fares Per Itinerary level - the existing parameters related to Multiple Brands are now also applicable for Multiple Fares Per Itinerary.
- The Revalidate Itinerary API GIR Response has been enhanced with the following new parameters:
- Ancillary, Fare type descriptors - new Fare type descriptors in Revalidate Itinerary GIR Response. 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.
- 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. Available for AMC users only.
API Information
What's New
- The Revalidate Itinerary API Request is now enhanced with the following new features:
- New REST JSON API response format - Grouped Itinerary Response (GIR). Note: OTA JSON Response type is no longer available with the new version.
- Branded Fare Attributes - request associated 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 - allow alternate airports to be in other country than the main city-pair when mileage is used.
- Shop by Fare Basis Code – exclude a fare option based on Fare Basis Code.
- Shop by Class of Service – exclude a fare option based on Class of Service (Reservation Booking Designator).
- Shop with Parity Mode – allows to control the brand parity mode for the lowest fare returned.
- Enhanced Multi-Ticket – allows to specify the requested number of One-Way solutions in Multi-Ticket processing.
- Multiple Branded Fares at Multiple Fares Per Itinerary level - the existing parameters related to Multiple Brands are now also applicable for Multiple Fares Per Itinerary.
- The Revalidate Itinerary API GIR Response has been enhanced with the following new parameters:
- Ancillary, Fare type descriptors - new Fare type descriptors in Revalidate Itinerary GIR Response. 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.
- 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. Available for AMC users only.
Business Value
- Each of these enhancements enable greater personalization and efficiency to further refine the search and response structure.
New Features
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 Revalidate Itinerary schema version 5.4.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 Revalidate Itinerary schema version 5.4.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 Revalidate Itinerary schema version 5.4.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 Revalidate Itinerary schema version 5.4.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 AlternateAirportMileage 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": {
"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: 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"
}
}
}
}
}Note: Brand attributes is a feature within the Branded fares capabilities and will be returned with single and multiple branded fares request.
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 Revalidate Itinerary 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 Revalidate Itinerary 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 Revalidate Itinerary 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 Revalidate Itinerary 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 Revalidate Itinerary 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 Revalidate Itinerary 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 Revalidate Itinerary 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 Revalidate Itinerary 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 Request
Optional
- Parameter: BrandedFareIndicators
-
Type: boolean
Description: Return multiple brand options per itinerary.
Sample Value:
"FlexibleFares": {
"FareParameters": [
{
"Cabin": {
"Type": "Y"
},
"BrandedFareIndicators": {
"MultipleBrandedFares": true,
"UpsellLimit": 2,
"ItinParityBrandlessLeg": true,
"ParityMode": "Leg",
"ItinParityFallbackMode": "LowestSingle"
}
},Note: Set of branded fare switches and preferences for whole flexible fare.
In the Request
Optional
- Parameter: UpsellLimit
-
Type: integer
Description: Indicates maximum number of requested branded upsells.
Sample Value:
"FlexibleFares": {
"FareParameters": [
{
"Cabin": {
"Type": "Y"
},
"BrandedFareIndicators": {
"MultipleBrandedFares": true,
"UpsellLimit": 2,
"ItinParityBrandlessLeg": true,
"ParityMode": "Leg",
"ItinParityFallbackMode": "LowestSingle"
}
},Note: Parameter to limit the number of upsell solutions to be returned.
In the Request
Optional
- Parameter: ItinParityBrandlessLeg
-
Type: boolean
Description: Parameter to allow for brand-less leg solutions when itinerary parity is requested.
Sample Value:
"FlexibleFares": {
"FareParameters": [
{
"Cabin": {
"Type": "Y"
},
"BrandedFareIndicators": {
"MultipleBrandedFares": true,
"UpsellLimit": 2,
"ItinParityBrandlessLeg": true,
"ParityMode": "Leg",
"ItinParityFallbackMode": "LowestSingle"
}
},Note: Allow brand-less legs in multiple brands upsell solutions.
In the Request
Optional
- Parameter: ParityMode
-
Type: string
Description: Multiple Branded Fares parity mode.
Sample Value:
"FlexibleFares": {
"FareParameters": [
{
"Cabin": {
"Type": "Y"
},
"BrandedFareIndicators": {
"MultipleBrandedFares": true,
"UpsellLimit": 2,
"ItinParityBrandlessLeg": true,
"ParityMode": "Leg",
"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: Fallback mode for Multiple Branded Fares with itin parity, when no itin parity solutions found.
Sample Value:
"FlexibleFares": {
"FareParameters": [
{
"Cabin": {
"Type": "Y"
},
"BrandedFareIndicators": {
"MultipleBrandedFares": true,
"UpsellLimit": 2,
"ItinParityBrandlessLeg": true,
"ParityMode": "Leg",
"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 Response
Optional
- Parameter: FareType
-
Type: string
Description: New Fare type descriptors in Revalidate Itinerary. 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: New Fare type descriptors in Revalidate Itinerary. 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.
In the Response
Optional
- Parameter: FareTariff
-
Type: string
Description: New Fare type descriptors in Revalidate Itinerary. 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: New Fare type descriptors in Revalidate Itinerary. 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.
In the Response
Optional
- Parameter: FareRule
-
Type: string
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: New Fare type descriptors in Revalidate Itinerary. 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.
In the Response
Optional
- Parameter: FareTypeBitmap
-
Type: string
Description: New Fare type descriptors in Revalidate Itinerary. 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).
In the Response
Optional
- Parameter: CreditCardFeeAmount
-
Type: decimal
Description: The Creditcard Fee returned with LCC options, added at TotalFare level.
Sample Value:
],
"totalFare": {
"totalPrice": 10,
"totalTaxAmount": 17,
"currency": "USD",
"baseFareAmount": 11,
"baseFareCurrency": "USD",
"constructionAmount": 12,
"constructionCurrency": "USD",
"equivalentAmount": 14,
"equivalentCurrency": "USD",
"airExtrasAmount": 15,
"totalPriceWithAirExtras": 25,
"creditCardFeeAmount": 10,
"bookingFeeAmount": 25
}Note: Returned only if non-zero value.
In the Response
Optional
- Parameter: BookingFeeAmount
-
Type: decimal
Description: The Booking Fee returned with LCC options, added at TotalFare level.
Sample Value:
],
"totalFare": {
"totalPrice": 10,
"totalTaxAmount": 17,
"currency": "USD",
"baseFareAmount": 11,
"baseFareCurrency": "USD",
"constructionAmount": 12,
"constructionCurrency": "USD",
"equivalentAmount": 14,
"equivalentCurrency": "USD",
"airExtrasAmount": 15,
"totalPriceWithAirExtras": 25,
"creditCardFeeAmount": 10,
"bookingFeeAmount": 25
}Note: Returned only if non-zero value.
In the Response
Optional
- Parameter: SourcePCC
-
Type: PseudoCityCodeType
Description: The PCC of the contract processed for Agency Managed Commission which is added for audit/tracking purposes.
Sample Value:
},
"validatingCarrierCommissionInfo": [
{
"validatingCarrier": "BA",
"commissionAmount": 9.45,
"earnedCommissionAmount": 9.45,
"commissionContractQualifier": "MT9FIXALLOW",
"sourcePcc": "A1D0",
"fareComponentBreakdowns": [
{Note: Source PseudoCityCode. Applicable for AMC subscribers only.
Functional Updates And Enhancements
In the Response
Optional
- Parameter: Type
-
Type: string
Description: Flight type (A: Air Segment, K: ARUNK, O: Open Segment)
Sample Value:
"Flight": [
{
"ClassOfService": "S",
"Number": 705,
"DepartureDateTime": "2018-04-15T23:55:00",
"ArrivalDateTime": "2018-04-16T08:35:00",
"Type": "A",
"Flown": false,
"OriginLocation": {
"LocationCode": "MAD"
},
"DestinationLocation": {
"LocationCode": "SCL"Note: This is an existing parameter but it has been changed from restricted to optional, and it's default value is equal to A - Air Segment. It belongs to the OriginDestinationFlightAttributeGroup.
v4.3.0 | September 20, 2018
- Revalidate Itinerary 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
What's New
- Revalidate Itinerary 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: 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).
v4.2.0 | June 27, 2018
- Revalidate Itinerary has been enhanced with the following new optional search parameters:
- 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).
- Additionally, the following information will be returned in the Revalidate Itinerary response:
- Forced Stopover Indicator – New indicator at the segment level to denote stopover point.
- Revalidate Itinerary – Renamed element from "repriced" to "revalidated".
API Information
What's New
- Revalidate Itinerary has been enhanced with the following new optional search parameters:
- 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).
- Additionally, the following information will be returned in the Revalidate Itinerary 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: 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 Response
Optional
- Parameter: RequestedStopover Ind
-
Type: Boolean
Description: Indicator to identify which segment is the one departing from the stopover point in the Revalidate Itinerary 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.
v4.1.0 | March 27, 2018
- Revalidate Itinerary has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
- Return only options with at least one free bag.
- Exclude codeshare flights.
- Also, the following information will be returned in the response:
- More details in the Selling Fare Data applicable to Agency Retailer.
- Extended Ancillary Fee Groups with ancillary subcode(s), type(s) and hints for up to 10 standard bags.
API Information
What's New
- Revalidate Itinerary has been enhanced to enable more flexibility within the request and return additional information in the response as follows:
- Return only options with at least one free bag.
- Exclude codeshare flights.
- Also, the following information will be returned in the response:
- More details in the Selling Fare Data applicable to Agency Retailer.
- Extended Ancillary Fee Groups with ancillary subcode(s), type(s) and hints for up to 10 standard bags.
Business Value
- These enhancements drive greater transparency for baggage allowance and charges 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 whether only fare options that include a bag in the fare filed should 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: CodeShareIndicator
-
Type: CodeShareIndicator
Description: Ability to filter out codeshare flights. This new option is available with two attributes: “ExcludeCodeshare” removes codeshare flights. The same Marketing/Operating (base flights), can be combined with “KeepOnlines” to also return the online flights that are codeshare, for more diversity.
Sample Value:
{
"TravelPreferences": {
"TPA_Extensions": {
"CodeShareIndicator": {
"ExcludeCodeshare": "true",
"KeepOnlines": "false"
}
}
}
}
In the Response
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 Mark ups 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: AncillaryTypeCode that corresponds to a type of ancillary, type F or P (treated as F) and is 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": "K0",
"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": "K0",
"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": "K0",
"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": "K0",
"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
}
]
}
}
}
v3.3.0 | September 28, 2017
- Ability to recheck availability and price for a specific itinerary option without booking the itinerary, so the up-to-date content can be presented.
- A wide range of user-specified criteria can be applied. For the complete list, please consult the request and response design documentation.
API Information
What's New
- Ability to recheck availability and price for a specific itinerary option without booking the itinerary, so the up-to-date content can be presented.
- A wide range of user-specified criteria can be applied. For the complete list, please consult the request and response design documentation.
New Features
In the Response
Optional
- Parameter: Repriced
-
Type: Boolean
Description: Indicator that allows to identify the fares that were returned from the price and availability revalidation functionality.
Sample Value:
"AirItineraryPricingInfo": [ { "LastTicketDate": "2017-05-17", "PricingSource": "WPNI1_ITIN", "PricingSubSource": "MIP", "FareReturned": true, "Repriced": true, "ItinTotalFare": { "BaseFare": { "Amount": 990.7, "CurrencyCode": "USD", "DecimalPlaces": 2 }, "FareConstruction": { "Amount": 990.7, "CurrencyCode": "USD", "DecimalPlaces": 2 }, "EquivFare": { "Amount": 990.7, "CurrencyCode": "USD", "DecimalPlaces": 2 }
Note: When the @Repriced parameter is included with the "true” value in the response, this means that the system re-priced the given itinerary with the specified flight schedule, RBD, date, and city pair.