swagger: '2.0' info: title: DCCI API Timatic description: |- Allows Airlines and other travel-related organizations to access the Timatic AutoCheck database. version: 25.08.04 host: api.cert.platform.sabre.com basePath: / schemes: - https paths: /v2/dcci/timatic/add: post: description: This service is used to add Timatic AutoCheck details, such as type of passenger document(s), travel purpose, etc. tags: - Timatic operationId: post.v2.dcci.timatic.add consumes: - application/json produces: - application/json parameters: - name: body in: body required: true schema: $ref: '#/definitions/jtim.TimaticAddRequest' - $ref: '#/parameters/jd.jipcc' - $ref: '#/parameters/jd.SessionID' - $ref: '#/parameters/bus.Authorization' - $ref: '#/parameters/bus.ApplicationID' - $ref: '#/parameters/bus.ConversationID' - $ref: '#/parameters/bus.MessageID' responses: '200': description: Successful response. schema: $ref: '#/definitions/jtim.TimaticAddResponse' headers: Conversation-ID: type: string description: The ID of a set of related messages that make up a conversation. Message-ID: type: string description: The ID of the message. It should be globally unique. Session-ID: type: string description: The ID of a stateful process. Generated and returned by DCCI once a stateful process is entered. default: $ref: '#/responses/bus.ErrorResponse' /v2/dcci/timatic/override: post: description: This service is used to override Timatic AutoCheck verification results. tags: - Timatic operationId: post.v2.dcci.timatic.override consumes: - application/json produces: - application/json parameters: - name: body in: body required: true schema: $ref: '#/definitions/jtim.TimaticOverrideRequest' - $ref: '#/parameters/jd.jipcc' - $ref: '#/parameters/jd.SessionID' - $ref: '#/parameters/bus.Authorization' - $ref: '#/parameters/bus.ApplicationID' - $ref: '#/parameters/bus.ConversationID' - $ref: '#/parameters/bus.MessageID' responses: '200': description: Successful response. schema: $ref: '#/definitions/jtim.TimaticOverrideResponse' headers: Conversation-ID: type: string description: The ID of a set of related messages that make up a conversation. Message-ID: type: string description: The ID of the message. It should be globally unique. Session-ID: type: string description: The ID of a stateful process. Generated and returned by DCCI once a stateful process is entered. default: $ref: '#/responses/bus.ErrorResponse' /v2/dcci/timatic/verify: post: description: This service is used to trigger on-demand Timatic AutoCheck verification, for which information regarding the verification results can be returned. Based on these results, the customer can determine whether a passenger should be checked in. tags: - Timatic operationId: post.v2.dcci.timatic.verify consumes: - application/json produces: - application/json parameters: - name: body in: body required: true schema: $ref: '#/definitions/jtim.TimaticVerifyRequest' - $ref: '#/parameters/jd.jipcc' - $ref: '#/parameters/jd.SessionID' - $ref: '#/parameters/bus.Authorization' - $ref: '#/parameters/bus.ApplicationID' - $ref: '#/parameters/bus.ConversationID' - $ref: '#/parameters/bus.MessageID' responses: '200': description: Successful response. schema: $ref: '#/definitions/jtim.TimaticVerifyResponse' headers: Conversation-ID: type: string description: The ID of a set of related messages that make up a conversation. Message-ID: type: string description: The ID of the message. It should be globally unique. Session-ID: type: string description: The ID of a stateful process. Generated and returned by DCCI once a stateful process is entered. default: $ref: '#/responses/bus.ErrorResponse' definitions: anc.Ancillaries: type: object description: Used to group ancillaries. required: - ancillary properties: ancillary: type: array description: |- Additional service that can be sold to a passenger for a specific portion of travel, or a service that is completely unrelated to a particular itinerary. Other names used in the industry for this entity are Optional Service defined by ATPCO or Travel Extra defined by MTS. For additional details, refer to the DATA APPLICATION OPTIONAL SERVICES - SUB CODE SERVICES RECORD S5 document published by ATPCO. items: $ref: '#/definitions/anc.Ancillary' anc.Ancillary: type: object description: Defines an additional service which may be sold to a passenger either for a specific portion of travel or unrelated to a particular itinerary. Other names used in the industry for this entity are Optional Service defined by ATPCO or Travel Extra defined by MTS. Please refer to DATA APPLICATION OPTIONAL SERVICES - SUB CODE SERVICES RECORD S5 document published by ATPCO for more details. required: - airline - commercialName - group - reasonForIssuance - subCode properties: airline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Marketing airline code. example: K0 ancillaryRules: description: Rules defined for an ancillary, such as refundability, form of payment, etc. $ref: '#/definitions/anc.AncillaryRules' bagType: minLength: 1 maxLength: 128 type: string description: Non-standard baggage type. example: BIKE bookingMethod: description: Method by which the sub code must be booked. $ref: '#/definitions/anc.BookingMethod' bundledAncillaryRefs: type: array description: Array of IDs of anc.Ancillary elements. Ancillary elements included in the bundle. Populated only when the ancillary represents a bundle of other ancillaries. items: type: string example: - id01 - id02 commercialName: maxLength: 30 type: string description: Commercial name associated to the ancillary sub code. example: UPTO50LB 23KG AND85LI 215LCM displayOnly: type: boolean description: Ancillary can be displayed, but not booked or purchased. electronicMiscDocType: description: Type of Electronic Miscellaneous Document (EMD) or other document that must be issued for the sub code. $ref: '#/definitions/anc.ElectronicMiscDocType' group: minLength: 1 maxLength: 3 type: string description: Group of services. Ancillaries are organized into groups established by ATPCO as the industry standard. example: BG id: type: string description: Id attribute. reasonForIssuance: description: IATA-defined Reason for Issuance Code (RFIC) applicable to the Electronic Miscellaneous Document (EMD) issued for the sub code identified in this record. $ref: '#/definitions/anc.ReasonForIssuance' serviceType: description: Code that identifies and describes an ancillary type. $ref: '#/definitions/anc.ServiceType' specialService: description: IATA-defined Special Service Request (SSR) code applicable to the sub code. $ref: '#/definitions/anc.SpecialService' ssimCode: minLength: 1 type: string description: This field specifies the Standard Schedules Information Manual (SSIM) code. subCode: minLength: 3 maxLength: 4 type: string description: The Sub Code is either an industry-defined or carrier-defined code identifying a specific type of service. Industry-defined codes are available for all carriers (or vendors) to use and have standard definition. Carrier-defined codes are available for a specific carrier (or vendor) only and are defined by that carrier (or vendor). All industry-defined Sub Codes are maintained by ATPCO. Carrier-defined Sub Codes are maintained by each carrier (or vendor) utilizing the code. If the content comes from MTS this code is the SSR code associated to the service. vendor: minLength: 1 maxLength: 128 type: string description: Vendor providing a special service, if applicable. example: MMGR weight: type: array description: Baggage weight. items: $ref: '#/definitions/sec.Weight' sequenceNumber: format: int32 type: integer anc.AncillaryFee: type: object description: A single pricing option for an ancillary. An ancillary may have multiple pricing depending on the passenger type, loyalty, rules. required: - base properties: base: description: Base amount of the ancillary fee that can also include taxes if taxesIncludedInBase is set to 'true'. Mandatory for non-exchange shopping requests. $ref: '#/definitions/sec.PriceElement' deal: type: array description: Applicable discounts. items: $ref: '#/definitions/sec.Deal' tax: type: array description: Deprecated property. This property has been deprecated and will be removed in future releases. Use 'totalFee.tax' instead. This property was used to list the price or price component which supported both monetary and/or frequent flyer type of amounts. There had to be only a single element for each tax type/code. items: $ref: '#/definitions/sec.PriceElement' taxExempt: type: boolean description: Flag indicating that the ancillary is free-from and not subject to taxation by regulators or government entities. taxesIncludedInBase: type: boolean description: If true, taxes are included in the base price of an ancillary. This also determines whether a tax breakdown is returned. totalFee: type: array description: Total ancillary fee, which could vary depending on the calculation rules defined in the configuration. items: $ref: '#/definitions/anc.TotalFee' unavailable: type: boolean description: Flag indicating whether a service exists, but is unavailable. anc.AncillaryPurchaseRules: type: object description: Ancillary purchase rules and availability details. properties: availableSince: format: date type: string description: First day of travel from the itinerary for which this ancillary is available. availableUntil: format: date type: string description: Last day of travel from the itinerary for which this ancillary is available. purchaseByDate: format: date type: string description: Latest date for which this ancillary must be paid. anc.AncillaryRules: type: object description: Rules defined for an ancillary fee. It defines properties like refundability, form of payment etc. properties: commissionable: type: boolean description: Commission can be applied to an ancillary fee. customRules: description: Custom rules that are not defined by ATPCO. $ref: '#/definitions/anc.CustomRules' exchangeable: type: boolean description: Flag indicating whether an ancillary can be exchanged for another product; however, it is not refundable. feeApplicationMethod: description: Code indicating whether a service fee applies to a one-way or round-trip item, travel, or ticket. $ref: '#/definitions/anc.FeeApplicationMethod' formOfRefund: description: Form of refund of any applicable baggage fee. $ref: '#/definitions/anc.FormOfRefund' freeAllowanceEligibility: description: If present, it indicates that an ancillary can substitute items in free allowance bucket. $ref: '#/definitions/anc.FreeAllowanceEligibility' freeOfChargeRules: type: array description: Rules defined regarding bookings and EMDs for free-of-charge services/ancillaries. In addition, they can possibly correspond to the Not Available/No Charge field on the S5 record specification defined by ATPCO, if applicable. items: $ref: '#/definitions/anc.EnumFreeOfChargeRules' interlineable: type: boolean description: Fee is applicable to interline itineraries. inventoryControlled: type: boolean description: Flag indicating that there is a limited number of ancillary items that can be purchased for a segment(s). paperTicketRequired: type: boolean description: Flag indicating whether a paper ticket is required. purchaseAtTicketIssue: type: boolean description: True mean an ancillary has to be purchased at ticket issue time, no earlier or later. purchaseBy: format: date type: string description: Latest date an ancillary can be purchased. refundable: type: boolean description: Flag indicating whether an ancillary is refundable. See also FormOfRefund. tourCode: pattern: ^([a-zA-Z0-9]{1,15})$ minLength: 1 maxLength: 15 type: string description: The Tour Code for the ticket on which the ancillary applies. example: AND12M anc.BookingMethod: type: object description: Specifies how and if the Sub Code must be booked. properties: code: minLength: 2 maxLength: 2 type: string description: Industry standard code. example: '12' value: $ref: '#/definitions/anc.EnumAncillaryBookingMethod' anc.CustomRules: type: object properties: applyHighestTierLevel: type: boolean description: If set, tier benefits of the passenger with the highest tier apply to all passengers in the PNR; otherwise, tier benefits of the tiered passenger apply only to this passenger. convertible: type: boolean description: Flag indicating whether a monetary amount can be converted to points or miles. excludedFormOfPayment: type: array description: |- Form(s) of payment that can be found on the list of excluded payment forms for an ancillary. The following values are supported: AX - American Express AM - American Mobile BL - Bill Me Later BT - Travel Bank IK - Mastercard CA - Mastercard DC - Diner's Club DS - Discover PP - PayPal TP - Universal Air Travel Program BA - Visa VI - Visa VE - Visa Electron JB - Japan Credit Bureau FA - Era Alaska AF - First Air BPC - Banking Production Centre SV - External Gateway Card PO - POLi 3rd party payment VN - SmartLink 3rd party payment SML_PAY_LATER - SmartLink 3rd party payment SID - SID payment EFT - EFT payment GC - Gift Card. items: type: string example: - AX maxQuantityPerPassenger: format: int32 type: integer description: Maximum number of ancillaries that can be purchased by each passenger. anc.ElectronicMiscDocType: type: object description: Identifies the type of Electronic Miscellaneous Document (EMD) or other document that must be issued for the Sub Code. properties: code: minLength: 1 maxLength: 1 type: string description: Industry standard code. example: '1' consumedAtIssuance: type: boolean description: It is used to advise ticketing if the EMD should be issued in USED status or OK/open status. EMD-A (flight associated) are always issued in OK/open status but EMD-S (standalone) can be issued in either status. For example, when collecting a deposit on an EMD-S the document would be issued in OK status so that it can be exchanged or refunded later. While collecting a penalty fee would be issued in USED status because the penalty is collected and is immediately going to revenue and will not be refunded. value: $ref: '#/definitions/anc.EnumElectronicMiscDocType' anc.EnumAncillaryBookingMethod: type: string description: |- It corresponds to Booking field described in S5 record defined by ATPCO. SPECIAL_SERVICE_REQUEST - Maps to value 01 of Booking field in S5 record specification. The service identified by the Sub Code in this record must be booked via SSR messaging. AUXILIARY_SEGMENT - Maps to value 02 of Booking field in S5 record specification. Auxiliary Segment. The service identified by the Sub Code in this record may be booked via an auxiliary segment. CONTACT_AIRLINE - Maps to value 03 of Booking field in S5 record specification. Available for Display and/or Pricing. Contact Carrier for booking method. The service identified by the Sub Code is available for display and/or pricing. The carrier must be contacted for the applicable booking details. NO_BOOKING_REQUIRED - Maps to value 04 of Booking field in S5 record specification. No Booking Required. The service identified by the Sub Code is available for display and/or pricing. There is no booking required for the specified service. PER_SERVICE_RECORD - Maps to value 05 of Booking field in S5 record specification. Apply Booking Method per Service Record. The service identified by the Sub Code is a bundled service. ANY_ALLOWED - Maps to value blank of booking field in S5 record specification. Any booking method is allowed. enum: - SPECIAL_SERVICE_REQUEST - AUXILIARY_SEGMENT - CONTACT_AIRLINE - NO_BOOKING_REQUIRED - PER_SERVICE_RECORD - ANY_ALLOWED anc.EnumAncillaryFeeApplicationMethod: type: string description: |- It corresponds to Fee Application field described in S7 record defined by ATPCO. ONE_WAY - Maps to value 1 of Fee Application field in S7 record specification. Per One Way (per fare component). ROUND_TRIP - Maps to value 2 of Fee Application field in S7 record specification. Per Round Trip (1/2 the amount per fare component). ITEM - Maps to value 3 of Fee Application field in S7 record specification. Per Item (each time the service is used/requested). PER_CHECKED_PORTION - User-friendly alias for ITEM that applies to BG and PT groups. Maps to value 3 of Fee Application field in S7 record specification. Per Item (each time the service is used/requested). TRAVEL - Maps to value 4 of Fee Application field in S7 record specification. Per Travel. The fee amount is to be charged per matched travel. PER_BAGGAGE_TRAVEL - User-friendly alias for TRAVEL that applies to BG and PT groups. Maps to value 4 of Fee Application field in S7 record specification. Per Travel. The fee amount is to be charged per matched travel. TICKET - Maps to value 5 of Fee Application field in S7 record specification. Per Ticket. The fee amount is to be charged per ticket. PER_1KG_OVER_FREE_BAGGAGE_ALLOWANCE - PER_5KG_OVER_FREE_BAGGAGE_ALLOWANCE - HALF_PERCENT_OF_FARE_PER_KG - ONE_PERCENT_OF_FARE_PER_KG - ONE_AND_A_HALF_PERCENT_OF_FARE_PER_KG -. enum: - ONE_WAY - ROUND_TRIP - ITEM - PER_CHECKED_PORTION - TRAVEL - PER_BAGGAGE_TRAVEL - TICKET - PER_1KG_OVER_FREE_BAGGAGE_ALLOWANCE - PER_5KG_OVER_FREE_BAGGAGE_ALLOWANCE - HALF_PERCENT_OF_FARE_PER_KG - ONE_PERCENT_OF_FARE_PER_KG - ONE_AND_A_HALF_PERCENT_OF_FARE_PER_KG anc.EnumAncillaryFormOfRefund: type: string description: |- It corresponds to Form of Refund field described in S7 record defined by ATPCO. ORIGINAL - Maps to value 1 of Form of Refund field in S7 record specification. The fee is only refundable via the original form of payment. VOUCHER - Maps to value 2 of Form of Refund field in S7 record specification. The fee is only refundable via electronic voucher. enum: - ORIGINAL - VOUCHER anc.EnumAncillaryPricingLevel: type: string description: |- ITINERARY - Priced at the whole itinerary (journey) level. Used for standalone ancillaries. PORTION - Priced at the portion (a list of segments which can be either itinerary part or any continuous list of segments) level. SEGMENT - Priced at a single segment level. enum: - ITINERARY - PORTION - SEGMENT anc.EnumAncillaryReasonForIssuance: type: string description: |- IATA Reason for Issuance. This is to specify why an EMD or other miscellaneous document was issued. AIR_TRANSPORTATION - Maps to code A defined by IATA/ATPCO. Air transportation. GROUND_TRANSPORT_NON_AIR_SERVICES - Maps to code B defined by IATA/ATPCO. Surface Transportation /Non Air Services BAGGAGE - Maps to code C defined by IATA/ATPCO. Baggage. FINANCIAL_IMPACT - Maps to code D defined by IATA/ATPCO. Financial Impact. AIRPORT_SERVICES - Maps to code E defined by IATA/ATPCO. Airport Services. MERCHANDISE - Maps to code F defined by IATA/ATPCO. Merchandise. IN_FLIGHT_SERVICES - Maps to code G defined by IATA/ATPCO. In-flight Services. INDIVIDUAL_AIRLINE_USE - Maps to code I defined by IATA/ATPCO. Individual Airline Use. OTHER - Added to support new reasons not yet defined in the WS contract. UNKNOWN - The reason for issuance is unknown. enum: - AIR_TRANSPORTATION - GROUND_TRANSPORT_NON_AIR_SERVICES - BAGGAGE - FINANCIAL_IMPACT - AIRPORT_SERVICES - MERCHANDISE - IN_FLIGHT_SERVICES - INDIVIDUAL_AIRLINE_USE - OTHER - UNKNOWN anc.EnumConfirmationStatus: type: string description: |- CONFIRMED - Availability of the ancillary is confirmed. UNCONFIRMED - Availability of the ancillary is unconfirmed. WAIT_LIST - Waiting list if offered for the ancillary. UNKNOWN - Availability of the ancillary is unknown - most likely there was an error during confirmation process. enum: - CONFIRMED - UNCONFIRMED - WAIT_LIST - UNKNOWN anc.EnumDiscountCalculationRule: type: string description: |- Rules which describe how discounts are calculated in totals. WITH_DISCOUNTS - Discounts will be included in the calculated total values. WITHOUT_DISCOUNTS - Discounts will not be included in the calculated total values. enum: - WITH_DISCOUNTS - WITHOUT_DISCOUNTS anc.EnumElectronicMiscDocType: type: string description: |- Identifies the type of Electronic Miscellaneous Document (EMD) or other document that must be issued for the Sub Code STANDALONE - Maps to value 1 of EMD Type field in S5 record specification. Standalone. The EMD must be a standalone EMD (not issued in conjunction with a passenger ticket). FLIGHT_COUPON_ASSOCIATED - Maps to value 2 of EMD Type field in S5 record specification. Associated to a flight coupon of a ticket. STANDALONE_TICKET_ASSOCIATED - Maps to value 3 of EMD Type field in S5 record specification. Standalone referenced to a ticket number but not associated to a flight coupon of a ticket. OTHER_THAN_EMD - Maps to value 4 of EMD Type field in S5 record specification. Other than EMD. The subscriber must have received instructions from the Record S5 owning carrier regarding how to document the service. ETICKET - Maps to value 5 of EMD Type field in S5 record specification. Electronic Ticket. enum: - STANDALONE - FLIGHT_COUPON_ASSOCIATED - STANDALONE_TICKET_ASSOCIATED - OTHER_THAN_EMD - ETICKET anc.EnumFreeOfChargeRules: type: string description: |- It defines how free of charge ancillary should be booked and what documents are required. To some extend this corresponds to No Available / No Charge field of S5 record specification defined by ATPCO. BOOKING_REQUIRED - Booking is required for free of charge ancillary. EMD_REQUIRED - EMD is required for free of charge ancillary. enum: - BOOKING_REQUIRED - EMD_REQUIRED anc.EnumRedemptionCalculationRule: type: string description: |- Rules which describes how loyalty points and currency is split in totals. MAX_POINTS_USED - Maximum points used. MIN_POINTS_USED - Minimum points used. enum: - MAX_POINTS_USED - MIN_POINTS_USED anc.EnumServiceType: type: string description: |- FLIGHT_RELATED - Flight related - code F. CHARGES - Charges - code C. BAGGAGE_ALLOWANCE - Baggage allowance - code A. CARRY_ON_BAGGAGE_ALLOWANCE - Carry-on baggage allowance - code B. EMBARGOES - Embargoes - code E. PREPAID - Prepaid - code P. DISCLOSURE - Disclosure - code D. PREREGISTERED_BAGGAGE - Preregistered baggage - code PB. enum: - FLIGHT_RELATED - CHARGES - BAGGAGE_ALLOWANCE - CARRY_ON_BAGGAGE_ALLOWANCE - EMBARGOES - PREPAID - DISCLOSURE - PREREGISTERED_BAGGAGE anc.FeeApplicationMethod: type: object description: Specifies whether the Service Fee applies per one way, round trip, item, travel, ticket. properties: code: minLength: 1 maxLength: 1 type: string description: Industry standard code. example: '1' value: $ref: '#/definitions/anc.EnumAncillaryFeeApplicationMethod' anc.FormOfRefund: type: object description: Specifies the form of refund of any applicable fee. properties: code: minLength: 1 maxLength: 1 type: string description: Industry standard code. example: '1' value: $ref: '#/definitions/anc.EnumAncillaryFormOfRefund' anc.FreeAllowanceEligibility: type: object description: Presence of an element of this type indicates that an ancillary can substitute items in free allowance bucket. properties: quantity: format: int32 type: integer description: Number of baggage pieces that qualify as free of charge. If any baggage restrictions apply, they are specified in the BaggageRestriction structure. example: 25 anc.PricedAncillaries: type: object description: List of priced ancillaries that shows the connection between the ancillary definition and its fee. required: - pricedAncillary properties: conversionRules: description: Rules that have been configured to provide details that convert loyalty points/miles into a monetary amount. This element provides all required data to allow dynamic recalculation of the returned amounts into loyalty points based on user inputs. The calculation is based on the monetary amount/ratio. The result is adjusted to the designated scaling mode and rounded, if required. $ref: '#/definitions/sec.ConversionRules' id: type: string description: Id attribute. pricedAncillary: type: array description: Code identifying the connection between an ancillary and its pricing. items: $ref: '#/definitions/anc.PricedAncillary' anc.PricedAncillary: type: object description: Connects ancillary definition and its pricing details. required: - ancillaryFee - ancillaryRef - pricingLevel properties: ancillaryFee: description: Ancillary pricing option. An ancillary can have multiple pricing variations depending on the passenger type, loyalty, rules, etc. $ref: '#/definitions/anc.AncillaryFee' ancillaryPurchaseRules: $ref: '#/definitions/anc.AncillaryPurchaseRules' ancillaryRef: type: string description: ID of anc.Ancillary element. example: id01 confirmationStatus: description: Result of the confirmation process. There are ancillaries, such as booking class upgrades, whose availability depends on different factors. These factors can range from the fact that they are inventory controlled, available to frequent flyer members with higher status first, etc. $ref: '#/definitions/anc.EnumConfirmationStatus' id: type: string description: Id attribute. pricingLevel: description: Level at which an ancillary is priced. This value must be provided when an ancillary is booked in the reservation system. $ref: '#/definitions/anc.EnumAncillaryPricingLevel' offerItemId: type: string description: The OfferItemId as defined by NDC. It identifies the specific offer item in future processing. anc.ReasonForIssuance: type: object description: Specifies the IATA-defined Reason for Issuance Code (RFIC) applicable to the Electronic Miscellaneous Document (EMD) that will be issued for the Sub Code identified in this record. properties: code: pattern: ^([A-Z]{1})$ minLength: 1 maxLength: 1 type: string description: Industry standard code. example: G value: $ref: '#/definitions/anc.EnumAncillaryReasonForIssuance' anc.RequiredProperties: type: object description: List of property names. required: - propertyDefinition properties: propertyDefinition: type: array description: Name of a property that needs to be provided in order to book given ancillary. items: $ref: '#/definitions/sec.PropertyDefinition' anc.ServiceType: type: object properties: code: type: string description: Code of the associated service type defined by ATPCO (where applicable). value: $ref: '#/definitions/anc.EnumServiceType' anc.SpecialService: type: object description: Groups all fields related to the IATA-defined Special Service Request (SSR). required: - code properties: code: pattern: ^([A-Z0-9]{1,20})$ minLength: 1 maxLength: 20 type: string description: IATA-defined Special Service Request (SSR) code applicable to the sub code. example: BGDA requiredProperties: description: List of all properties that needs to be provided in order to book given ancillary. $ref: '#/definitions/anc.RequiredProperties' type: description: IATA-defined Special Service Request (SSR) type applicable to the sub code. $ref: '#/definitions/anc.SpecialServiceDetailType' anc.SpecialServiceDetailType: type: string description: |- STRUCTURED - Structured data must be added to the SSR NOTALLOWED - Free text should not be added to the SSR OPTIONAL - Free text can be optionally added to the SSR REQUIRED - Free text must be added to the SSR. enum: - STRUCTURED - NOTALLOWED - OPTIONAL - REQUIRED anc.TotalFee: type: object description: Contains Total fee value, redemptionCalculationRule and discountCalculationRule attributes. Define how total is calculated. required: - base - total properties: base: description: Base amount of the ancillary fee that can also include taxes if TaxesIncludedInBase is set to 'true'. Mandatory for non-exchange shopping requests. $ref: '#/definitions/sec.PriceElement' discountCalculationRule: description: Discount related calculation rule used when total was calculated. $ref: '#/definitions/anc.EnumDiscountCalculationRule' redemptionCalculationRule: description: Redemption related calculation rule used when total was calculated. $ref: '#/definitions/anc.EnumRedemptionCalculationRule' tax: type: array description: Lists the price or a price component that supports both monetary and/or frequent flyer type of amounts. There should be only a single element for each tax type/code. items: $ref: '#/definitions/sec.PriceElement' total: description: Total cost of an itinerary that includes all fare components, such as the base price, taxes, fees, as well as ancillary base amounts and taxes. These totals directly correlate with one or multiple Service Engine Services. In this case, redemptionCalculationRule and discountCalculationRule attributes define how the total is calculated. $ref: '#/definitions/sec.PriceElement' totalTaxes: description: Summarized ancillary taxes value. $ref: '#/definitions/sec.PriceElement' bag.AllowedSubstitution: type: object description: Contains information on substitution option for given baggage allowance. e.g. total allowance is 3 pieces but 2 of them have to be standard bags but one can be replaced with golf bag. properties: baggageRestriction: description: Baggage restrictions in terms of weight and size (in free-text format). $ref: '#/definitions/bag.BaggageRestriction' pricedAncillaryRef: type: string description: ID of anc.PricedAncillary element. The ancillary definition and pricing details/formula used to create an air extra. example: id01 quantity: format: int32 type: integer description: Number of baggage pieces that qualify as free of charge. If any baggage restrictions apply, they are specified in the BaggageRestriction structure. example: 1 bag.BaggageAllowanceDefinition: type: object description: Free baggage allowance defined by quantity (or number of bags) or by weight restrictions for either checked or carry-on baggage. For checked baggage, an airline can allow two (2) pieces of luggage, where each piece can weigh up to to 23kg. Alternatively, it can define that the total baggage weight must not exceed 50kg without specifying the number of pieces of baggage. For carry-on baggage, pieces of baggage can weigh up to 10 kg. Alternatively, it can define that the total carry-on weight of the baggage must not exceed 10kg without specifying the number of pieces. Occasionally, a free baggage allowance is unknown or not provided at all. In the latter case, this element is not present. properties: allowanceSource: description: Tells about source of the allowance. E.g. allowance comes from optional service filing or a ticketing data. $ref: '#/definitions/bag.EnumBaggageAllowanceSource' allowedSubstitution: type: array description: Substitution option for the free baggage allowance. items: $ref: '#/definitions/bag.AllowedSubstitution' baggageRestriction: type: array description: Baggage restrictions in terms of weight and size (in free-text format). items: $ref: '#/definitions/bag.BaggageRestriction' entitlementDetails: description: Additional information about applied entitlement rule. This element is only relevant when allowance source is set to ENTITLEMENTS. $ref: '#/definitions/bag.EntitlementDetails' id: type: string description: Id attribute. pricedAncillaryRef: type: string description: ID of anc.PricedAncillary element. The ancillary definition and pricing details/formula used to create an air extra. example: id01 quantity: format: int32 type: integer description: Number of baggage pieces that qualify as free of charge. If any baggage restrictions apply, they are specified in the BaggageRestriction structure. example: 25 totalWeight: type: array description: Allowed total weight of baggage which can be checked in for free. Multiple weight elements are used to express total weight in different weight units e.g. kilograms and pounds. items: $ref: '#/definitions/sec.Weight' unknown: type: boolean description: If true, passengers need to contact airline to find out the allowance. bag.BaggageEmbargo: type: object description: Contains baggage embrogoes defined by the airline on a specific flight(s). Applicable to all passengers. required: - restrictionText properties: restrictionText: type: array description: Description of baggge embargo (in English). items: type: string example: - Pet in cabin is not permitted bag.BaggageFee: type: object description: Baggage fee. required: - currency properties: currency: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Code of the currency. example: USD unitDescription: minLength: 1 maxLength: 32 type: string description: Describes (in English) how the fee amount should be applied to the baggage e.g. if it is described per Kilo it means the fee amount should be multiplied by the baggage weight represented in kilograms to get the final amount to be paid by a passenger. If not present, it means the price is per piece of baggage. example: per Kilo value: format: double type: number description: The baggage fee amount. bag.BaggageRestriction: type: object description: Baggage restrictions in terms of weight and size (in free-text format). properties: description: minLength: 1 maxLength: 128 type: string description: 'Baggage description (in English) that defines how the fee amount should be applied to the baggage. For example, if it is described per Kilo, it means the fee amount should be multiplied by the baggage weight represented in kilograms to get the final amount to be paid by a passenger. If not present, it means the price is per piece of baggage. Examples: per Kilo, per pound.' example: hand baggage designation: minLength: 1 maxLength: 32 type: string description: Recommendations and designations related to the seat selection based on passenger type, or a baggage designation, such as Bag1, Bag2, etc., (in English). example: 1st occurrenceLimit: $ref: '#/definitions/bag.OccurrenceLimit' quantity: format: int32 type: integer description: Number of baggage pieces that qualify as free of charge. If any baggage restrictions apply, they are specified in the BaggageRestriction structure. example: 1 sizeLimit: type: array description: Baggage size limit. items: $ref: '#/definitions/bag.SizeLimit' sizeLimitDescription: minLength: 1 maxLength: 4096 type: string description: Baggage size limit description. For example, size limit dimensions can be up to 62 linear inches/158 linear centimeters. example: UP TO 62 LINEAR INCHES/158 LINEAR CENTIMETERS weightLimit: type: array description: Baggage weight limit. items: $ref: '#/definitions/bag.WeightLimit' weightLimitDescription: minLength: 1 maxLength: 4096 type: string description: Baggage weight limit description. For example, weight limit can be up to 50 pounds/23 kilograms. example: EACH PIECE UP TO 50 POUNDS/23 KILOGRAMS bag.CarryOnBaggage: type: object description: Contains allowances and pricing options for baggage which passengers are allowed to carry along in the aircraft cabin (also known as hand baggage or cabin baggage). properties: additionalInfo: minLength: 1 maxLength: 128 type: string description: Additional information provided by the airline related to carry-on baggage. example: additional allowances and/or discounts may apply baggageAllowanceDefinition: description: Free baggage allowance defined by quantity (or number of bags) or by weight restrictions for either checked or carry-on baggage. For checked baggage, an airline can allow two (2) pieces of luggage, where each piece can weigh up to to 23kg. Alternatively, it can define that the total baggage weight must not exceed 50kg without specifying the number of pieces of baggage. For carry-on baggage, pieces of baggage can weigh up to 10 kg. Alternatively, it can define that the total carry-on weight of the baggage must not exceed 10kg without specifying the number of pieces. Occasionally, a free baggage allowance is unknown or not provided at all. In the latter case, this element is not present. $ref: '#/definitions/bag.BaggageAllowanceDefinition' excessBaggage: type: array description: Excess baggage that is not included in the free baggage allowance. If excess baggage is permitted, the fee reflects the amount due for the baggage with a BaggageRestriction. The first element represents the first excess bag after the allotted free bag; the second element represents the second excess bag after the allotted free bag, etc. If the free baggage allowance is unknown or not provided, this element is not present. items: $ref: '#/definitions/bag.ExcessBaggage' bag.CheckedInBaggage: type: object description: Contains the allowances and pricing options for baggage delivered to an airline for transportation in the hold of an aircraft. properties: baggageAllowanceDefinition: type: array description: Free baggage allowance defined by quantity (or number of bags) or by weight restrictions for either checked or carry-on baggage. For checked baggage, an airline can allow two (2) pieces of luggage, where each piece can weigh up to to 23kg. Alternatively, it can define that the total baggage weight must not exceed 50kg without specifying the number of pieces of baggage. For carry-on baggage, pieces of baggage can weigh up to 10 kg. Alternatively, it can define that the total carry-on weight of the baggage must not exceed 10kg without specifying the number of pieces. Occasionally, a free baggage allowance is unknown or not provided at all. In the latter case, this element is not present. items: $ref: '#/definitions/bag.BaggageAllowanceDefinition' excessBaggage: type: array description: Excess baggage that is not included in the free baggage allowance. If excess baggage is permitted, the fee reflects the amount due for the baggage with a BaggageRestriction. The first element represents the first excess bag after the allotted free bag; the second element represents the second excess bag after the allotted free bag, etc. If the free baggage allowance is unknown or not provided, this element is not present. items: $ref: '#/definitions/bag.ExcessBaggage' bag.EntitlementDetails: type: object description: Information about entitlement rule. properties: ruleId: type: string description: The unique ID of the entitlement rule. ruleType: $ref: '#/definitions/bag.EnumEntitlementRuleType' bag.EnumBaggageAllowanceSource: type: string enum: - OPTIONAL_SERVICES - TICKET - ENTITLEMENTS bag.EnumEntitlementRuleType: type: string description: Type of applied entitlement rule. enum: - OVERRIDE - ADDITIONAL - OVERRIDE_ALLOWANCE - FEE_WAIVER bag.EnumLimitType: type: string description: Defines a generic measure limitation type - whether it should be up to or over some value. enum: - OVER - UP_TO bag.ExcessBaggage: type: object description: Contains excess baggage (baggage not included in free baggage allowance). properties: ancillaryRef: type: string description: ID of anc.Ancillary element. Ancillary used for AirExtra creation. example: id01 baggageRestriction: description: Baggage restrictions in terms of weight and size (in free-text format). $ref: '#/definitions/bag.BaggageRestriction' fee: description: Fee amount with currency. $ref: '#/definitions/bag.BaggageFee' notPermitted: type: boolean description: If set to true, excess baggage is not permitted. Usually it is due to the aircraft space limitation. In this case Fee and BaggageRestriction are not populated. unknown: type: boolean description: If true, Passenger has to contact an airline to find out the excess/paid baggage options which is unknown. bag.OccurrenceLimit: type: object description: Defines an occurrence limitation information. properties: first: format: int64 type: integer example: 1 last: format: int64 type: integer example: 3 bag.SizeLimit: type: object description: Defines a generic size limitation information, e.g. up to 158 centimeters or over 62 inches. required: - limitType - size properties: limitType: description: The type of baggage limitations, such as size and/or weight restrictions, overages, etc. example: UP_TO $ref: '#/definitions/bag.EnumLimitType' size: description: Information about the baggage size (such as length, width and height) expressed in centimeter, inch, meter, or feet. $ref: '#/definitions/sec.Size' bag.WeightLimit: type: object description: Defines a generic weight limitation information, e.g. up to 23 kilograms or over 50 pounds. required: - limitType - weight properties: limitType: description: The type of baggage limitations, such as size and/or weight restrictions, overages, etc. example: OVER $ref: '#/definitions/bag.EnumLimitType' weight: description: Baggage weight. $ref: '#/definitions/sec.Weight' chk.Agent: type: object description: Details of the agent who issued the boarding pass. required: - city - country - sign properties: city: pattern: ^([a-zA-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Agent assigned city code. example: DAL country: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: PseudoCity code and default currency, if specified. If the Currency element is populated, it overrides the default currency. example: US sign: minLength: 1 maxLength: 32 type: string description: Agent sign. example: HCF chk.Baggage: type: object description: Baggage details recorder at check-in. properties: carryOnWeight: description: Total weight of carry-on baggage. $ref: '#/definitions/chk.Weight' checkedInBaggage: description: Allowances and pricing options for baggage delivered to an airline for transport in the aircraft cargo hold. $ref: '#/definitions/chk.CheckedInBaggage' chk.BaggageCheckInRules: type: object description: Describes the baggage check-in and transportation rules that apply at the given segment. Some of these rules may be printed out on the tag when the bag is checked in. properties: baggageRouteRequired: type: boolean description: If true an entire baggage route has to be provided while checking in baggage. homePrintedBagTagRestricted: description: If present Home Printed Bag Tag is restricted for given airline or on given segment. $ref: '#/definitions/chk.HomePrintedBagTagRestricted' lateCheckIn: type: boolean description: If true and the baggage is checked in after the bag check-in window the bag tag will be generated with a late check-in message. In some cases it will mean that the baggage is not guaranteed to arrive with the passenger at the destination, the airline may not cover the delivery charges and the passenger will need to collect the baggage on their own. maxGuaranteedQuantity: format: int32 type: integer description: Maximum number of bags guaranteed for travel with the passenger at the given flight. Any bags exceeding the limit may be a subject for a voluntary separation and are not guaranteed to arrive with the passenger. This number should not be greater than the MaxQuantity. example: 2 maxQuantity: format: int32 type: integer description: Maximum number of bags that the passenger is allowed to check-in on the flight. example: 3 petAllowed: type: boolean description: Indicates whether a pet can be transported as baggage on the given flight. reCheckInRequired: description: If present the baggage will need to be reclaimed after the flight and rechecked for connecting flight. $ref: '#/definitions/chk.ReCheckInRequired' chk.BoardingPass: type: object description: Represents boarding pass details. Some data required by the boarding pass (e.g. record locator, passenger name) are available in the parent elements and are not included in this structure to avoid duplication. required: - flightDetail properties: agent: description: Details of the agent who issued the boarding pass. $ref: '#/definitions/chk.Agent' baggage: description: Baggage piece for which the passenger wants to obtain a price. $ref: '#/definitions/chk.Baggage' barCode: type: string description: The 2D bar code defined in the IATA Passenger Services Conference Manual, RESOLUTION 792. Applicable to single flight segments this BoardingPass is associated with. example: M1LEE/GREGORY EYP26SU CBRMELQF 0819 110Y020D0026 359>2180 M B 29 0 QF 4776054 352 checkInSequenceNumber: pattern: ^([0-9]{3,5})$ minLength: 1 type: string description: Check-in sequence number. example: '001' deck: description: Deck details. Used for multi-deck aircraft e.g. A380. $ref: '#/definitions/sec.Deck' displayData: description: Contains supplementary boarding pass data. Groups data specific to countries, airlines, or loyalty programs. $ref: '#/definitions/chk.DisplayData' fareInfo: description: Fare information, which is usually a single element. However, multiple elements can be provided to allow representation of various fare details associated with several passenger types on the same flight segment. $ref: '#/definitions/sec.FareInfo' flightDetail: description: Flight details. In cases other than COG (change of gauge) or through-flights, only a single element is expected. $ref: '#/definitions/sec.FlightDetail' formattedBoardingPass: description: Pre-formatted boarding pass representation e.g. as an image. $ref: '#/definitions/chk.FormattedBoardingPass' group: minLength: 1 maxLength: 32 type: string description: Boarding group. example: GROUP1 loyaltyAccount: description: Loyalty account details of the user performing the service request. $ref: '#/definitions/sec.LoyaltyAccount' personName: description: Passenger name. $ref: '#/definitions/sec.PersonName' priorityVerificationCard: type: boolean description: If true, Priority Verification Card is provided rather than a real Boarding Pass. It means the passenger is on the priority list (standby) and has no seat assigned. This card allows passenger reach the departure gate but will not be able to get on the plane until seat is assigned. recordLocator: pattern: ^([A-Za-z0-9]{5,8})$ minLength: 5 maxLength: 8 type: string description: Record locator of the passenger reservation as provided by the check-in system. example: DEWJNK seat: description: Seat description, which is present if an actual seat occupies a slot in the aircraft cabin. $ref: '#/definitions/chk.Seat' source: description: Identifies the system providing the boarding pass details. The system can be either an airline host system or an external system where other airlines are hosted. $ref: '#/definitions/chk.EnumBoardingPassSource' standbyPriority: pattern: ^([A-Z0-9]{1,8})$ minLength: 1 maxLength: 8 type: string description: Standby priority code assigned to the passenger while waiting for an available seat on the standby/priority list. example: S1 supplementaryData: description: Contains supplementary boarding pass data. Groups data specific to countries, airlines, or loyalty programs. $ref: '#/definitions/chk.SupplementaryData' ticketCouponNumber: pattern: ^([0-9]{1,2})$ minLength: 1 maxLength: 2 type: string description: Number of the ticket coupon linked to the flight on the boarding pass. example: '01' ticketNumber: description: Ticket number mandatory for all passenger types except infants (tickets are sometimes not issued for infants in the US). All data elements in TicketNumber must be present. $ref: '#/definitions/sec.TicketNumber' upgradePriority: pattern: ^([A-Z0-9]{1,5})$ minLength: 1 maxLength: 5 type: string description: Upgrade priority code assigned to the passenger when passenger waits for a cabin class upgrade. example: S1123 zone: minLength: 1 maxLength: 32 type: string description: Boarding zone. example: ZONE1 chk.CheckedInBaggage: type: object description: Checked baggage details recorder at check-in. required: - quantity - totalWeight properties: bagTagNumber: type: array description: Bag tags assigned to each checked bag. items: type: string quantity: format: int32 type: integer description: Number of baggage pieces. totalWeight: description: Total weight of baggage. $ref: '#/definitions/chk.Weight' chk.CodeShortCheckInReason: type: string description: |- MISSING_BAGGAGE_AGREEMENT - There's no baggage agreement between the airlines operating the flights in the reservation and the baggage needs to be rechecked LEGAL_RESTRICTIONS - Law regulations require the bag to be rechecked. enum: - MISSING_BAGGAGE_AGREEMENT - LEGAL_RESTRICTIONS chk.DisplayData: type: object description: Groups formatted texts to be directly used for the customly created boarding passes e.g. for web check-in applications. Business logic should not be driven be values of these fields. properties: accommodation: minLength: 1 maxLength: 128 type: string description: Describes accommodation details when appropriate. Some airlines offer suites to be booked on certain aircraft types e.g. A380. example: RESIDENCE SUITE agentCityName: minLength: 1 maxLength: 128 type: string description: Agent city name. example: ANCHORAGE arrivalAirportName: minLength: 1 maxLength: 128 type: string description: Arrival airport name as defined in the check-in system and printed on the boarding pass. example: SEATTLE TACOMA boardingPassOnlyText: minLength: 1 maxLength: 128 type: string description: Boarding pass only text. example: BOARDING PASS ONLY boardingTime: minLength: 1 maxLength: 32 type: string description: Time the aircraft is scheduled for boarding. example: '1000' doorCloseTime: minLength: 1 maxLength: 32 type: string description: Time when the boarding window is closed. example: '1000' cabinClassCode: minLength: 1 maxLength: 32 type: string description: Cabin class code as printed on the boarding pass. example: Y cabinText: minLength: 1 maxLength: 32 type: string description: Cabin description text. example: PREMIUM ECONOMY carryOnText: minLength: 1 maxLength: 32 type: string description: Carry on text. example: CARRY-ON childText: minLength: 1 maxLength: 32 type: string description: Child text. example: CHILD commuterAirlineName: minLength: 1 maxLength: 128 type: string description: Commuter airline name as defined in the check-in system and printed on the boarding pass. example: SKYWEST commuterOperatedByText: minLength: 1 maxLength: 128 type: string description: Operated by text for commuter airline as printed on the boarding pass. example: OPERATED BY departureAirportName: minLength: 1 maxLength: 128 type: string description: Departure airport name as defined in the check-in system and printed on the boarding pass. example: ANCHORAGE documentTypeText: minLength: 1 maxLength: 32 type: string description: Document type text. example: BOARDING PASS edifactApiText: minLength: 1 maxLength: 32 type: string description: The result of EDIFACT transmission. example: API OK estimatedArrivalTime: minLength: 1 maxLength: 32 type: string description: Estimated arrival time as printed on the boarding pass - HH24MM format. example: '1510' estimatedDepartureDate: minLength: 1 maxLength: 32 type: string description: Estimated departure date as formatted and printed on boarding pass. example: '2014-09-05' estimatedDepartureTime: minLength: 1 maxLength: 32 type: string description: Estimated departure time as printed on the boarding pass - HH24MM format. example: '1210' evenMoreSpeedText: minLength: 1 maxLength: 32 type: string description: Text related to Even More Speed program. example: EVEN MORE SPEED exitText: minLength: 1 maxLength: 32 type: string description: Exit text. example: E X I T flightCouponText: minLength: 1 maxLength: 128 type: string description: Flight coupon text. example: NOT VALID WITHOUT FILGHT COUPON loyaltyAccountTierName: minLength: 1 maxLength: 128 type: string description: Name of the passenger loyalty tier as defined in the check-in system and printed on the boarding pass. example: GOLD marketingAirlineName: minLength: 1 maxLength: 128 type: string description: Marketing airline name as defined in the check-in system and printed on the boarding pass. example: ALASKA AIRLINES operatingAirlineName: minLength: 1 maxLength: 128 type: string description: Operating airline name as defined in the check-in system and printed on the boarding pass. example: ALASKA AIRLINES pingTipText: minLength: 1 maxLength: 32 type: string description: Text related to Ping Tip program. example: SPDX plusInfantText: minLength: 1 maxLength: 32 type: string description: Plus infant text. example: PLUS INFANT premiumText: minLength: 1 maxLength: 32 type: string description: Premium text. example: PREMIUM priorityAaccessText: minLength: 1 maxLength: 32 type: string description: Text related to AAccess loyalty program as defined in the check-in system and printed on the boarding pass. example: PRIORITY AACCESS priorityBoardingText: minLength: 1 maxLength: 128 type: string description: Text as it should be printed on the boarding pass for passengers with priority boarding. example: PRIORITY BOARDING priorityText: minLength: 1 maxLength: 32 type: string description: Text as it should be printed on the boarding pass for passengers with priority. example: PRIORITY handLuggageText: type: string description: Text with hand luggage related information. example: NO CARRY ON scheduledArrivalTime: minLength: 1 maxLength: 32 type: string description: Scheduled arrival time as printed on the boarding pass - HH24MM format. example: '1500' scheduledDepartureDate: minLength: 1 maxLength: 32 type: string description: Schedule departure date as formatted and printed on boarding pass. example: '2014-09-05' scheduledDepartureTime: minLength: 1 maxLength: 32 type: string description: Scheduled departure time as printed on the boarding pass - HH24MM format. example: '1205' skyPriorityText: minLength: 1 maxLength: 32 type: string description: Text related to Sky Priority loyalty program as defined in the check-in system and printed on the boarding pass. example: SKYPRIORITY spanishLargeFamilyText: minLength: 1 maxLength: 32 type: string description: Text related to spanish large famili program. example: FAMI/FAMI NO VERIFICADO spanishResidentText: minLength: 1 maxLength: 32 type: string description: Text related to spanish resident program. example: RESI/RESI NO VERIFICADO specialService: type: array description: IATA-defined Special Service Request (SSR) code applicable to the sub code. items: type: string example: - WCHR speedText: minLength: 1 maxLength: 32 type: string description: Text related to Speed program. example: SPEED tboText: minLength: 1 maxLength: 32 type: string description: TBO text. example: TBO EN thruAirportName: type: array description: Lists the airport name as defined in the check-in system and printed on the boarding pass. items: type: string example: - LIMA thruText: minLength: 1 maxLength: 32 type: string description: Thru text. example: THRU ticketTypeText: minLength: 1 maxLength: 32 type: string description: Ticket type description to be printed on the boarding pass. example: ELECTRONIC tsaPreCheckText: minLength: 1 maxLength: 32 type: string description: Text as it should be printed on the boarding pass for passengers participating in TSA Pre program. example: TSA PRE wetleaseAircraftTypeName: minLength: 1 maxLength: 128 type: string description: Wetlease aircraft type name. example: B757 wetleaseAirlineName: minLength: 1 maxLength: 128 type: string description: Wetlease airline name as defined in the check-in system and printed on the boarding pass. example: HORIZON AIR wetleaseOperatedByText: minLength: 1 maxLength: 128 type: string description: Operated by text for wetlease airline as printed on the boarding pass. example: OPERATED BY loungeAccessText: minLength: 1 maxLength: 128 type: string description: Text related to lounge access. example: LOUNGE entitlementTexts: type: object description: Contains passenger's check-in entitlements. additionalProperties: type: string example: fastTrack: FAST TRACK loungeAccess: LOUNGE XTRA priorityBoarding: PRIORITY fareBrandText: minLength: 1 maxLength: 128 type: string description: Text representing the fare brand. example: ECONOMY BASIC chk.EnumBoardingPassSource: type: string description: |- Boarding pass source. HOST - Airline host system. EXTERNAL - Other airline remote system available through EDIFACT protocol. OTHER - Other system. enum: - HOST - EXTERNAL - OTHER chk.FormattedBoardingPass: type: object description: Pre-formatted boarding pass representation e.g. as an image. properties: document: description: Boarding pass in a document format, e.g. PDF. $ref: '#/definitions/sec.BinaryData' image: description: Boarding pass image. $ref: '#/definitions/sec.BinaryData' pectab: description: Boarding pass formatted in PECTAB. $ref: '#/definitions/chk.Pectab' zpl: description: Boarding pass in a ZPL format. $ref: '#/definitions/sec.BinaryData' supplementaryData: description: Formatted boarding pass supplementary data. $ref: '#/definitions/chk.FormattedBoardingPassSupplementaryData' chk.HomePrintedBagTagRestricted: type: object description: Structure that represents Home Printed Bag Tag restriction details. required: - type properties: message: minLength: 1 maxLength: 512 type: string description: Home Printed Bag Tag restriction message. example: Home Printed Bag Tag is not allowed for given airline. type: description: Home Printed Bag Tag restriction type. $ref: '#/definitions/chk.HomePrintedBagTagRestrictionType' chk.HomePrintedBagTagRestrictionType: type: string description: |- RESTRICTED_ON_GIVEN_AIRPORT - Home Printed Bag Tag is not allowed on a given airport. RESTRICTED_ON_INTERNATIONAL_FLIGHT - Home Printed Bag Tag is not allowed on an international flight. RESTRICTED_ON_INTERLINE_FLIGHT - Home Printed Bag Tag is not allowed on an interline flight. RESTRICTED_FOR_GIVEN_AIRLINE - Home Printed Bag Tag is not allowed for given airline. RESTRICTED - Default value when Home Printed Bag Tag is not allowed. enum: - RESTRICTED_ON_GIVEN_AIRPORT - RESTRICTED_ON_INTERNATIONAL_FLIGHT - RESTRICTED_ON_INTERLINE_FLIGHT - RESTRICTED_FOR_GIVEN_AIRLINE - RESTRICTED chk.Pectab: type: object description: Contains the Parametric tables (PECTAB) related data for ATB printer. It consists of layout, template (PECTAB) and data (data stream). properties: data: description: Variable data (data stream) e.g. record locator, flight, date. $ref: '#/definitions/sec.BinaryData' layout: description: Layout related data that represents static information (e.g. logos, separation lines). $ref: '#/definitions/sec.BinaryData' template: description: Template (PECTAB). $ref: '#/definitions/sec.BinaryData' chk.ReCheckInRequired: type: object required: - reason properties: message: minLength: 1 maxLength: 512 type: string description: Human-friendly description (in English) of the reason. example: Due to government restrictions the baggage need to be rechecked at the airport reason: description: The reason for a requirement to recheck the baggage. $ref: '#/definitions/chk.CodeShortCheckInReason' chk.Seat: type: object description: Represents seat details in boearding pass. properties: column: minLength: 1 maxLength: 32 type: string description: Column name in the aircraft. example: C row: minLength: 1 maxLength: 32 type: string description: Row number in the aircraft. example: '6' value: minLength: 1 maxLength: 5 type: string description: The value associated with the seat number, consisting of the row number and column name. example: 6C chk.SupplementaryData: type: object description: Contains supplementary boarding pass data. Groups data specific to countries, airlines, or loyalty programs. properties: dhsStatus: format: int32 type: integer description: Status code provided by US Department of Homeland Security. Provided when applicable. exclusiveWaitingArea: type: boolean description: If true, exclusive waiting area at the airport is available to a passenger. infraeroElectronicStamp: pattern: ^([0-9]{14})$ minLength: 14 maxLength: 14 type: string description: Bar code number printed on boarding passes by the airlines to identify passengers that pay boarding fees. Used in Brasil only. example: '12345678901234' loungeAccess: type: boolean description: If true, the lounge access at the airport is available to a passenger. selectee: type: boolean description: Secondary Security Screening Selection (also known as Secondary Security Screening Selectee) - an airport security measure in the United States which selects passengers for additional inspection. skyPriority: type: boolean description: Indicates passenger's eligibility for SkyPriority services like access to priority check-in areas, priority boarding. SkyPriority is specific to SkyTeam alliance. spanishLargeFamily: type: boolean description: If true, the passenger is eligible for spanish large family discount. spanishResident: type: boolean description: If true, the passenger is eligible for spanish resident discount. tboAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Trans boarder operations airport. example: LHR throughAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Airport code where aircraft stops during the travel e.g for refuelling. example: LHR throughCountry: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Country code where aircraft stops during the travel e.g for refuelling. example: US chk.FormattedBoardingPassSupplementaryData: type: object description: Formatted boarding pass supplementary data. properties: selectee: type: boolean description: Secondary Security Screening Selection (also known as Secondary Security Screening Selectee) - an airport security measure in the United States which selects passengers for additional inspection. skyPriority: type: boolean description: Indicates passenger's eligibility for SkyPriority services like access to priority check-in areas, priority boarding. SkyPriority is specific to SkyTeam alliance. zone: minLength: 1 maxLength: 32 type: string description: Boarding zone. example: ZONE1 accommodation: minLength: 1 maxLength: 128 type: string description: Describes accommodation details when appropriate. Some airlines offer suites to be booked on certain aircraft types e.g. A380. example: RESIDENCE SUITE chk.Weight: type: object description: Weight value with free string unit. properties: unit: pattern: ^([0-9a-zA-Z]+)$ type: string description: A weight unit as free string. value: format: double type: number description: The numeric value of the baggage weight in kilograms or pounds. fee.EnumTicketingFeeType: type: string description: |- TICKETING - ATPCO T type - madatory ticketing fees. REQUESTED - ATPCO R type - optional requestable services. FORM_OF_PAYMENT - ATPCO R type - form of payment fees. enum: - TICKETING - REQUESTED - FORM_OF_PAYMENT fee.MiscFee: type: object description: Fees with Sub Codes beginning with 99 and 98 which are reserved for services that are not within the scope of the ATPCO Optional Services (Ancillaries) product. They may represent e.g. TICKET FEE (991) but they are different than TicketingFees (OB fees). required: - group - offerName - reasonForIssuance - subCode properties: dealName: minLength: 1 maxLength: 255 type: string description: Deal(s) applicable to itinerary pricing. example: SPRING DEAL group: minLength: 1 maxLength: 3 type: string description: Group of services. Ancillaries are organized into groups established by ATPCO as the industry standard. example: BG id: type: string description: Id attribute. offerName: minLength: 1 maxLength: 255 type: string description: Name of the offer that identifies the discount. example: MAY WEEKEND DISCOUNT reasonForIssuance: pattern: ^([A-Z]{1})$ minLength: 1 maxLength: 1 type: string description: IATA-defined Reason for Issuance Code (RFIC) applicable to the Electronic Miscellaneous Document (EMD) issued for the sub code identified in this record. example: R subCode: minLength: 3 maxLength: 4 type: string description: SubCode used. Should start with 99 or 98 but may be other if airline decides so. example: '991' fee.TicketingFee: type: object description: Represents airline ticketing fees, also called OB Fees which are defined and collected by the validating airline and charged to the passenger when a ticket is issued (at first ticket issuance only). The OB fees can be imposed to cover charges for Requested services, Ticketing services or for specific Form of Payment (credit card). Airline ticketing fees are non-refundable. required: - amount - type properties: amount: description: Regulatory price amount in the original currency in which the fare was defined. It could also refer to the number of loyalty points present when the type is *_AMOUNT. If the value is a calculated value, then the percentage is also populated for reference. $ref: '#/definitions/sec.Money' commercialName: minLength: 1 maxLength: 50 type: string description: Commercial name associated to the ancillary sub code. example: OVERNIGHT DELIVERY CHARGE conversionRatio: description: Details required to convert loyalty points/miles to a monetary amount. This element provides the client with all required data to allow dynamic recalculation of the returned amounts into loyalty points based on user inputs. If required, RoundingMode and ScalingMode are taken from the ConversionRules element in PriceBreakdown. $ref: '#/definitions/sec.ConversionRatio' other: type: boolean description: There are certain corner case scenarios (number of returned types of fees exceeds available limit) when ticketing fees are not fully broken down by sub code. In such a case the portion which was not broken down is returned with 'other' attribute set to true and without sub code and commercial name being provided otherwise this attribute is not returned in the response. points: format: int32 type: integer description: Price expressed in frequent flyer points/miles. example: 1000 referenceAmount: description: Value that is not used as the amount a passenger should pay for the fare. Instead, it is used as reference or internal calculation to determine the fare amount. For example, if a passenger chooses to pay for the fare in points and in currency, then both the Amount and EquivAmount, together with points, are populated. Consequently, the ReferenceAmount can be used to provide the initial amount that was split into both points and currency amount based on a designated set of rules. Similarly, when points are returned from a source other than the reservation system, and the user has elected to pay in points only, the ReferenceAmount can be populated with a currency amount returned from the system to use as a reference or for internal calculations (as described at the beginning of this statement). $ref: '#/definitions/sec.Money' subCode: pattern: ^([A-Z0-9]{3})$ minLength: 3 maxLength: 3 type: string description: Code as defined in the ATPCO Services Subcode Appendix. type: description: |- Fee type, which could be one of the following: - R-TYPE - Requested services fees with a sub code beginning with the letter R - T-TYPE - Ticketing fees with a sub code beginning with the letter T - F-TYPE - Form of payment fees with a sub code beginning with the letter F. $ref: '#/definitions/fee.EnumTicketingFeeType' waived: description: Indicates that the fee has been waived. $ref: '#/definitions/fee.TicketingFeeWaiver' fee.TicketingFeeWaiver: type: object description: Ticketing fee waiving details. properties: reasonCode: pattern: ^([0-9A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Reason code which indicates why fee was waived. Present only when set to 'true'. value: type: boolean chk.MultiSegmentsBoardingPass: type: object description: Lists all passenger flight IDs present on the multi-segment boarding pass. properties: type: description: Identifies the document type. example: BOARDING_PASS $ref: '#/definitions/chk.DocumentType' passengerFlightIds: type: array items: type: string barCode: type: string description: The 2D bar code defined in the IATA Passenger Services Conference Manual, RESOLUTION 792. Applicable to single flight segments this BoardingPass is associated with. example: M1LEE/GREGORY EYP26SU CBRMELQF 0819 110Y020D0026 359>2180 M B 29 0 QF 4776054 352 formattedBoardingPass: description: Pre-formatted boarding pass representation e.g. as an image. $ref: '#/definitions/chk.FormattedBoardingPass' boardingPassData: type: array description: Contains boarding pass supplementary data. It groups elements that are specific for counties, airlines or loyalty programs. items: $ref: '#/definitions/chk.BoardingPassData' chk.BoardingPassData: type: object description: Boarding pass data. properties: passengerFlightId: pattern: ^([a-zA-Z_][a-zA-Z0-9_\-\.]*)$ type: string description: Specifies a type that must start with a letter or underscore and can only contain letters, digits, underscores, hyphens, and periods. example: id-01-abc agent: description: Details of the agent who issued the boarding pass. $ref: '#/definitions/chk.Agent' baggage: description: Baggage piece for which the passenger wants to obtain a price. $ref: '#/definitions/chk.Baggage' checkInSequenceNumber: pattern: ^([0-9]{3,5})$ minLength: 1 type: string description: Check-in sequence number. example: '001' deck: description: Deck details. Used for multi-deck aircraft e.g. A380. $ref: '#/definitions/sec.Deck' group: minLength: 1 maxLength: 32 type: string description: Boarding group. example: GROUP1 personName: description: Passenger name. $ref: '#/definitions/sec.PersonName' recordLocator: pattern: ^([A-Za-z0-9]{5,8})$ minLength: 5 maxLength: 8 type: string description: Record locator of the passenger reservation as provided by the check-in system. example: DEWJNK seatNumber: minLength: 1 maxLength: 5 type: string description: Seat description, which is present if an actual seat occupies a slot in the aircraft cabin. example: 6C source: description: Identifies the system providing the boarding pass details. The system can be either an airline host system or an external system where other airlines are hosted. $ref: '#/definitions/chk.EnumBoardingPassSource' supplementaryData: description: Contains boarding pass supplementary data. It groups elements that are specific for counties, airlines or loyalty programs. $ref: '#/definitions/chk.SupplementaryData' ticketNumber: description: Ticket number mandatory for all passenger types except infants (tickets are sometimes not issued for infants in the US). All data elements in TicketNumber must be present. $ref: '#/definitions/sec.TicketNumber' ticketCouponNumber: pattern: ^([0-9]{1,2})$ minLength: 1 maxLength: 2 type: string description: Number of the ticket coupon linked to the flight on the boarding pass. example: '01' loyaltyAccount: description: Loyalty account details of the user performing the service request. $ref: '#/definitions/sec.LoyaltyAccount' standbyPriority: pattern: ^([A-Z0-9]{1,8})$ minLength: 1 maxLength: 8 type: string description: Standby priority code assigned to the passenger while waiting for an available seat on the standby/priority list. example: S1 bookingClass: pattern: ^([A-Z])$ minLength: 1 maxLength: 1 type: string description: Cabin booking class code, also known as RBD (Reservations/Booking Designator), that contains one uppercase alpha character. If the code is not specified, seat maps for all booking classes are retrieved. example: Y cabinClass: description: Cabin class, such as ECONOMY. Multiple classes can be requested, however only a single cabin class is currently supported. Although, this attribute is optional, it must be provided in almost all cases; otherwise, an error is returned. The exception is that the cabin class should not be provided for legacy redemption shopping or exchange shopping. $ref: '#/definitions/sec.EnumCabinClass' zone: minLength: 1 maxLength: 32 type: string description: Boarding zone. example: ZONE1 flightDetail: description: Flight details. In cases other than COG (change of gauge) or through-flights, only a single element is expected. $ref: '#/definitions/chk.FlightDetail' displayData: description: Contains boarding pass supplementary data. It groups elements that are specific for counties, airlines or loyalty programs. $ref: '#/definitions/chk.DisplayData' chk.FlightDetail: type: object description: Details of a flight. properties: airline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Marketing airline code. example: F7 departureAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Origin of the flight. example: KRK arrivalAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Destination of the flight. example: DFW departureTime: format: date-time type: string description: Departure date and time. arrivalTime: format: date-time type: string description: Arrival date and time. operatingAirline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Operating airline code, which could be different from the marketing airline code. example: K0 flightNumber: pattern: ^([0-9]{1,4})$ minLength: 1 maxLength: 4 type: string description: Flight number provided by the marketing airline. example: '123' operatingFlightNumber: pattern: ^([0-9]{1,4})$ minLength: 1 maxLength: 4 type: string description: Flight number of the operating airline, which could be different from the marketing airline. example: '222' arrivalCountry: type: string boardingTime: format: date-time type: string departureCountry: type: string departureGate: type: string departureTerminal: type: string estimatedDepartureTime: format: date-time type: string estimatedArrivalTime: format: date-time type: string departureFlightScheduleStatus: $ref: '#/definitions/sec.EnumFlightScheduleStatus' equipment: pattern: ^([A-Z0-9]{3})$ minLength: 3 maxLength: 3 type: string description: Code identifying the type of equipment used for the flight. example: '747' commuter: type: boolean chk.DocumentType: type: string description: 'Document type: BOARDING_PASS or PRIORITY_VERIFICATION_CARD.' enum: - BOARDING_PASS - PRIORITY_VERIFICATION_CARD jdcc.StatefulRequest: type: object properties: returnSession: type: boolean jtim.Operation: type: string enum: - ENABLE - DISABLE jtim.PassengerInformation: type: object description: Additional information related to specific passenger on a specific flight. Can be used for passenger security validation. required: - passengerId properties: documentType: description: Associated travel document. $ref: '#/definitions/res.EnumTimaticDocumentType' passengerId: pattern: ^([a-zA-Z_][a-zA-Z0-9_\-\.]*)$ type: string description: Specifies a type that must start with a letter or underscore and can only contain letters, digits, underscores, hyphens, and periods. example: id-01-abc residency: description: Associated residency document. $ref: '#/definitions/jtim.Residency' returnDate: format: date type: string description: Associated trip return date. example: '2017-09-24' stayType: description: Associated reason for stay. $ref: '#/definitions/res.EnumStayType' visaVerified: type: boolean jtim.PassengerOperation: type: object required: - operation - passengerId properties: operation: $ref: '#/definitions/jtim.Operation' passengerId: pattern: ^([a-zA-Z_][a-zA-Z0-9_\-\.]*)$ type: string description: Specifies a type that must start with a letter or underscore and can only contain letters, digits, underscores, hyphens, and periods. example: id-01-abc jtim.Residency: type: object required: - countryCode - documentType properties: countryCode: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Residency country code. example: US documentType: $ref: '#/definitions/res.EnumResidencyDocumentType' jtim.TimaticAddRequest: allOf: - $ref: '#/definitions/jdcc.StatefulRequest' - type: object required: - passengerInformation properties: passengerInformation: type: array items: $ref: '#/definitions/jtim.PassengerInformation' jtim.TimaticAddResponse: type: object properties: reservation: $ref: '#/definitions/res.Reservation' results: type: array items: $ref: '#/definitions/ress.UpdateReservationResult' jtim.TimaticOverrideRequest: allOf: - $ref: '#/definitions/jdcc.StatefulRequest' - type: object required: - passengerOperations properties: passengerOperations: type: array items: $ref: '#/definitions/jtim.PassengerOperation' jtim.TimaticOverrideResponse: type: object properties: reservation: $ref: '#/definitions/res.Reservation' results: type: array items: $ref: '#/definitions/ress.UpdateReservationResult' jtim.TimaticVerifyRequest: allOf: - $ref: '#/definitions/jdcc.StatefulRequest' - type: object required: - passengerIds properties: passengerIds: type: array items: type: string jtim.TimaticVerifyResponse: type: object properties: reservation: $ref: '#/definitions/res.Reservation' results: type: array items: $ref: '#/definitions/ress.UpdateReservationResult' res.AdditionalTravelInformation: type: object description: Additional information related to specific passenger on a specific flight. Can be used for passenger security validation. properties: residencyDocumentType: description: Associated residency document. $ref: '#/definitions/res.ResidencyDocumentType' returnDate: description: Associated trip return date. $ref: '#/definitions/res.ReturnDate' stayType: description: Associated reason for stay. $ref: '#/definitions/res.StayType' timaticDocumentType: description: Associated travel document. $ref: '#/definitions/res.TimaticDocumentType' visaVerified: description: Associated trip return date. $ref: '#/definitions/res.VisaVerified' res.Agent: type: object description: Agent issuing the transaction that updates the ticketing document. properties: duty: type: string description: An alpha or numeric duty code used by the agent to issue a ticketing document. homeBranch: type: string description: The employee number of the agent as defined in the Employee Profile Record. homeLocation: type: string description: The home location of the agent who issued the ticketing transaction. homeStation: type: string description: The station number of the agent as defined in the Employee Profile Record. lniata: type: string description: Uniquely identifies the terminal location of the agent who issues the ticketing transaction. sine: type: string description: A code assigned to an agent when signing into the the host system. stationLocation: type: string description: The location of a station where the agent issues the transaction. stationNumber: type: string description: A station number which uniquely identifies the station. ticketingProvider: description: Airline or Carrier code. $ref: '#/definitions/res.TicketingProvider' type: type: string description: A code assigned to the type of agent who issued the transaction. workLocation: type: string description: The location where the agent issued the ticketing document. This is normally the point of sale or AAA city. res.AirExtra: type: object description: |- Represents an association between the passenger and the air extra that he selected along with a payment status. Each air extra associated with a passenger needs to be represented by a separate AirExtra. required: - paymentStatus - quantity - type properties: airExtraBundleRef: type: string description: ID of res.AirExtraBundle element. Reference to an air extra bundle. Indicates that this AirExtra is either a parent or a child of the bundle. If not present then this AirExtra is not associated with any bundle. example: id01 ancillary: description: |- Additional service that can be sold to a passenger for a specific portion of travel, or a service that is completely unrelated to a particular itinerary. Other names used in the industry for this entity are 'Optional Service' defined by ATPCO or 'Travel Extra' defined by MTS. Refer to the DATA APPLICATION OPTIONAL SERVICES - SUB CODE SERVICES RECORD S5 document published by ATPCO for more details. $ref: '#/definitions/anc.Ancillary' bookingIndicator: type: string description: |- Booking method requirement e.g. carrier must be contacted. If blank then there is no specific booking requirement. example: '01' eMDSegmentCoupons: description: List of coupons on each segment corresponding to the AE. $ref: '#/definitions/res.EMDSegmentCoupons' emdNumber: description: Number of associated EMD. $ref: '#/definitions/sec.EmdNumber' emdPaperIndicator: type: string description: Electronic (E) or paper document (P) indicator. example: E feeApplicationIndicator: type: string description: Indicates if the fee is based on a flight segment, multiple flight segments or entire ticket. example: '01' id: type: string description: Id attribute. miscFee: description: Fee definition for all fee types except ancillaries. $ref: '#/definitions/fee.MiscFee' passengerSegmentRefs: type: array description: |- Array of IDs of res.PassengerSegment elements. When AirExtra is associated to one PassengerSegment or PassengerItineraryPart, it is typically embedded in either of these and the PassengerSegmentRefs should not be used as it is not needed. In the case of a single AirExtra being associated to 2 or more PassengerSegments, the former needs to be represented at the Passenger level while the latter are represented in the PassengerSegmentRefs list. items: type: string example: - id01 - id02 paymentStatus: description: Payment status for the air extra associated with the passenger. The status indicates whether payment has been done, has not been done or is not required at all. $ref: '#/definitions/sec.AirExtraPaymentStatus' pnrId: type: string description: AirExtra identifier from PNR system. quantity: format: int32 type: integer description: Number of items of this ancillary that have to be bought to cover a fee for a given baggage. specialServiceDescription: description: Additional data that will be assigned to the SSR. $ref: '#/definitions/res.SpecialServiceDescription' syntheticIdentifier: minLength: 1 maxLength: 1000 type: string description: A unique identifier representing particular passenger air extra in the reservation. It is used during air extra purchase (payment & ticketing). This element may be omitted and the purchase logic will try to recreate it from the downline systems whenever possible. Be aware that in some cases it will fail to do so, therefore it's a good practice to always populate it. example: '4324143134214231412412' taxExemption: type: boolean description: True if tax is exempt. Applies to both EMD-S and EMD-A. example: true ticketUsedForEmdPricing: type: string description: 'Indicates whether ticket is used for EMD pricing. Example values: Y or N.' example: N type: description: Type of the entity air extra represents. $ref: '#/definitions/res.EnumAirExtraType' weight: description: Baggage weight. $ref: '#/definitions/sec.Weight' disassociated: type: boolean description: True if the air extra is not directly associate to a given segment or segments. It might happen when passenger is upgraded to a na class. example: true offerId: description: Contains the offer ID and item ID attribute information. $ref: '#/definitions/res.OfferId' res.OfferId: type: object description: Contains the offer ID and item ID attribute information. required: - id - itemId properties: id: type: string description: The ID attribute of the offer. itemId: type: string description: The item ID attribute of the offer. res.AirExtraBundle: type: object description: |- Group of AirExtra elements that are associated in a parent-child relationship. Two associated AirExtra elements that have empty PassengerSegmentRefs elements can be booked on different segments. required: - parentRef properties: childRef: type: array description: Array of IDs of res.AirExtra elements. items: type: string example: - id01 - id02 id: type: string description: Id attribute. parentRef: type: string description: ID of res.AirExtra element. example: id01 res.AirExtraDocument: type: object description: |- Document issued for one or more air extras (ancillaries or other fees) purchased by the passenger. The air extra may or may not be of the same subCode. On Sabre host it corresponds to EMD or MSR. required: - airExtraRefs properties: airExtraDocumentCoupon: type: array description: Coupons linked to the document. items: $ref: '#/definitions/res.AirExtraDocumentCoupon' airExtraRefs: type: array description: Array of IDs of res.AirExtra elements. References to air extras (ancillary or other fees) purchased by the passenger this document has been issued for. items: type: string example: - id01 - id02 id: type: string description: Id attribute. issueDate: format: date-time type: string description: Date and time when document for air extra was issued. number: type: string description: Number assigned by the reservation system. example: '7958200163406' paymentRefs: type: array description: Array of IDs of res.Payment elements. List of references to Payment structures which were used to cover the cost of air extra. items: type: string example: - id01 - id02 priceBreakdown: description: Full information about the price paid for the air extra. It included all price components like base, tax, deals etc. $ref: '#/definitions/sec.PriceBreakdown' type: description: Type of the issues document. $ref: '#/definitions/res.EnumAirExtraDocumentType' res.AirExtraDocumentCoupon: type: object description: Contains a coupon associated to an air extra document. Each coupon is linked wither to a passenger segment or passenger itinerary part. required: - number properties: number: format: int32 type: integer description: Coupon number assigned by the reservation system. passengerSegmentRef: type: string description: ID of res.PassengerSegment element. Reference to a PassengerSegment element to which this coupon applies to. example: id01 priceBreakdown: description: Pricing details of this coupon. $ref: '#/definitions/sec.PriceBreakdown' res.AirExtraPricing: type: object description: Contains a price for an air extra associated with a passenger or passengers. required: - airExtraRefs - totalFee properties: airExtraRefs: type: array description: Array of IDs of res.AirExtra elements. Reference to air extras selected by the passenger that this pricing applies to. items: type: string example: - id01 - id02 deal: type: array description: Applicable discounts. items: $ref: '#/definitions/sec.Deal' fareCalculationModeIndicator: description: Type of pricing, such as automatic or manual. $ref: '#/definitions/res.EnumFareCalculationModeIndicator' id: type: string description: Id attribute. pricingLevel: description: Level at which an ancillary is priced. This value must be provided when an ancillary is booked in the reservation system. $ref: '#/definitions/anc.EnumAncillaryPricingLevel' taxesIncludedInBase: type: boolean description: If true, taxes are included in the base price of an ancillary. totalFee: description: Total ancillary fee, which is UnitFee multiplied by AirExtra quantity and which could vary depending on the calculation rules defined in the configuration. $ref: '#/definitions/anc.TotalFee' unitFee: description: Unit ancillary fee, which could vary depending on the calculation rules defined in the configuration. $ref: '#/definitions/anc.TotalFee' res.AirExtraPricings: type: object description: Groups AirExtraPricing elements. required: - airExtraPricing properties: airExtraPricing: type: array description: Contains a price for an air extra associated with a passenger or passengers. items: $ref: '#/definitions/res.AirExtraPricing' res.AlternativeSegment: allOf: - $ref: '#/definitions/res.Segment' - type: object required: - segmentRefs properties: priorityListPassengerIds: type: array description: Array of IDs of res.Passenger elements. items: type: string example: - id01 - id02 segmentRefs: type: array description: Array of IDs of res.Segment elements. items: type: string example: - id01 - id02 description: An element of an itinerary part which represents a single alternative flight. res.AssociatedTicketNumber: type: object description: AssociatedTicketNumber. properties: associationType: type: string description: Association type. checkDigit: type: string description: Check Digit. couponNumber: type: string description: Coupon number. value: type: string example: '6072134245312' res.AuthorizationResult: type: object description: Result of card authorization. properties: approvalCode: minLength: 3 maxLength: 6 type: string description: Approval code assigned to the transaction. example: '231453' merchantAccountNumber: minLength: 1 maxLength: 128 type: string description: Account number of the merchant that is requesting verification. example: '10002000' responseCode: minLength: 1 maxLength: 128 type: string description: Authorization response code. example: APPROVED resultCodes: description: Authorization result codes. $ref: '#/definitions/res.ResultCodes' supplierId: minLength: 1 maxLength: 128 type: string description: Id of the supplier responsible for card authorization. example: WCRD supplierResponseCode: minLength: 1 maxLength: 128 type: string description: Response code from the supplier. example: '00' supplierTransactionId: minLength: 1 maxLength: 128 type: string description: Identifier of the transaction, in which authorization occurred on the supplier side. example: '100524101' res.BagTag: type: object description: Bag tag associated with checked-in baggage. required: - bagTagNumber - bagTagState properties: arrivalAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Destination of the flight. example: LHR bagTagNumber: pattern: ^([A-Z0-9a-z]{1,18})$ minLength: 1 maxLength: 18 type: string description: Bag tag number issued at check-in. bagTagState: description: Indicates a state of issued bag tag. $ref: '#/definitions/res.EnumBagTagState' departureAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Origin of the flight. example: LHR ancillaryBagType: type: string example: OTHER excludeFromSubsequentBagCalculation: type: boolean res.BaggageDisclosure: type: object description: Information about baggage allowances, excess baggage prices and embargos. properties: baggageEmbargo: description: Contains baggage embrogoes defined by the airline on a specific flight(s). Applicable to all passengers. $ref: '#/definitions/bag.BaggageEmbargo' carryOnBaggage: description: Allowances and pricing options for baggage that passengers can carry on to the aircraft cabin (also known as hand baggage or cabin baggage). $ref: '#/definitions/bag.CarryOnBaggage' checkedInBaggage: description: Allowances and pricing options for baggage delivered to an airline for transport in the aircraft cargo hold. $ref: '#/definitions/bag.CheckedInBaggage' res.BookingClassAvaialbility: type: object description: Lists the number of available seats in a particular booking class. properties: id: type: string description: Unique identifier for the booking class availability record. bookingClass: pattern: ^([A-Z])$ minLength: 1 maxLength: 1 type: string description: ClassOfService. value: format: int32 type: integer description: Number of available seats in a booking class. res.BookingClassUpgradeStatus: type: object description: Booking class upgrade status of a segment. properties: code: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Code of the unrecognized booking class upgrade status code. It is mandatory if status is set to OTHER. value: $ref: '#/definitions/res.EnumBookingClassUpgradeStatus' res.BookingStatus: type: object description: BookingStatus. properties: name: type: string description: name. value: type: string example: OK res.BusinessLoyaltyAccount: type: object description: Account linked to a loyalty program usually for small - medium size businesses. required: - memberAirline - memberId - programId properties: memberAirline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Code of the airline which maintains the business loyalty account. memberId: minLength: 1 maxLength: 32 type: string description: Account identifier. example: 734486W pin: minLength: 4 maxLength: 4 type: string description: PIN code associated with the account. example: 12AB programId: minLength: 1 maxLength: 32 type: string description: Business loyalty program identifier. Multiple programs can be maintained by the airline depending on its business model. example: ABCP res.CardReader: type: object description: Information about card reader used. required: - deviceId properties: chipCardIndicator: type: boolean description: Indicator of the card being a chip card. deviceId: minLength: 1 maxLength: 128 type: string description: Id of the physical device. example: VX17352843564 res.CheckedBaggage: type: object description: Single bag piece checked in by the passenger for particular travel portion. The bag isn't necessarily checked in for the flights the passenger is checked in. In some cases, such as late check-in or law regulations the bag is not guaranteed to travel on the same flight with the passenger or may require to be rechecked. properties: airExtraRefs: type: array description: Array of IDs of res.AirExtra elements. If the bag is not within the free bag allowance, requires a pre-registration or is considered a paid baggage due to some circumstances it may require to be backed up by 1 or more air extras (either paid or waived). items: type: string example: - id01 - id02 airline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Marketing airline code. example: K0 bagTag: description: Lists a single bag piece checked in by the passenger for particular travel portion. The bag is not necessarily checked in for the flights the passenger is checked in. In some cases, such as late check-in the bag is not guaranteed to travel on the same flight or may require recheck-in due to law regulations. $ref: '#/definitions/res.BagTag' baggageTagTypes: type: array description: Baggage type which is standardized by SSCI OS. items: $ref: '#/definitions/sec.BaggageTagType' freeBaggageAllowance: type: boolean description: Indicate if the baggage is within the free bag allowance. id: type: string description: Id attribute. size: description: Baggage size. $ref: '#/definitions/sec.Size' status: description: Indicates a status of the baggage. $ref: '#/definitions/res.EnumCheckedBaggageStatus' weight: description: Baggage weight. $ref: '#/definitions/sec.Weight' segmentRefs: type: array description: Array of IDs of res.Segment elements. The list of segment references that this baggage was checked in for. items: type: string example: - id01 - id02 res.Conjuctive: type: object properties: checkDigit: type: string number: type: string sequence: format: int64 type: integer res.CurrencyConversion: type: object properties: bankerBuyingRate: format: double type: number description: Monetary amount. example: 1 bankerSellingRate: format: double type: number description: Monetary amount. example: 1 iataClearingHouseRate: format: double type: number description: Monetary amount. example: 1 res.Customer: type: object properties: purchaser: $ref: '#/definitions/res.Purchaser' traveler: $ref: '#/definitions/res.Traveler' res.Deal: allOf: - $ref: '#/definitions/sec.Deal' - type: object required: - applyTo properties: applyTo: $ref: '#/definitions/res.DealApplicationRule' description: Represents discount details applicable to the price. res.DealApplicationRule: type: object description: Defines deal application rules. In general discount deals may be applied on different levels of itinerary (flight, itinerary part, itinerary) and may be linked to a subset of passengers. required: - travelPortion properties: passengerRefs: type: array description: Array of IDs of res.Passenger elements. If present, it indicates that discount applies to each passenger of specified type, otherwise it is for all passengers. items: type: string example: - id01 - id02 travelPortion: description: |- Portion of travel to which a deal is applied. The attribute 'type' determines which of the optional elements are present - ItineraryPartRefs is present if type=ITINERARY_PART - SegmentRefs is present if type=SEGMENT - If type=ITINERARY neither ItineraryPartRefs nor SegmentRefs is present - If type=FLIGHT, FlightRefs is present - If type=ITINERARY, neither ItineraryPartRefs nor FlightRefs is present. $ref: '#/definitions/res.TravelPortion' res.DiscountDetails: type: object properties: dealName: type: array description: Deal(s) applicable to itinerary pricing. items: type: string offerName: type: array description: Name of the offer that identifies the discount. items: type: string promotionCode: type: array description: Promotion code considered when request is processed. items: type: string res.EMDSegmentCoupon: type: object properties: emdCouponNumber: pattern: ^([0-9]{1,2})$ minLength: 1 maxLength: 2 type: string description: Number of EMD coupon used on the segment. example: '01' segmentRef: type: string description: ID of res.Segment element. Segment corresponding to the EMD coupon. example: id01 res.EMDSegmentCoupons: type: object properties: eMDSegmentCoupon: type: array description: List of coupons on each segment corresponding to the AE. items: $ref: '#/definitions/res.EMDSegmentCoupon' res.EditCode: type: object description: Detailed information about passenger or reservation. properties: code: minLength: 1 maxLength: 32 type: string description: An indicator stored on passenger or reservation level. id: type: string description: Id attribute. text: type: array description: Edit code detailed description. items: $ref: '#/definitions/res.EditCodeText' res.EditCodeText: type: object description: Edit code detailed description. properties: id: type: string description: Id attribute. lineId: minLength: 1 maxLength: 32 type: string description: Text line id. value: minLength: 1 maxLength: 512 type: string res.EditCodes: type: object description: Wrapper for edit codes. required: - editCode properties: editCode: type: array description: Detailed information about passenger or reservation. items: $ref: '#/definitions/res.EditCode' res.Eligibilities: type: object description: Contains different kinds of eligibility which may apply at different levels of an itinerary. properties: eligibility: type: array description: List of eligibilities. items: $ref: '#/definitions/res.Eligibility' res.Eligibility: type: object description: Represents a generic eligibility concept which may apply to a different entities at different levels e.g. passenger's eligibility for check-in or segment's eligibility for exchange. required: - type properties: notEligible: type: boolean description: Used to indicate that the eligibility does not apply. Not set or set to false if eligibility applies. example: true reason: type: array description: Description of the reason for the eligibility or lack of the eligibility (depends on the value of the notEligible flag). Main reason to introduce it was to provide a way to to indicate why a passenger is not eligible to check-in (e.g. missing passport data). items: $ref: '#/definitions/res.EligibilityViolationReason' type: description: Type of the eligibility e.g. CHECK_IN. example: CHECK_IN $ref: '#/definitions/res.EnumEligibilityType' res.EligibilityViolationReason: type: object description: Description of the reason for the eligibility or lack of the eligibility (depends on the value of the notEligible flag). Main reason to introduce it was to provide a way to to indicate why a passenger is not eligible to check-in (e.g. missing passport data). required: - category - message properties: category: pattern: ^([A-Z0-9_]{1,100})$ minLength: 1 maxLength: 100 type: string description: Category of the eligibility violation. E.g. for check-in it specifies the required document is missing. example: TOO_EARLY_FOR_CHECK_IN details: pattern: ^((([A-Z0-9_]{1,100})( )?)*)$ minLength: 1 maxLength: 500 type: string description: Optional details related to category. Content and format depends on the category. message: minLength: 1 maxLength: 512 type: string description: Detailed description of the violation. example: It is too early for check-in. property: type: array description: List of custom properties associated with provided category. Only properties documented for the category are returned. items: $ref: '#/definitions/res.Property' res.Email: type: object description: Phone number used to contact passenger. required: - address properties: address: minLength: 1 maxLength: 512 type: string description: Email address given by passenger. example: I'm medium string id: type: string description: Id attribute. languageCode: description: Code of language used for that email address. $ref: '#/definitions/res.EnumLanguageCode' segmentRefs: type: array description: Array of IDs of res.Segment elements. Reference to a segments (flights) for which the service has been requested. items: type: string example: - id01 - id02 syntheticIdentifier: minLength: 1 maxLength: 1000 type: string description: Artificially generated identifier required in rare cases to identify passenger when no other natural identifier can be selected. Once populated in the operation's response, it has to be send back in the request to subsequent service calls where operations on remarks are required. example: '4324143134214231412412' res.Emails: type: object description: Wrapper for contact email addresses. required: - email properties: email: type: array items: $ref: '#/definitions/res.Email' res.Emd: type: object description: Details of a EMD. required: - emdNumber properties: agent: description: Agent who issued EMD. $ref: '#/definitions/res.Agent' customer: type: array items: $ref: '#/definitions/res.Customer' emdCoupon: type: array description: Details of coupons linked to a emd. items: $ref: '#/definitions/res.EmdCoupon' emdNumber: description: Emd number. $ref: '#/definitions/sec.EmdNumber' fareCalculationDetails: type: string fareCalculationMode: type: string issueTime: format: date-time type: string description: LocalIssueDateTime is the date and time when the ticketing document was issued in the agent's city. miscellaneous: type: array items: $ref: '#/definitions/res.Miscellaneous' payment: type: array description: List of references to Payment structures which were used to cover the cost of emd. items: $ref: '#/definitions/res.TicketPayment' priceBreakdown: description: Full information about the price paid for the Emd. It included all price components like base, tax, fee etc. $ref: '#/definitions/res.TicketPriceBreakdown' reasonForIssue: type: string relatedDocument: type: array items: $ref: '#/definitions/res.RelatedDocument' reservation: description: Basic reservation data for which EMD was issued. $ref: '#/definitions/res.TicketingReservation' systemCreateDateTime: format: date-time type: string description: SystemCreateDateTime is the timestamp of when the document was created - in CST time zone. example: '2011-01-24T09:45:00' type: type: string res.ExchangeAvailability: type: object description: Contains the information about payable air extras and exchangeable EMDs which could cover them. required: - exchangeableEmds - payableAirExtraRefs properties: exchangeableEmds: type: array description: Lists the exchangeable EMD details. items: $ref: '#/definitions/res.ExchangeableEmd' payableAirExtraRefs: type: array description: Lists the IDs of payable air extras. items: type: string description: The ID of a payable air extra. example: - ae1 - ae2 res.ExchangeableEmd: type: object description: Contains the information about the exchangeable EMD and air extras covered by it. required: - emdNumber - airExtraRefs properties: emdNumber: minLength: 1 maxLength: 32 type: string description: The full EMD number. example: '00121250016462' airExtraRefs: type: array description: Lists the IDs of air extras. items: type: string example: - ae1 - ae2 res.EmdCoupon: type: object description: Represents a coupon associated with a emd. properties: classOfService: pattern: ^([A-Z])$ minLength: 1 maxLength: 1 type: string description: ClassOfService. example: Y couponNumber: pattern: ^([0-9]{1,2})$ minLength: 1 maxLength: 2 type: string description: Number of a coupon. example: '01' endLocation: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: EndLocation. example: LHR marketingFlightNumber: pattern: ^([0-9]{1,4})$ minLength: 1 maxLength: 4 type: string description: MarketingFlightNumber. example: '1234' marketingProvider: description: Contains MarketingProvider code that identifies the Marketing Carrier for each coupon as it was sold. $ref: '#/definitions/res.MarketingProvider' startDateTime: format: date-time type: string description: StartDateTime. startLocation: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: StartLocation. example: LHR res.EnumAirExtraDocumentType: type: string description: |- Type of a document issues for an ancillary. ELECTRONIC_MISC_DOCUMENT - It is the default type of document issued for an ancillary. MISCELLANEOUS_RECORD - Legacy type of document issued for ancillary booked as SSRs. OTHER - Not yet defined type. enum: - ELECTRONIC_MISC_DOCUMENT - MISCELLANEOUS_RECORD - OTHER res.EnumAirExtraType: type: string enum: - ANCILLARY - MISC_FEE res.EnumAirlineFactsType: type: string description: |- HOSTED - The fact (eg. SSR, OSI) is related to hosted (current) airline. This is equivalent of AFAX (Airline Facts) on host. OTHER_AIRLINE - The fact (eg. SSR, OSI) is related to non-hosted (other) airline. This is equivalent of GFAX (General Facts) on host. enum: - HOSTED - OTHER_AIRLINE res.EnumApplicableTransportationSecurityType: type: string description: |- Certain transportation security programs conducted by government's agencies may apply to a segment e.g. Redress number is applicable only for segments touching USA, Known Traveler Number may be applicable only to certain airlines and/or airports in the USA. REDRESS - Redress number as issued by the US government. A redress number is only necessary if a passenger name appears in the No-Fly list through no fault of his/her own (i.e., Jim Doe is on the list, but this is not THAT Jim Doe). KNOWN_TRAVELER - Participants of Known Traveler program are allowed to go through expedited security checkpoints, which will result in no longer needing to remove certain items. Once the TSA determines that a passenger is eligible for expedited screening, the TSA Pre logo or information is embedded in the barcode of the passenger's boarding pass. The TSA reads the TSA Pre logo or barcode at designated TSA PreCheck airport locations and eligible passengers may be directed to a lane where they will receive expedited screening. enum: - REDRESS - KNOWN_TRAVELER res.EnumBagTagState: type: string description: |- Available bag tag states. INACTIVE - Bag tag has already been issued but is inactive. ACTIVE - Bag tag has already been issued but is active. enum: - INACTIVE - ACTIVE res.EnumBookingClassUpgradeStatus: type: string description: |- Available booking class upgrade statuses for Segment. UPGRADED - Segment was successfully upgraded. WAITLISTED - Upgrade request is on the waitlist. REJECTED - Upgrade request was rejected. OTHER - Unrecognized status. enum: - UPGRADED - WAITLISTED - REJECTED - OTHER res.EnumCheckedBaggageStatus: type: string description: |- Available checked baggage statuses. CHECKED_IN - Bag tag has already been issued. NOT_CHECKED_IN - Bag tag hasn't been issued yet. enum: - CHECKED_IN - NOT_CHECKED_IN res.EnumCouponStatus: type: string description: |- List of available statuses of a coupon OK - - OK - OK FOR TRAVEL THE - OK - VCR STATUS CODE IS TURNED ON WHEN THE VCR IS INITIALLY CREATED. THE - OK - CODE WILL BE TURNED OFF FOR ALL COUPONS IF THE VCR IS VOIDED, OR FOR EACH VOIDED, OR AS EACH COUPON IS USED, PRINTED, OR EXCHANGED. USED - - USED - USED WHEN POST DEPARTURE PROCESSING (PDC) OCCURS IN SABRESONIC CHECK-IN, THE - USED - VCR STATUS CODE INDICATOR WILL BE TURNED ON. THE - USED - STATUS WILL TURN OFF THE -TICKET LIFTED/OND- INDICATOR. TRANSMISSION OF THE -USED/FLOWN- VIRTUAL COUPONS STATUS TO THE OFFLINE REPORTING SYSTEM WILL OCCUR NO EARLIER THAN 24 HOURS, AND NO LATER THAN 48 HOURS AFTER FLIGHT DEPARTURE. EXCHANGED - - EXCH - EXCHANGED FOR EVERY COUPON WHICH IS EXCHANGED, THE - EXCH - VCR STATUS CODE INDICATOR WILL BE TURNED ON AND WILL TURN OFF THE - OK - STATUS INDICATOR OR THE -CHECKED-IN/BP ISSUED- INDICATOR (IF PRESENT). VOID - - VOID - VOID IF THE VCR IS VOIDED, THE - VOID - VCR STATUS CODE INDICATOR IS TURNED ON, WHICH WILL TURN OFF THE - OK - INDICATOR FOR ALL COUPONS. CHECKED_IN - - CKIN - CHECKED-IN THE - CKIN - VCR STATUS CODE APPLIES ONLY TO TICKETLESS TRAVELER BOARDING PASSES. AS A BOARDING PASS IS ISSUED FOR EACH COUPON, THE - CKIN - STATUS WILL BE ACTIVATED. THE - CKIN - INDICATOR WILL TURN OFF THE -OK- INDICATOR. THE - CKIN- STATUS WILL BE TURNED OFF IF THE SEAT/BOARDING PASS IS RETURNED. CONTROLLED - - CTRL - CONTROL THE - CTRL - VCR STATUS CODE INDICATES WHO HAS CONTROL, AND/OR THAT THE ETKT/VCR IS UNDER ANOTHER CRS/AIRLINE'S CONTROL. NO_SEAT - - NS - NO SEAT THE - NS - VCR STATUS CODE INDICATES AN INFANT NOT OCCUPYING A SEAT. LIFTED - - LFTD - LIFTED AS EACH COUPON IS ELECTRONICALLY LIFTED, THE - LFTD - VCR STATUS CODE WILL BE TURNED ON. IF AN -XON- ENTRY (THE ENTRY TO REMOVE A PASSENGER FROM THE /ON/ LIST) IS MADE, THE -TICKET LIFTED/OND- STATUS WILL BE TURNED OFF. ALSO, THE -CHECKED-IN/BP ISSUED- STATUS INDICATOR WILL BE TURNED OFF WHEN THE - LFTD - STATUS IS TURNED ON. PRINTED - - PRT - PRINTED THE -PRT- VCR STATUS CODE INDICATOR WILL BE TURNED ON FOR EVERY COUPON WHICH IS PRINTED. WHEN THE -PRT- STATUS CODE IS TURNED ON, THIS WILL TURN OFF THE - OK - OR THE - CHECKED-IN/ BP ISSUED - INDICATOR (IF PRESENT). PRINTED_INTERLINE - - PRTX - PRINTED INTERLINE THE -PRTX- VCR STATUS CODE INDICATOR IS TURNED ON WITH INTERLINE E-TICKETING, WHEN YOUR PARTNER CARRIER PRINTS THE COUPON. NO_GO - - NOGO - NO-GO THE - NOGO - VCR STATUS INDICATOR WILL BE TURNED ON FOR EVERY COUPON THAT IS NO LONGER VALID FOR TRAVEL. THE - NOGO - STATUS IS THE RESULT OF THE REVOKE VCR ENTRY. THE - NOGO - STATUS WILL TURN OFF THE - OK - INDICATOR OR THE -CHECKED-IN/BP ISSUED- INDICATOR (IF PRESENT). REPRINTED - - RPRT - REPRINTED IF A PREVIOUSLY-PRINTED VCR IS REPRINTED, THIS - RPRT - VCR STATUS CODE INDICATOR WILL BE TURNED ON. REFUNDED - - RFND - REFUNDED THE - RFND - VCR STATUS CODE IS TURNED ON FOR EACH COUPON WHICH IS REFUNDED. TURNING ON - RFND - STATUS ON WILL TURN OFF -OK- STATUS. PARTIALLY_REFUNDED - - PRFD - PARTIALLY REFUNDED THE - PRFD - VCR STATUS CODE IS TURNED ON WHEN A TICKETING REPRESENTATIVE HAS MADE A TICKETING ENTRY AND INDICATED THAT A PARTIAL REFUND WILL ULTIMATELY BE ISSUED. STATUS WILL CHANGE TO - EXCH - ONCE THE REFUND MASK PROCESSING HAS BEEN COMPLETED. IRREGULAR_OPERATIONS - - IROP - IRREGULAR OPERATIONS IF YOUR CARRIER USES INTERLINE E-TICKETING, YOU WILL SEE THIS INDICATOR WHEN DISPLAYING A VCR IN YOUR PARTNER CARRIER?S DATABASE. THIS - IROP - STATUS INDICATES THAT THE OA CARRIER IS EXPERIENCING IRREGULAR OPERATIONS. UNABLE_TO_LOCATE - - UTL - UNABLE TO LOCATE THE - UTL - VCR STATUS CODE MEANS THAT THE VCR DATA IS MORE THAN SEVEN DAYS OLD AND IS NO LONGER AVAILABLE FOR VIEWING. enum: - OK - USED - EXCHANGED - VOID - CHECKED_IN - CONTROLLED - NO_SEAT - LIFTED - PRINTED - PRINTED_INTERLINE - NO_GO - REPRINTED - REFUNDED - PARTIALLY_REFUNDED - IRREGULAR_OPERATIONS - UNABLE_TO_LOCATE res.EnumDocumentHolderType: type: string description: |- PRIMARY - Indicates that the passenger is the main (primary) holder of a given document. This means that the passenger actually owns the document and that he or she can use it without any limitations. SECONDARY - Indicates that the passenger is the secondary holder of a given document - in other words he or she doesn't own the actual document but is listed there and is authorized to use it when accompanied by the primary holder. enum: - PRIMARY - SECONDARY res.EnumDocumentInputMethod: type: string description: |- SCAN - Document data is collected by scanning SWIPE - Document data is collected by swiping MANUAL - Document data is entered manually. enum: - SCAN - SWIPE - MANUAL res.EnumEligibilityType: type: string description: |- Available types of eligibilities EXCHANGE - Eligible for exchange - applies on itinerary or segment level REFUND - Eligible for refund - applies on itinerary level BAGGAGE_CHECK_IN - Eligible for baggage check-in - applies on reservation level. Supported categories: AMBIGUOUS_BAGGAGE_ROUTE - baggage check in is not possible due to ambiguous baggage route BAGGAGE_CHECK_IN_WINDOW_CLOSED - BAGGAGE_CHECK_IN_WINDOW_NOT_YET_OPEN - baggage check in window is not opened yet and baggage check-in is not allowed. ALL_SEGMENTS_ARE_NOT_ELIGIBLE_FOR_BAGGAGE_CHECK_IN - Following properties are supported: TIME_TO_OPEN (number) - if present, specifies estimated time in seconds when baggage check-in window is opened ALLOWED_BAG_TAG_ISSUANCE_PRIOR_TO_PAYMENT - bag tag can be issued before payment CHECK_IN - Eligible for check-in - applies on passenger, segment or itinerary level. Supported categories: PASSENGER_COUNT_EXCEEDS_MAXIMUM_ALLOWED - INHIBITED_SSR_FOUND - PASSENGER_NAME_NOT_UNIQUE_IN_RESERVATION - INTERNATIONAL_CHECKIN_IS_NOT_ALLOWED - FIRST_SEGMENT_OA - CHECK_IN_WINDOW_OPEN - CHECK_IN_WINDOW_CLOSED - CHECK_IN_WINDOW_NOT_YET_OPEN - check in window is not opened yet and check-in is not allowed. Following properties are supported: TIME_TO_OPEN (number) - if present, specifies estimated time in seconds when check-in window is opened SEGMENT_RESTRICTED - PASSENGER_NEEDS_MANUAL_DOCS_VERIFICATION - PASSENGER_DOES_NOT_HAVE_REQUIRED_EMERGENCY_CONTACT - PASSENGER_DOES_NOT_HAVE_REQUIRED_EMAIL_ADDRESS - PASSENGER_DOES_NOT_HAVE_REQUIRED_SECONDARY_PHONE_NUMBER - PASSENGER_DOES_NOT_HAVE_PRE_SCREENING_DATA - PASSENGER_DOES_NOT_HAVE_DESTINATION_ADDRESS_DATA - PASSENGER_DOES_NOT_HAVE_RESIDENCE_ADDRESS_DATA - PASSENGER_DOES_NOT_HAVE_RESIDENCE_COUNTRY - PASSENGER_DOES_NOT_HAVE_REQUIRED_IDENTITY_DOCUMENTS - PASSENGER_ASSOCIATED_WITH_INFANT - INVALID_VCR - DUPLICATED_VCR - NON_REVENUE_PNR_NRSA - SEGMENT_HAS_BEEN_CANCELLED - SEGMENT_NOT_VALID_FOR_CHECKIN_THRU_IN_ACS - ASSOCIATED_PASSENGER_NOT_ELIGIBLE - INHIBITED_PASSENGER_TYPE - ONE_OR_MORE_SEGMENTS_NOT_OPEN_FOR_CHECK_IN - ALL_SEGMENTS_ARE_NOT_ELIGIBLE_FOR_CHECK_IN - SEGMENT_NOT_AVAILABLE_FOR_SELF_CHECK_IN - MISSING_PASSENGER_WEIGHT_CATEGORY - SEGMENT_NOT_HOSTED - PASSENGER_HAS_UNPAID_ANCILLARY - CHECKIN_INHIBITED_FOR_ORIGIN_AND_POINT_OF_SALE - ESTA_VALIDATION_FAILED - ADDITIONAL_VERIFICATION_REQUIRED - some reservation statuses are not known so additional verification should be triggered explicitly SELF_SERVICE_CHECK_IN_NOT_AVAILABLE - passenger needs to visit an agent to continue check-in process PASSENGER_DOES_NOT_HAVE_VISA - visa is required Following properties are supported: COUNTRY_CODE (string) - if present, code of the country for which visa is required, COUNTRY_CONDITIONAL (string) - if present, code of the country for which visa is required and Timatic status is CONDITIONAL, COUNTRY_NOT_OK_TO_BOARD (string) - if present, code of the country for which visa is required and Timatic status is NOT_OK_TO_BOARD. PASSENGER_DOES_NOT_HAVE_PRC - DOCUMENT_VERIFICATION_REQUIRED - passenger documents have not yet been verified SECURITY_CLEARANCE_STATUS - Status of security clearance process for passenger. Informs whether security clearance process failed or verification should be triggered DOCUMENT_FIRST_NAME_MISMATCH - Following properties are supported: DocumentType (string) - if present, specifies the mismatched document DOCUMENT_LAST_NAME_MISMATCH - Following properties are supported: DocumentType (string) - if present, specifies the mismatched document DOCUMENT_FIRST_AND_LAST_NAME_MISMATCH - Following properties are supported: DocumentType (string) - if present, specifies the mismatched document BOARDING - Eligible for boarding an aircraft - applies on passenger level BOARDING_PASS_INHIBITED_RESTRICTED_AIRPORT_OR_FLIGHT - Boarding pass not provided due to restrictions set on the airport or flight. BOARDING_PASS_INHIBITED_CREDIT_CARD_VALIDATION_REQUIRED - Credit card validation required to get boarding pass. BOARDING_PASS_INHIBITED_SELECTEE - Boarding pass not provided - passenger selected for enhanced security screening. LOUNGE - Eligible for airport lounge - applies on passenger flight level. SEAT_UPDATE - Eligibility to update some parts of the reservation - applies on passenger, segment or itinerary level. Supported categories: SEAT_SELECTION_RESTRICTED_FOR_BOOKING_CLASS - Seat selection on particular segment is inhibited for the passenger due to their booking class. ANCILLARY_PURCHASE - Eligible for ancillary purchase - applies on the reservation level. Supported categories: INTERLINE_OR_CODESHARE_SEGMENT_PRESENT - purchase of ancillaries in the interline or codeshare reservation could mistakenly bring revenue to the incorrect airline. LOCATION_NOT_SUPPORTED - ancillaries are not offered for purchase in given location. CANCEL_FEE_WAIVER - Eligible to cancel the trip without fee. CHANGE_FEE_WAIVER - Eligible to change the trip without fee. AUTO_RETURN_CHECK_IN_WAIVER - Eligible to waive check-in for an auto return flight. Can be applied on a ItineraryPart. STAND_BY - Eligible for standby - applies to reservation level. Supported categories: ALLOWED_VOLUNTARY_STANDBY. enum: - EXCHANGE - REFUND - BAGGAGE_CHECK_IN - CHECK_IN - BOARDING - LOUNGE - SEAT_UPDATE - ANCILLARY_PURCHASE - CANCEL_FEE_WAIVER - CHANGE_FEE_WAIVER - AUTO_RETURN_CHECK_IN_WAIVER - STAND_BY res.EnumFareCalculationModeIndicator: type: string enum: - AUTOPRICED - MANUAL_PRICING - AUTOMATIC_PRICING_MANUAL_TAXES res.EnumGenericSpecialRequestMessageType: type: string description: Type of Generic Special Request that can be either Special Service Request or Other Supplementary Information. enum: - SSR - OSI res.EnumGenericSpecialRequestStatus: type: string description: |- PENDING - The special service has been selected by the passenger and has not been fulfilled yet. FULFILLED - The special service has been selected by the passenger and is fulfilled. WAIVED - The special service has been selected by the passenger and it was waived. VERIFICATION - The special service has been selected by the passenger and is waiting for verification in order to be pending or rejected. REJECTED - The special service has been selected by the passenger but cannot be fulfilled. UNSUPPORTED - The special service has unsupported status. enum: - PENDING - FULFILLED - WAIVED - VERIFICATION - REJECTED - UNSUPPORTED res.EnumItineraryPricingType: type: string enum: - COMBINED - PER_ITINERARY_PART res.EnumLanguageCode: type: string description: |- Defines languages that can be used in email communications with passengers. EN - English NL - Dutch FR - French DE - German IT - Italian ES - Spanish PT - Portuguese. enum: - EN - NL - FR - DE - IT - ES - PT res.EnumPassengerFlightStatus: type: string enum: - NOT_CHECKED_IN - CHECKED_IN - BOARDED - OFFLOADED - ON_PRIORITY_LIST - UNKNOWN res.EnumPaymentCardInternetTransactionVerification: type: string description: |- Payment card Internet transaction verification protocol. THREE_DOMAIN_SECURE - 3-D Secure. JSECURE - J/Secure. enum: - THREE_DOMAIN_SECURE - JSECURE res.EnumPaymentStatus: type: string description: |- INITIAL - Is set when payment is not yet submitted. ERROR - Payment failed with error. UNKNOWN - The status in unknown. The system is unable to determine if payment was successful or not. ON_HOLD - Payment is on-hold and has to be confirmed to complete the reservation. AUTHORIZED - Payment was successful and authorized. REFUNDED - Payment has been refunded. enum: - INITIAL - ERROR - UNKNOWN - ON_HOLD - AUTHORIZED - REFUNDED res.EnumRelatedDocumentType: type: string description: Related document type. enum: - CONJUNCTIVE - ORIGINAL - EXCHANGE - REFUND - LINKED - MISCELLANEOUS res.EnumRemarkCategory: type: string description: Remark category. enum: - ENDORSEMENTS - MANUAL - PAYMENT - ORIGINALISSUE - PREPAID - PASSENGER - OTHER - PRIVATEFARETEXT res.EnumRemarkType: type: string description: Type of Remarks supported by PNR. enum: - HISTORICAL - HIDDEN - BASIC - QUEUE_PLACE - CLIENT_ADDRESS - DELIVERY_ADDRESS - INVOICE - ITINERARY - INTERFACE - FILLER - CODED - PRINT_ON_TICKET - INVOICE_SEGMENT_ASSOC - ITINERARY_SEGMENT_ASSOC - FORM_OF_PAYMENT - CORPORATE res.EnumReservationStatus: type: string enum: - CONFIRMED - STANDBY res.EnumResidencyDocumentType: type: string description: Defines a set of types of residency documents. enum: - ALIENS_PASSPORT - REENTRY_PERMIT - RESIDENCE_PERMIT - PERMANENT_RESIDENT_RESIDENT_ALIEN_CARD_FORM_I_551 res.EnumRevenueType: type: string description: |- Defines type of the reservation in terms of the revenue it gives to the airline. Reservation can be either revenue (where passengers pay for their seats) or non-revenue type. There is no way to create reservation which mixes revenue and non-revenue passengers. It applies to air seats only. REVENUE - Indicates revenue reservation i.e. all passengers pay for their seats. NON_REVENUE - Indicates non-revenue reservation i.e. all passengers get their air seats for free e.g. airline employees. enum: - REVENUE - NON_REVENUE res.EnumSegmentSeatStatus: type: string description: |- Status of air seats on a segment. CONFIRMED - Seats are confirmed. STANDBY - Seat are on standby. enum: - CONFIRMED - STANDBY res.EnumSegmentStatus: type: string description: List of available sector statuses. enum: - CONFIRMED - DESIRED - STANDBY - OTHER - FLOWN - CANCELLED - ON_HOLD - SCHEDULE_CHANGE - SOLD_SOLD - NEED_NEED - NON_REVENUE res.EnumStayType: type: string description: Defines a set of reasons for country visiting. enum: - BUSINESS - VACATION - DUTY res.EnumTimaticDocumentType: type: string description: IATA-defined document types that are supported by the TIMATIC process. enum: - PASSPORT_NORMAL - ALIENS_PASSPORT - AUTHORIZATION_FOR_PAROLE_OF_AN_ALIEN_INTO_THE_UNITED_STATES - BIRTH_CERTIFICATE - BRITISH_CITIZEN_PASSPORT - BRITISH_NATIONAL_OVERSEAS_PASSPORT - BRITISH_OVERSEAS_CITIZEN_PASSPORT - BRITISH_OVERSEAS_TERRITORIES_CITIZEN_PASSPORT - BRITISH_PROTECTED_PERSON_PASSPORT - BRITISH_SUBJECT_PASSPORT - CARIBBEAN_DEVELOPMENT_BANK_TRAVEL_CERTIFICATE - CERTIFICATE_OF_CITIZENSHIP - CERTIFICATE_OF_IDENTITY - CERTIFICATE_OF_NATURALIZATION - CN_EXIT_AND_ENTRY_PERMIT - CN_TRAVEL_PERMIT_TO_HK_AND_MO_ONE_WAY_PERMIT - CREW_GENERAL_DECLARATION_FORM - CREW_MEMBER_CERTIFICATE - CREW_MEMBER_ID_CARD - CREW_MEMBER_LICENCE - DOCUMENT_OF_IDENTITY - EMERGENCY_PASSPORT - HELLENIC_POLICE_ID_CARD - HUI_XIANG_ZHENG - INTERPOL_ID_CARD - INTERPOL_PASSPORT - KINDERAUSWEIS_WITH_PHOTOGRAPH - KINDERAUSWEIS_WITHOUT_PHOTOGRAPH - LAISSEZ_PASSER - LAISSEZ_PASSER_ISSUED_BY_THE_UNITED_NATIONS - LU_BAO_ZHENG - LU_XING_ZHENG - MILITARY_ID_CARD - MILITARY_IDENTITY_DOCUMENT - NATIONAL_ID_CARD - NEXUS_CARD - NOTARIZED_AFFIDAVIT_OF_CITIZENSHIP - OAS_OFFICIAL_TRAVEL_DOCUMENT - OFFICIAL_PHOTO_ID - PASSPORT_CARD - PASSPORT_CONSULAR - PASSPORT_DIPLOMATIC - PASSPORT_HONG_KONG_SAR_CHINA - PASSPORT_MACAO_SAR_CHINA - PASSPORT_OFFICIAL - PASSPORT_SERVICE - PASSPORT_SPECIAL - PERMIT_TO_RE_ENTER_THE_USA - PUBLIC_AFFAIRS_HK_AND_MO_TRAVEL_PERMIT - SEAMAN_BOOK - TAI_BAO_ZHENG - TEMPORARY_PASSPORT - TEMPORARY_TRAVEL_DOCUMENT - TITRE_DE_VOYAGE - TRANSPORTATION_LETTER - TRAVEL_CERTIFICATE - TRAVEL_DOCUMENT_CONVENTION_1951 - TRAVEL_DOCUMENT_CONVENTION_1954 - TRAVEL_DOCUMENT_PALESTINIAN_REFUGEES - TRAVEL_DOCUMENT_RED_CROSS - TRAVEL_PERMIT - TRAVEL_PERMIT_TO_FROM_HK_AND_MO - UNMIK_TRAVEL_DOCUMENT - US_REFUGEE_TRAVEL_DOCUMENT - VISIT_PERMIT_FOR_RESIDENTS_OF_MACAO_TO_HKSAR - VOTERS_REGISTRATION_CARD - YELLOW_FEVER_VACCINATION_CERTIFICATE res.EnumTimaticSectionType: type: string description: IATA-defined Timatic verification section type. enum: - PASSPORT - VISA - HEALTH - OTHERS - EVALUATION_RESPONSE res.EnumTimaticStatus: type: string description: Represents status of Timatic verification. enum: - NOT_OK_TO_BOARD - CONDITIONAL - OK_TO_BOARD - OVERRIDDEN res.EnumWeightCategory: type: string description: Identifies the weight category of a passenger to be used by the aircraft balancing logic. enum: - ADULT_MALE - ADULT_FEMALE - CHILD - INFANT res.Equivalent: allOf: - $ref: '#/definitions/res.RawTicketingAmount' - type: object properties: currencyConversion: $ref: '#/definitions/res.CurrencyConversion' res.FeeProvider: type: object properties: checkDigit: type: string name: type: string number: type: string value: type: string example: VA res.FormattedLoungeCard: type: object description: Pre-formatted lounge card representation e.g. as an image. properties: image: description: Lounge card image. $ref: '#/definitions/sec.BinaryData' pectab: description: Lounge card formatted in PECTAB. $ref: '#/definitions/chk.Pectab' res.GenericSpecialRequest: type: object description: Representation of Generic Special Request made by passenger. properties: airlineCode: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Two-letter code of the airline related to this Special Request. example: K0 airlineFactsType: description: Typ of Generic Special Request. $ref: '#/definitions/res.EnumAirlineFactsType' code: minLength: 1 maxLength: 128 type: string description: GenericSpecialRequest code from PNR. example: I'm short string freeText: minLength: 1 maxLength: 4096 type: string description: Text content of the GenericSpecialRequest. example: I'm long string fullText: minLength: 1 maxLength: 4096 type: string description: Full text content of the GenericSpecialRequest. example: I'm long string id: type: string description: Id attribute. messageType: description: SSR or OSI type of Generic Special Request. $ref: '#/definitions/res.EnumGenericSpecialRequestMessageType' numberInParty: format: int64 type: integer description: NumberInParty of the GenericSpecialRequest. segmentRefs: type: array description: Array of IDs of res.Segment elements. Reference to a segments (flights) for which the service has been requested. items: type: string example: - id01 - id02 status: description: Status of the SpecialRequest. $ref: '#/definitions/res.GenericSpecialRequestStatus' syntheticIdentifier: minLength: 1 maxLength: 1000 type: string description: Artificially generated identifier required in rare cases to identify passenger when no other natural identifier can be selected. Once populated in the operation's response, it has to be send back in the request to subsequent service calls where operations on remarks are required. example: '4324143134214231412412' ticketNumber: description: Number of a ticket related to this Special Request. $ref: '#/definitions/sec.TicketNumber' res.GenericSpecialRequestStatus: type: object properties: statusCode: minLength: 1 maxLength: 32 type: string description: Tiny string 1 to 32 characters in length. example: HD value: $ref: '#/definitions/res.EnumGenericSpecialRequestStatus' res.GenericSpecialRequests: type: object description: Wrapper for Special Services requested by a passenger. required: - genericSpecialRequest properties: genericSpecialRequest: type: array items: $ref: '#/definitions/res.GenericSpecialRequest' res.GroupReservationDetails: type: object description: Details of a group reservation / corporate PNR. required: - name - numberOfSeatsRemaining - size properties: name: type: string description: Name of a group. example: Sabre business trip numberOfSeatsRemaining: format: int64 type: integer description: Number of seats remaining in a group. It is equal to the difference between size of the group and the current number of passengers in the group. example: 10 size: format: int64 type: integer description: Size of a group (maximum number of passengers that can be present in this group). example: 10 res.Features: type: object description: Contains information about supported features. properties: details: type: object description: Contains details about supported features in the form of a map (key, value). `SEAT_EMD_EXCHANGES` key indicates whether Seat AirExtra EMD exchanges are enabled. additionalProperties: type: string res.Indicators: type: object properties: consumed: type: string feeOverride: type: string taxExempt: type: string res.IropContact: type: object description: Wrapper for irop contact information lists. properties: emails: $ref: '#/definitions/res.Emails' phones: $ref: '#/definitions/res.Phones' refusals: $ref: '#/definitions/res.Refusals' res.IssueTime: type: object description: Local date and time of ticket issuance. properties: useForPricing: type: boolean description: Indicates if this date and time should be used for pricing. example: true value: format: date-time type: string example: '2011-01-24T09:45:00' res.SegmentGroup: type: object description: Contains group of segments. required: - id - segmentIds - throughCheckIn properties: id: type: string description: Segment group unique identifier. example: sg1 segmentIds: type: array description: Lists the IDs of segments in a group. items: type: string example: - s1 - s2 throughCheckIn: type: boolean description: If true, the segments in the group will be processed during through check-in. example: true res.Itinerary: type: object description: Represents an itinerary linked to the reservation. required: - itineraryPart properties: eligibilities: description: Flags which indicate different kind of eligibility which may apply at the itinerary level. $ref: '#/definitions/res.Eligibilities' itineraryPart: type: array description: Portion of the itinerary to be searched for which a baggage price is requested, or to identify any corresponding ancillaries. ItineraryPart is a mandatory element, particularly if the RecordLocator is missing. If the itinerary part is provided with the RecordLocator, it must reflect the itinerary from the reservation request. items: $ref: '#/definitions/res.ItineraryPart' segmentGroups: type: array description: Lists the group fo segments. items: $ref: '#/definitions/res.SegmentGroup' res.ItineraryPart: type: object description: 'Represents single part of an itinerary e.g. roundtrip has two parts: outbound and inbound.' required: - type properties: alternativeSegment: type: array description: List of alternative segments. items: $ref: '#/definitions/res.AlternativeSegment' eligibilities: description: Flags which indicate different kind of eligibility which may apply at the itinerary part level. $ref: '#/definitions/res.Eligibilities' id: type: string description: Id attribute. marriageGroup: type: array description: Group of 'married' flights. Many airlines link connection flights together by terming them as 'married' segments. When two or more segments are married, they must be processed as one unit. For example, segments must be moved, cancelled, and/or priced together (as one unit). items: $ref: '#/definitions/res.MarriageGroup' segment: type: array description: List of segments. items: $ref: '#/definitions/res.Segment' type: description: Indicates type of an itinerary part e.g. outbound. example: OUTBOUND $ref: '#/definitions/sec.EnumItineraryPartType' pastSegment: type: array description: List of some past segments that might still be useful to display. items: $ref: '#/definitions/res.Segment' res.ItineraryPartPricing: type: object description: Pricing of the itinerary part. It is populated in the redemption booking scenario when different conversion ratios per itinerary parts are configured. required: - itineraryPartRef - passengerFare properties: deal: type: array description: Applicable discounts. items: $ref: '#/definitions/res.Deal' itineraryPartRef: type: string description: ID of res.ItineraryPart element. example: id01 passengerFare: type: array description: Lists the fare details for a single-requested passenger type. The amounts returned in this structure are for the passenger quantity specified in the request. items: $ref: '#/definitions/res.PassengerFare' res.ItineraryPricing: type: object description: Contains pricing of the itinerary. In most cases, it is a combined pricing for the whole itinerary broken down by passengers. In the redemption booking scenario it may be broken down by itinerary parts in order to support different conversion ratios per itinerary parts. Either ItineraryPartPricing elements or PassengerFare & DealDiscount are present. required: - type properties: deal: type: array description: Applicable discounts. items: $ref: '#/definitions/res.Deal' dealName: type: array description: Deal(s) applicable to itinerary pricing. items: type: string itineraryPartPricing: type: array description: Pricing of the itinerary part. It is populated in the redemption booking scenario when different conversion ratios per itinerary parts are configured. items: $ref: '#/definitions/res.ItineraryPartPricing' passengerFare: type: array description: Lists the fare details for a single-requested passenger type. The amounts returned in this structure are for the passenger quantity specified in the request. items: $ref: '#/definitions/res.PassengerFare' type: description: Type of the itinerary pricing. $ref: '#/definitions/res.EnumItineraryPricingType' res.KnownTraveler: type: object description: Known traveler structure parsed from host data e.g. /K/123456///US. properties: applicableCountryCode: pattern: ^([A-Z]{2,3})$ minLength: 2 maxLength: 3 type: string description: Applicable country code. example: PL number: pattern: ^([a-zA-Z0-9]{5,25})$ minLength: 5 maxLength: 25 type: string description: Identifies the Participants of Known Traveler program are allowed to go through expedited security checkpoints, which will result in no longer needing to remove certain items. example: '123456' res.LoungeCard: type: object description: Contains lounge card details. Certain information part of the parent element are not inlcuded in the lounge card details to avoid duplication. properties: formattedLoungeCard: description: Pre-formatted lounge card representation e.g. as an image. $ref: '#/definitions/res.FormattedLoungeCard' res.MarketingProvider: type: object description: Contains MarketingProvider code that identifies the Marketing Carrier for each coupon as it was sold. properties: checkDigit: type: string example: '4' name: type: string example: AA DO NOT TKT number: type: string example: '795' value: type: string example: VA res.MarriageGroup: type: object required: - segmentRefs properties: segmentRefs: type: array description: Array of IDs of res.Segment elements. At least two segments have to be provided here and they have to be in sequence. items: type: string example: - id01 - id02 res.Miscellaneous: type: object properties: associatedTicketNumber: $ref: '#/definitions/res.AssociatedTicketNumber' emdCoupon: type: array items: $ref: '#/definitions/res.EmdCoupon' fee: $ref: '#/definitions/res.MiscellaneousFee' optionalService: $ref: '#/definitions/res.OptionalService' tax: type: array items: $ref: '#/definitions/res.Taxes' res.MiscellaneousFee: type: object properties: base: description: Identifies the base fee amount associated to the item or service which does not include taxes. $ref: '#/definitions/res.RawTicketingAmount' code: type: string description: PRAS code associated to the service or item. coupon: format: int64 type: integer description: Coupon. description: type: string description: Description of the purchased item or service. equivalent: description: Identifies the equivalent or converted fee amount associated to the item or service which does not include taxes. $ref: '#/definitions/res.RawTicketingAmount' quantity: format: int64 type: integer description: The number of items purchased per PRAS code. total: description: The total fee amount associated to the service including taxes. $ref: '#/definitions/res.RawTicketingAmount' totalTax: description: The total fee taxes associated to the item or service purchased. $ref: '#/definitions/res.RawTicketingAmount' res.NonRevenuePassengerInfo: type: object description: Additional details available only for non-revenue passengers. required: - priorityCode properties: priorityCode: minLength: 1 maxLength: 32 type: string description: Indicates the Airline specific code used to prioritize non-revenue passenger when requesting seats. example: ABC seniorityDate: minLength: 1 maxLength: 32 type: string description: Indicates the airline employee hire date details. This format varies with each airline. example: '2001' upgradeCode: minLength: 1 maxLength: 32 type: string description: Identifies the airline specific code which defines cabin upgrade rules for non-revenue passenger when requesting seats. example: UP1 res.OptionalService: type: object properties: feeProvider: $ref: '#/definitions/res.FeeProvider' group: type: string indicators: $ref: '#/definitions/res.Indicators' journeyType: type: string reason: type: string res.Passenger: type: object description: Contains details about a single passenger and their data stored in the reservation record. required: - personName - type properties: airExtra: type: array description: Lists details on either passenger level air extra not associated to any flight (for instance a hold fee) or an air extra that may be associated to multiple passenger segments. items: $ref: '#/definitions/res.AirExtra' airExtraBundle: type: array description: Lists a group of AirExtra elements associated in a parent-child relationship. Bundles can contain AirExtra elements that are booked on any reservation level e.g. passenger or passenger-segment. items: $ref: '#/definitions/res.AirExtraBundle' airExtraDocument: type: array description: Documents issued for an air extras booked for a passenger. items: $ref: '#/definitions/res.AirExtraDocument' baggagePoolId: format: int32 type: integer description: Identifies the baggage pool ID used to group passengers that share theirs free baggage allowance. Populated based on the first PassengerSegment. checkedBaggage: type: array description: Lists a single bag piece checked in by the passenger for particular travel portion. The bag is not necessarily checked in for the flights the passenger is checked in. In some cases, such as late check-in the bag is not guaranteed to travel on the same flight or may require recheck-in due to law regulations. items: $ref: '#/definitions/res.CheckedBaggage' contactDetails: description: Identifies the passengers contact details which includes addresses, emails, phones. Residential and destination address (which may be required for check-in) should be stored here. $ref: '#/definitions/sec.ContactDetails' contactTracingDetails: description: Identifies the passengers contact details which includes addresses, emails, phones. Residential and destination address (which may be required for check-in) should be stored here. $ref: '#/definitions/sec.ContactTracingDetails' dateOfBirth: format: date type: string description: Identifies the date of birth which is mandatory for infants and optional for children. It is not used for other types. example: '1975-12-11' eligibilities: description: Eligibilities of the passenger. $ref: '#/definitions/res.Eligibilities' exchangeAvailability: $ref: '#/definitions/res.ExchangeAvailability' emd: type: array description: Emd details. items: $ref: '#/definitions/res.Emd' emergencyContact: type: array description: Contact data which should be used in case of emergency. Empty list indicates that the passenger was not asked to provide emergency contact. Another situation which may occur is when a passenger was asked to provide emergency contact but refused to provide it. In this case, the response will contain a single EmergencyContact element with no child elements. items: $ref: '#/definitions/sec.EmergencyContact' fiscalCode: minLength: 1 maxLength: 128 type: string description: The Passengers personal fiscal code issued by government for taxpaying purposes. example: ABC1234567 gender: description: Gender of the passenger. example: MALE $ref: '#/definitions/sec.EnumGender' genericSpecialRequests: description: Special services requested by the passenger e.g. special meal. $ref: '#/definitions/res.GenericSpecialRequests' id: type: string description: Id attribute. iropContact: description: Contact data provided by passenger in case of irregular operations. $ref: '#/definitions/res.IropContact' loyaltyAccount: type: array description: Loyalty account details of the user performing the service request. items: $ref: '#/definitions/sec.LoyaltyAccount' nameNumber: pattern: ^([0-9]{1,2}\.[0-9]{1,2})$ minLength: 3 maxLength: 5 type: string description: Name number as it is in the PNR. passengerDocument: type: array description: Contains associate document data as it exists on a physical document with some facts that are not directly related to the actual data. For instance it may describe the way the document data is entered or describe the type of ownership that the passenger has over that document. items: $ref: '#/definitions/res.PassengerDocument' passengerItineraryParts: description: The data element used to associate a passenger with a particular itinerary part (leg). $ref: '#/definitions/res.PassengerItineraryParts' passengerRef: type: string description: ID of res.Passenger element. Reference to Passenger that is associated for that passenger. E.g. populated when person is lap infant. example: id01 passengerSegments: description: Identifies the data element used to associate a passenger with a particular segment (flight). $ref: '#/definitions/res.PassengerSegments' personName: description: Passenger name. $ref: '#/definitions/sec.PersonName' recordLocator: pattern: ^([A-Za-z0-9]{5,8})$ minLength: 5 maxLength: 8 type: string description: An identifier of the Passenger Name Record (PNR) in the reservation system. There are certain cases when record locator is not populated e.g. when used in an operation which creates a new reservation. example: ABCDEFG requestedType: description: Identifies the requested passenger type. This can be different than the actual one at certain situations. example: SENIOR $ref: '#/definitions/sec.EnumPassengerType' syntheticIdentifier: minLength: 1 maxLength: 1000 type: string description: Artificially generated identifier required in rare cases to identify passenger when no other natural identifier can be selected. Normally, nameNumber should be populated but is some cases it might be not available. Once populated in the operation's response, it has to be send back in the request to subsequent service calls where Passenger data is required. example: q5kJn+U8GX+T7m5c4FO5jPjeh1o3HNbZZLtPl8Ux/eY= ticket: type: array description: Ticket details. Each passenger in the PNR has a ticket. items: $ref: '#/definitions/res.Ticket' timaticVerificationResults: description: Results of itinerary Timatic verification. $ref: '#/definitions/res.TimaticVerificationResults' transportationSecurity: description: Groups passenger data related to air transportation security. Different countries may have different requirements/regulations. $ref: '#/definitions/res.TransportationSecurity' type: description: Identifies the actual type of the passenger i.e. adult, child etc. example: ADULT $ref: '#/definitions/sec.EnumPassengerType' weightCategory: description: Identifies the weight category of a passenger to be used by the aircraft balancing logic. $ref: '#/definitions/res.EnumWeightCategory' associationId: format: int32 type: integer description: Passenger name association id number as it is in the PNR. requestedSearchCriteria: description: Indicates whether passenger fulfill a search criteria (e.g. TICKET_NUMBER) based on which the entire reservation was found. It applies to cases where the search produces only basic reservation data (i.e. no ticket info). $ref: '#/definitions/res.RequestedSearchCriteria' boardingPasses: type: array description: Lists boarding pass elements. items: $ref: '#/definitions/chk.MultiSegmentsBoardingPass' res.RequestedSearchCriteria: type: object description: Indicates whether passenger fulfill a search criteria (e.g. TICKET_NUMBER) based on which the entire reservation was found. It applies to cases where the search produces only basic reservation data (i.e. no ticket info). properties: fulfilled: type: boolean description: If true, the passenger fulfills requested search criteria. res.PassengerDocument: type: object description: Contains associate document data as it exists on a physical document with some facts that are not directly related to the actual data. For instance it may describe the way the document data is entered or describe the type of ownership that the passenger has over that document. required: - document properties: document: description: The actual document data as it exists in a physical form and carries information about the passenger (e.g. passport, visa). $ref: '#/definitions/sec.Document' holderType: description: Indicates whether the passenger is the actual owner of the document (in other words he's a primary holder) or he doesn't own the document but is listed there and may use the document under certain conditions (in other words he's a secondary holder). $ref: '#/definitions/res.EnumDocumentHolderType' inputMethod: description: The way the document data is entered (e.g. manually, by scanning etc). Typically most of the non-manual inputs will be done on the kiosk at the airport. $ref: '#/definitions/res.EnumDocumentInputMethod' multinameHolder: type: boolean description: Multiname document holder indicator. Information that passenger's document contains information about other persons (e.g. children). res.PassengerFare: type: object description: Contains the air fare associated with a group of passengers of the same type e.g. ADULT. required: - passengerRefs - priceBreakdown properties: passengerRefs: type: array description: Array of IDs of res.Passenger elements. items: type: string example: - id01 - id02 priceBreakdown: description: The complete information about the price paid for the air fare. It included all price components like base, tax, fee etc. $ref: '#/definitions/res.PriceBreakdown' res.PassengerFlight: type: object description: Contains groups of attributes associated with Passenger and Flight (when flightRef is present) or Segment. properties: boardingPass: description: Boarding pass related data. $ref: '#/definitions/chk.BoardingPass' checkInNumber: format: int32 type: integer description: Passenger sequence number when checked in for the flight. checkedIn: type: boolean description: 'If true, Indicates whether passenger has been checked in for the segment. Warning: this element is deprecated. It will be removed in the next API version.' example: true eligibilities: description: The Eligibilities of the passenger associated with a flight. Lounge is an example of such eligibility. $ref: '#/definitions/res.Eligibilities' flightRefs: type: array description: Array of IDs of sec.FlightDetail elements. List of Flight ids in the Segment this element refers to. If not set, it applies to entire Segment. items: type: string example: - id01 - id02 id: type: string description: Id attribute. loungeCard: description: Lounge card related data. $ref: '#/definitions/res.LoungeCard' preReservedSeat: description: Identifies some cases the original seat selected by a passenger during the reservation process can be changed to a new one when the reservation is under airport control e.g. there is aircraft change due to some reason. In that case this element represents the original seat assigned to a passenger in the reservation system before the change. This element is only present in the response if there was a change of the seat otherwise only Seat element is present (it there is a seat assignment at all). $ref: '#/definitions/res.Seat' priorityCode: type: string description: Identifies the code assigned to a passenger when added on a priority list for a flight at check in as they will not have any seat. seat: description: Identifies the seat number which is assigned to a passenger on the referenced segment. In some cases the original seat (pre-reserved) selected by a passenger during the reservation process can be changed to a new one when the reservation is under airport control e.g. there is aircraft change due to some reason. In that case this element represents the latest and most recent seat assignment. $ref: '#/definitions/res.Seat' status: description: Determines the current status of the passenger. $ref: '#/definitions/res.EnumPassengerFlightStatus' upgradeCode: minLength: 1 maxLength: 32 type: string description: The airline specific code which defines cabin upgrade rules for a passenger when requesting seats. The code is usually assigned to a passenger when he is placed on a priority list with an upgrade option for a given flight. example: UP1 res.PassengerItineraryPart: type: object description: Lists the data element used to associate a passenger with a particular ItineraryPart (leg). required: - itineraryPartRef properties: airExtra: type: array description: Lists the Air extras associated with a passenger. Each air extra needs to be represented by a separate AirExtra element. items: $ref: '#/definitions/res.AirExtra' id: type: string description: Id attribute. itineraryPartRef: type: string description: ID of res.ItineraryPart element. example: id01 res.PassengerItineraryParts: type: object description: Wrapper element for PassengerItineraryPart. required: - passengerItineraryPart properties: passengerItineraryPart: type: array description: Lists the data element used to associate a passenger with a particular ItineraryPart (leg). items: $ref: '#/definitions/res.PassengerItineraryPart' res.PassengerSegment: type: object description: Hold data which link a passenger and a segment. required: - segmentRef properties: additionalTravelInformation: description: Associates passenger with additional travel information. Applies to adults and infants. $ref: '#/definitions/res.AdditionalTravelInformation' airExtra: type: array description: Lists the Air extras associated with a passenger. Each air extra needs to be represented by a separate AirExtra element. items: $ref: '#/definitions/res.AirExtra' baggagePoolId: format: int32 type: integer description: The baggage pool ID used to group passengers that share theirs free baggage allowance. editCodes: description: Detailed information about passenger. $ref: '#/definitions/res.EditCodes' eligibilities: description: The Eligibilities of the passenger associated with a segment. CheckIn eligibility is an example of eligibility which occurs at this level. $ref: '#/definitions/res.Eligibilities' id: type: string description: Id attribute. loyaltyAccount: description: Loyalty account details of the user performing the service request. $ref: '#/definitions/sec.LoyaltyAccount' nonRevenuePassengerInfo: description: Additional details available only for non-revenue passengers. $ref: '#/definitions/res.NonRevenuePassengerInfo' passengerCheckInId: type: string description: Represents SSCIOS passenger segment id. passengerFlight: type: array description: |- Lists the attributes associated with Passenger and Flight (when flightRef is present) or Segment. Multiple elements will be present when a single Segment sold in the reservation system is in reality multiple physical flights e.g. change of gauge scenario or multi-leg flights (multiple physical flights with the same flight number and equipment). There is possible to distinguish the following scenarios: 1. Segment with single flight leg (without stops) - a single PassengerFlight without FlightRefs is returned 2. Segment with multi-leg flight (single flight number, same equipment) a) when passenger has the same seat on all flight legs - a single PassengerFlight without FlightRefs is returned b) when passenger has different seats on flight legs - multiple PassengerFlight for a distinct seat is returned - FlightRefs is populated with the list of Flight ids where same seat was assigned 3. Segment with multi-leg flight (single flight number, equipment change) - change of gauge - multiple PassengerFlight for each flight leg (change of seat is irrelevant). items: $ref: '#/definitions/res.PassengerFlight' passengerType: minLength: 1 maxLength: 32 type: string description: The type of the passenger. example: F segmentRef: type: string description: ID of res.Segment element. example: id01 passengerOffer: description: Additional ancillary special offer details. $ref: '#/definitions/res.PassengerOfferItems' upgradeAvailability: type: array description: Lists the passenger upgrade availability details. items: $ref: '#/definitions/res.UpgradeAvailability' res.PassengerOfferItems: type: object description: Provides passenger offer items. properties: offerId: minLength: 1 maxLength: 32 type: string description: ID of an offer defined by NDC; used when selling based on the offered prices. example: '1' offerItems: type: array description: List of offer items. items: $ref: '#/definitions/res.PassengerOfferItem' res.PassengerSegments: type: object description: Wrapper element for list of PassengerSegment elements. properties: passengerSegment: type: array description: List of PassengerSegment data elements. items: $ref: '#/definitions/res.PassengerSegment' res.PassengerOfferItem: type: object description: Provides details for a given offer. properties: offerItemId: minLength: 1 maxLength: 32 type: string description: ID of an item offer defined by NDC; used when selling based on the offered prices. example: I'm tiny string priority: format: int32 type: integer description: An offer item order indicator. offerName: minLength: 0 maxLength: 512 type: string description: A text that represents displayable name of the offer. example: Extra leg room seat bannerName: minLength: 0 maxLength: 1024 type: string description: A text that represents extra details about the offer. example: Extra leg room seat availableQuantity: format: int32 type: integer description: A number of available items that can be selected. annotations: type: array description: List of offer related annotations. items: $ref: '#/definitions/sec.KeyValueProperty' price: description: Price of this offer item. $ref: '#/definitions/sec.Money' characteristics: type: array description: A list of PADIS codes associated with a given offer. items: type: string example: - CH 1A W res.Passengers: type: object description: Wraps passenger related details and details which are global for all passengers. required: - passenger properties: count: format: int32 type: integer description: The number of all passengers in the reservation. example: 25 contactDetails: description: |- Contact details which apply to all passengers. Type attribute in Address element can PRIVATE (for personal/private travel), BUSINESS (for business trips). There are countries where company name must be included in the invoices in order to reimburse business travel expenses. Company name stored in this element can be extracted from the reservation by the automated tools to be included in the invoice/receipt if needed. $ref: '#/definitions/sec.ContactDetails' emergencyContact: type: array description: Contact data which should be used in case of emergency for all passengers. Empty list indicates that the passenger was not asked to provide emergency contact. Another situation which may occur is when a passenger was asked to provide emergency contact but refused to provide it. In this case, the response will contain a single EmergencyContact element with no child elements. items: $ref: '#/definitions/sec.EmergencyContact' passenger: type: array description: Passenger details. items: $ref: '#/definitions/res.Passenger' res.Payment: type: object description: Payment details linked to a reservation. Multiple payments can be stored in a single Reservation e.g. when exchange was done or part of the price is paid from eBank. required: - formOfPaymentType - status properties: amount: description: Regulatory price amount in the original currency in which the fare was defined. It could also refer to the number of loyalty points present when the type is *_AMOUNT. If the value is a calculated value, then the percentage is also populated for reference. $ref: '#/definitions/sec.Money' installmentsDetails: description: Installments details. $ref: '#/definitions/res.InstallmentsDetails' formOfPaymentType: description: Indicates type for a form of payment used in this payment. $ref: '#/definitions/sec.EnumFormOfPaymentType' id: type: string description: Id attribute. paymentCardPayment: description: Details of the payment card used for this payment. The card may be a real card like e.g. Visa or a pseudo card like e.g. POLIi generated card. $ref: '#/definitions/res.PaymentCardPayment' paymentComponent: type: array description: List of payment components linked to this payment. This allow to identify which products in the reservation this payment covers. items: $ref: '#/definitions/res.PaymentComponent' points: format: int32 type: integer description: Price expressed in frequent flyer points/miles. example: 1000 status: description: Status of payment. $ref: '#/definitions/res.EnumPaymentStatus' res.InstallmentsDetails: type: object properties: numberOfInstallments: format: int32 type: integer description: Number of installments to be paid in the installment option. example: 6 totalPaymentAmount: format: double type: number description: Total amount due to the installment option. example: 621.06 installmentAmount: format: double type: number description: Single installment payment amount. example: 103.51 interestAmount: format: double type: number description: Interest rate payment amount. example: 41.06 fopFeeAmount: format: double type: number description: Fee amount realated to form of payment. example: 13 interestRate: format: double type: number description: Interest rate. example: 1.99 otherPaymentAmount: format: double type: number description: Total amount of other payments related to installment option e.g. taxes, additional fees. example: 93.51 currency: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Code of the currency. example: USD res.PaymentCardPayment: type: object description: Represents payment card payment. It is basically a payment card and approval code of a transaction. required: - paymentCard properties: approvalCode: minLength: 3 maxLength: 6 type: string description: |- Approval code assigned to the transaction. **Deprecated** Use approval code from AuthorizationResult instead. example: '231453' authorizationResult: description: Result of card authorization. $ref: '#/definitions/res.AuthorizationResult' bookingIdentifier: minLength: 1 maxLength: 128 type: string description: Unique booking identifier required by the DCC provider. example: KWJWK123 cardReader: description: Information about card reader used. $ref: '#/definitions/res.CardReader' dynamicCurrencyConversion: description: Offer of Dynamic Currency Conversion payment. $ref: '#/definitions/sec.DynamicCurrencyConversion' internetTransactionVerification: description: Payment card Internet transaction verification protocol. Used by payment card providers to add additional layer of security for Internet transactions. $ref: '#/definitions/res.EnumPaymentCardInternetTransactionVerification' paymentCard: description: Payment card details. $ref: '#/definitions/sec.PaymentCard' paymentPlan: description: Payment plans are available for approved credit cards only. When selected, user has an option to utilize bank offer of paying the due amount in selected number of installments. $ref: '#/definitions/res.PaymentPlan' presentPaymentCardForVerification: type: boolean description: This indicator is used by Airlines in ticketing process after getting REVIEW result from fraud check systems. User will be asked to present payment card at check-in. transactionIdentifier: minLength: 1 maxLength: 512 type: string description: Transaction identifier required to complete the payment transaction using DCC. example: HDAL8282JJK res.PaymentComponent: type: object description: A link between the particular payment and a document issued for a a product in the Reservation. properties: airExtraDocumentRef: type: string description: ID of res.AirExtraDocument element. example: id01 amount: description: Regulatory price amount in the original currency in which the fare was defined. It could also refer to the number of loyalty points present when the type is *_AMOUNT. If the value is a calculated value, then the percentage is also populated for reference. $ref: '#/definitions/sec.Money' points: format: int32 type: integer description: Price expressed in frequent flyer points/miles. example: 1000 ticketRef: type: string description: ID of res.Ticket element. example: id01 res.PaymentPlan: type: object description: Payment plans are available for approved credit cards only. When selected, user has an option to utilize bank offer to pay the due amount in selected number of installments. required: - bankName properties: bankName: minLength: 1 maxLength: 128 type: string description: Bank name offering the payment plan. example: Bank Of America numberOfInstallments: format: int32 type: integer description: Number of installments. res.Payments: type: object description: Wrapper element for list of Payment elements. required: - payment properties: payment: type: array description: Payment linked to the reservation. items: $ref: '#/definitions/res.Payment' res.Phone: type: object description: Phone number used to contact passenger. required: - number properties: id: type: string description: Id attribute. number: minLength: 1 maxLength: 50 type: string description: Phone number given by passenger. example: +48 12 12 23 123 segmentRefs: type: array description: Array of IDs of res.Segment elements. Reference to a segments (flights) for which the service has been requested. items: type: string example: - id01 - id02 syntheticIdentifier: minLength: 1 maxLength: 1000 type: string description: Artificially generated identifier required in rare cases to identify passenger when no other natural identifier can be selected. Once populated in the operation's response, it has to be send back in the request to subsequent service calls where operations on remarks are required. example: '4324143134214231412412' res.Phones: type: object description: Wrapper for contact mobile phone numbers. required: - phone properties: phone: type: array items: $ref: '#/definitions/res.Phone' res.PreScreeningData: type: object description: Passenger details stored in the reservation which are used by authorities for air transportation pre-screening. required: - dateOfBirth - gender - personName properties: dateOfBirth: format: date type: string description: Date of birth if different than in containing structure. gender: description: Gender as provided in the document. $ref: '#/definitions/sec.EnumGender' personName: description: Passenger name. $ref: '#/definitions/sec.PersonName' res.PriceBreakdown: allOf: - $ref: '#/definitions/sec.PriceBreakdown' - type: object properties: ticketingFee: type: array items: $ref: '#/definitions/fee.TicketingFee' description: The complete information about the price paid for the air fare. It included all price components like base, tax, fee etc. res.Pricing: type: object description: Pricing linked to the reservation. It contains pricing for individual items stored in the reservation like itinerary, ancillaries etc. when provided in the reservation retrieval response. In the reservation booking request, it is the pricing which consumer received from the pricing service and agreed to proceed with to book the reservation. properties: airExtraPricings: description: Pricing of air extras (ancillary, other fee) linked to the reservation. Please note that price of the same air extra (same subcode) for different passengers may differ due to applied retailing rules (if enabled). $ref: '#/definitions/res.AirExtraPricings' itineraryPricing: description: Itinerary pricing option. Multiple pricing options are typically returned for an itinerary; however, when options are 'sold out', there might not be any pricing available. This element is designed as 'Optional' so that when a 'sold out' situation is encountered, it can be processed accordingly without generating an error or a warning. $ref: '#/definitions/res.ItineraryPricing' res.Properties: type: object description: List of named properties. required: - property properties: property: type: array description: Name/value pair. items: $ref: '#/definitions/res.Property' res.Property: type: object description: Represents generic property entity which has it's name and value. required: - name - value properties: name: minLength: 1 maxLength: 128 type: string description: Name of the property. example: TIME_TO_OPEN_CHECK_IN value: minLength: 1 maxLength: 512 type: string description: Value of the property. example: '325' res.Purchaser: type: object properties: firstName: type: string lastName: type: string name: type: string res.RawTicketingAmount: type: object description: Amount specific to the ticketing system that can contain extra free text information. properties: text: type: string description: Free text associated with the amount. Does not have to be numeric e.g.1257.10A, NO ADC. example: '156.59' ticketingAmount: $ref: '#/definitions/res.TicketingAmount' valueCode: type: string description: Free text from ticketing system. res.Redress: type: object description: Redress structure parsed from host data e.g. /R/123456. properties: applicableCountryCode: pattern: ^([A-Z]{2,3})$ minLength: 2 maxLength: 3 type: string description: Applicable country code. example: PL number: pattern: ^([A-Za-z0-9]{1,13})$ minLength: 1 maxLength: 13 type: string description: The Redress Control Number is the record identifier for people who apply for redress through the DHS Travel Redress Inquiry Program (DHS TRIP). DHS TRIP is for travelers who have been repeatedly identified for additional screening and who want to file an inquiry to have erroneous information corrected in DHS systems. example: '123456' res.Refusal: type: object description: Phone number used to contact passenger. required: - reason properties: id: type: string description: Id attribute. reason: minLength: 1 maxLength: 512 type: string description: Contact refusal reason. example: I'm medium string segmentRefs: type: array description: Array of IDs of res.Segment elements. Reference to a segments (flights) for which the service has been requested. items: type: string example: - id01 - id02 syntheticIdentifier: minLength: 1 maxLength: 1000 type: string description: Artificially generated identifier required in rare cases to identify passenger when no other natural identifier can be selected. Once populated in the operation's response, it has to be send back in the request to subsequent service calls where operations on remarks are required. example: '4324143134214231412412' res.Refusals: type: object description: Wrapper for contact refusals. required: - refusal properties: refusal: type: array items: $ref: '#/definitions/res.Refusal' res.RelatedDocument: type: object properties: associatedTicketNumber: $ref: '#/definitions/res.AssociatedTicketNumber' checkDigit: type: string coupon: type: string iataNumber: type: string issueCity: type: string issueDate: format: date type: string number: type: string payment: type: string remark: type: string sequence: type: string transactionId: type: string type: $ref: '#/definitions/res.EnumRelatedDocumentType' res.Remark: type: object description: Text information regarding the reservation to be read by an agent. properties: id: type: string description: Id attribute. remarkLine: type: array description: Free text information. items: type: string syntheticIdentifier: minLength: 1 maxLength: 1000 type: string description: Artificially generated identifier required in rare cases to identify passenger when no other natural identifier can be selected. Once populated in the operation's response, it has to be send back in the request to subsequent service calls where operations on remarks are required. example: '4324143134214231412412' type: description: Type of the remark. $ref: '#/definitions/res.EnumRemarkType' res.Remarks: type: object description: Wrapper for Remarks stored in PNR for the reservation. required: - remark properties: remark: type: array description: Text information regarding the reservation to be read by an agent. items: $ref: '#/definitions/res.Remark' res.Reservation: type: object description: Represents passengers booking stored in the reservation system. required: - passengers - version properties: ancillaries: description: Additional services sold to a passenger for a specific portion of travel, or a service that is completely unrelated to a particular itinerary. Other names used in the industry for this entity are 'Optional Service' defined by ATPCO or 'Travel Extra' defined by MTS. Refer to the DATA APPLICATION OPTIONAL SERVICES - SUB CODE SERVICES RECORD S5 document published by ATPCO for more details. $ref: '#/definitions/anc.Ancillaries' businessLoyaltyAccount: description: Account linked to a loyalty program usually for small - medium size businesses. $ref: '#/definitions/res.BusinessLoyaltyAccount' eligibilities: description: Eligibilities of the passenger associated with a Reservation. $ref: '#/definitions/res.Eligibilities' genericSpecialRequests: description: Special services requested by the passenger e.g. special meal. $ref: '#/definitions/res.GenericSpecialRequests' groupReservationDetails: description: Details of a group reservation / corporate PNR. $ref: '#/definitions/res.GroupReservationDetails' id: type: string description: Id attribute. itinerary: description: Itinerary consisting of itinerary parts and fare breakdowns. $ref: '#/definitions/res.Itinerary' languagePreference: pattern: ^([a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*)$ type: string description: End user preferred language for comunication/display/messaging related to this booking. example: PL passengers: description: Wrapper for passenger related details. $ref: '#/definitions/res.Passengers' payments: description: List of payments made for this Reservation. $ref: '#/definitions/res.Payments' pricedAncillaries: description: Code identifying a list of priced ancillaries that shows the connection between the ancillary definition and its fee. $ref: '#/definitions/anc.PricedAncillaries' pricing: description: Pricing linked to the reservation. It contains pricing for individual items stored in the reservation like itinerary, ancillaries etc. when provided in the reservation retrieval response. In the reservation booking request, it is the pricing which consumer received from the pricing service and agreed to proceed with to book the reservation. $ref: '#/definitions/res.Pricing' recordLocator: pattern: ^([A-Za-z0-9]{5,8})$ minLength: 5 maxLength: 8 type: string description: An identifier of the Passenger Name Record (PNR) in the reservation system. There are certain cases when record locator is not populated e.g. when used in an operation which creates a new reservation. example: ABCDEFG remarks: description: Text information regarding the reservation to be read by an agent. $ref: '#/definitions/res.Remarks' revenueType: description: Defines type of the reservation in terms of the revenue it gives to the airline. Reservation can be either revenue (where passengers pay for their seats) or non-revenue type. There is no way to create reservation which mixes revenue and non-revenue passengers. It applies to air seats only. $ref: '#/definitions/res.EnumRevenueType' seatsAvailability: description: Contains the number of available seats per booking class on each segment. $ref: '#/definitions/res.SeatsAvailability' status: description: Status of the reservation. Together with NonRevenue element it may indicate seat assignment priority. If NonRevenue is set to true then CONFIRMED status indicates that reservation is of positive space type whereas STANDBY status indicates space available. $ref: '#/definitions/res.EnumReservationStatus' ticketTimeLimit: format: date-time type: string description: Time limit for ticketing. Reservation is subject to cancellation if not ticketed before this date. travelOrganizer: description: Travel organizer is a person identified by a profile id who creates / created the reservation. It can be, but does not have to be, one of the travelers. When used in the operation which creates the reservation the optional details of the travel organizer are assumed to be valid and used during the booking process. When ProfileIdentifier is provided only, the service logic retrieves the additional details of the travel organizer. When reservation is retrieved, only ProfileIdentifier and PassengerRef (if travel organizer is also a passenger) is populated. $ref: '#/definitions/res.TravelOrganizer' version: minLength: 1 maxLength: 512 type: string description: An identifier used for optimistic locking. example: '1234567' features: description: Features configuration details that need to be exposed to customer. $ref: '#/definitions/res.Features' offerId: type: string description: The OfferId as defined by NDC. It identifies the offer in future processing. res.ResidencyDocumentType: type: object description: Defines type of residency document and residency country. required: - residencyCountry properties: id: type: string description: Id attribute. residencyCountry: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Residency country code. example: US value: $ref: '#/definitions/res.EnumResidencyDocumentType' res.ResultCodes: type: object description: Authorization result codes. properties: aVS: pattern: ^([A-Z]{1})$ minLength: 1 maxLength: 1 type: string description: Address Verification System. example: A cAVV: pattern: ^([A-Z]{1})$ minLength: 1 maxLength: 1 type: string description: Cardholder Authentication Verification Value. example: V cSC: pattern: ^([A-Z]{1})$ minLength: 1 maxLength: 1 type: string description: Card Security Code. example: C res.ReturnDate: type: object description: Contains the Trip return date. This is referenceable element because it needs to be referenced when used in UpdateReservation flow. properties: id: type: string description: Id attribute. value: format: date type: string example: '2011-12-05' res.Seat: type: object description: Represents a seat in the airplane. properties: airExtraRef: type: string description: ID of res.AirExtra element. The reference to the passenger ancillary is required only for the non-free (paid) seats. In such case a corresponding passenger ancillary is expected to exist in the reservation. Such passenger ancillary's type (subCode etc) would be of those representing the seats (for instance 0B5). Whenever the seat is a paid seat a corresponding PassengerAncillary needs to be referenced. example: id01 offerId: type: string description: ID of an offer used when selling seats. offerItemId: type: string description: ID of an offer item used when selling seats based on the personalized prices. type: type: string description: Type of the seat. example: WINDOW value: minLength: 1 maxLength: 5 type: string example: 1D res.SeatsAvailability: type: object description: Contains the number of available seats per booking class on each segment. properties: segmentsSeatsAvailability: type: array description: Lists the number of available seats on a particular flight. items: $ref: '#/definitions/res.SegmentSeatsAvailability' res.Segment: type: object description: An element of an itinerary part which represents a single flight. properties: applicableTransportationSecurity: type: array description: Certain transportation security programs conducted by government's agencies may apply to a segment e.g. Redress number is applicable only for segments touching USA, Known Traveler Number may be applicable only to certain airlines and/or airports in the USA. items: $ref: '#/definitions/res.EnumApplicableTransportationSecurityType' associationId: format: int32 type: integer description: Segment association id number as it is in the PNR. baggageCheckInRules: description: Describes the baggage check-in and transportation rules that apply at the given segment. Some of these rules may be printed out on the tag when the bag is checked in. $ref: '#/definitions/chk.BaggageCheckInRules' bookingClassUpgradeStatus: description: Booking class upgrade status of a segment (latest). It is present only when Segment was upgraded or an attempt to upgrade was made but it failed. $ref: '#/definitions/res.BookingClassUpgradeStatus' eligibilities: description: Flags which indicate different kind of eligibility which may apply at the segment level. $ref: '#/definitions/res.Eligibilities' fareInfo: description: Fare information, which is usually a single element. However, multiple elements can be provided to allow representation of various fare details associated with several passenger types on the same flight segment. $ref: '#/definitions/sec.FareInfo' flightDetail: type: array description: Flight details. In cases other than COG (change of gauge) or through-flights, only a single element is expected. items: $ref: '#/definitions/sec.FlightDetail' id: type: string description: Id attribute. number: pattern: ^([0-9]{1,10})$ minLength: 1 maxLength: 10 type: string description: Segment number as it is in the PNR. In some cases, e.g. for flown segments the number is unknown so the attribute is optional. operatingAirlineRecordLocator: pattern: ^([A-Za-z0-9]{5,8})$ minLength: 5 maxLength: 8 type: string description: Operating airline record locator. example: DEWJNK programIdentifier: minLength: 1 maxLength: 16 type: string description: Identifier to indicate the company owner of the loyalty program. example: '1123344' seatStatus: description: Status of seats for all passengers on this segment. $ref: '#/definitions/res.EnumSegmentSeatStatus' sequence: format: int32 type: integer description: Segment sequence number as it is in the PNR. status: description: Status of a segment in the reservation system. Sometimes may not be available e.g. when segment is retrieved through check-in system. $ref: '#/definitions/res.SegmentStatus' res.SegmentSeatsAvailability: type: object description: Lists the number of available seats on a particular flight. required: - segmentRef properties: bookingClassAvailability: type: array description: Lists the number of available seats in a particular booking class. items: $ref: '#/definitions/res.BookingClassAvaialbility' segmentRef: type: string description: ID of res.Segment element. Reference to the original segment (flight) for which the service has been requested. example: id01 res.SegmentStatus: type: object description: Status of the Segment. properties: code: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Low level status code used by the reservation/checkin system. value: $ref: '#/definitions/res.EnumSegmentStatus' res.SpecialServiceDescription: type: object description: |- Special Service description. Required content depends on the Special Service Type stored in Ancillary element. required: - code properties: code: pattern: ^([A-Z0-9]{1,20})$ minLength: 1 maxLength: 20 type: string description: IATA-defined Special Service Request (SSR) code applicable to the sub code. example: BGDA properties: description: List of air extra properties defined as required in Ancillary element. $ref: '#/definitions/res.Properties' text: minLength: 1 maxLength: 512 type: string description: A text added in case the SSR required free text. example: I'm medium string res.StayType: type: object description: This is referenceable element because it needs to be referenced when used in UpdateReservation flow. properties: id: type: string description: Id attribute. value: $ref: '#/definitions/res.EnumStayType' res.Tax: allOf: - $ref: '#/definitions/res.RawTicketingAmount' - type: object required: - taxCode properties: exempt: type: boolean name: type: string sequence: format: int64 type: integer status: type: string taxCode: type: string description: Tax. res.Taxes: type: object properties: tax: type: array description: Taxes lists all the taxes paid. items: $ref: '#/definitions/res.Tax' res.Ticket: type: object description: Details of a ticket associated with a passenger. required: - ticketNumber properties: agent: description: Agent who issued EMD. $ref: '#/definitions/res.Agent' discountDetails: description: Details of the deals applied for the ticket. $ref: '#/definitions/res.DiscountDetails' expiryDate: format: date type: string description: Defines the latest date when the ticket can be used. example: '2011-12-05' fareCalculation: type: string description: FareCalculation informs about the details of the fare calculation exactly as printed on the document. example: CUN SY DFW497.00NUC497.00END ROE1.00 fareCalculationMode: type: string description: 'The identifier reflecting the method of pricing for this transaction as entered on the ticketing document. Possible values can be: 0 - system priced, 1 - manual priced, 2 - auto-priced but baggage has been manipulated.' example: '0' fareCalculationPricing: type: string description: 'The identifier reflecting the method of pricing and form of payment for this transaction as entered on the ticketing document. Possible values can be: 0 - sabre priced with cash or check fop, 1 - agent priced with cash or check fop, 2 - sabre priced with credit card fop / NON-ACCB, NON-ECCP, 3 - agent priced with credit card fop / NON-ACCB, NON-ECCP, 6 - sabre priced with credit card fop / ACCB/ ECCP, 7 - agent priced with credit card fop / ACCB/ECCP.' example: '0' history: type: array items: $ref: '#/definitions/res.TicketHistory' id: type: string description: Id attribute. issueDate: format: date-time type: string description: Date and time when ticket was issued. example: '2011-01-24T09:45:00' issueTime: description: LocalIssueDateTime is the date and time when the ticketing document was issued in the agent's city. $ref: '#/definitions/res.IssueTime' issued: type: boolean description: Indicates whether the ticket has been already issued. example: true payment: type: array description: List of references to Payment structures which were used to cover the cost of Ticket. items: $ref: '#/definitions/res.TicketPayment' presentCreditCard: type: boolean description: Present credit card indicator. example: true priceBreakdown: description: Full information about the price paid for the Ticket. It included all price components like base, tax, fee etc. $ref: '#/definitions/res.TicketPriceBreakdown' refundable: type: boolean description: Flag indicating whether a ticket is refundable. example: true relatedDocument: $ref: '#/definitions/res.TicketingRelatedDocument' reservation: description: Basic reservation data for which EMD was issued. $ref: '#/definitions/res.TicketingReservation' systemCreateDateTime: format: date-time type: string description: SystemCreateDateTime is the timestamp of when the document was created - in CST time zone. example: '2011-01-24T09:45:00' ticketCoupon: type: array description: Details of coupons linked to a ticket. items: $ref: '#/definitions/res.TicketCoupon' ticketNumber: description: Ticket number. $ref: '#/definitions/sec.TicketNumber' ticketRemark: type: array description: Ticket remarks. items: $ref: '#/definitions/res.TicketRemark' tourNumber: pattern: ^([a-zA-Z0-9]{1,15})$ minLength: 1 maxLength: 15 type: string description: Special code arranged between the travel agency and the sales representative for a particular airline. example: AND12M res.TicketCoupon: type: object description: Represents a coupon associated with a ticket. required: - status properties: bagAllowance: type: string description: BagAllowance informs about an applicable free baggage allowance. example: 1PC baggageDisclosure: description: Baggage pricing defined for baggage travel units. $ref: '#/definitions/res.BaggageDisclosure' bookingStatus: description: BookingStatus is a code associated to the status of the booked segment. $ref: '#/definitions/res.BookingStatus' classOfService: type: string description: ClassOfService. couponNumber: pattern: ^([0-9]{1,2})$ minLength: 1 maxLength: 2 type: string description: Number of a coupon. example: '01' couponUse: type: string description: CouponUse is a code that informs how the coupon is used. example: F currentStatus: type: string description: CurrentStatus is a code associated to the current status of the coupon. example: OK endDateTime: format: date-time type: string description: EndDateTime. endLocation: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: EndLocation. example: LHR fareBasisCode: minLength: 1 maxLength: 128 type: string description: Alpha or alphanumeric code that describes the fare type and its applicable fare rules. example: TP45A/AVB50 marketingFlightNumber: pattern: ^([0-9]{1,4})$ minLength: 1 maxLength: 4 type: string description: MarketingFlightNumber. example: '1234' marketingProvider: description: Contains MarketingProvider code that identifies the Marketing Carrier for each coupon as it was sold. $ref: '#/definitions/res.MarketingProvider' segmentRef: type: string description: ID of res.Segment element. Reference to a Segment element to which this coupon applies. example: id01 startDateTime: format: date-time type: string description: StartDateTime. startLocation: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: StartLocation. example: LHR status: description: Status of a this coupon e.g. OK. $ref: '#/definitions/res.EnumCouponStatus' stopOver: type: string description: Is the passenger entitled to make a stop-over. example: O res.TicketHistory: type: object description: Detailed historical information related to the ticket. properties: affinityHistory: type: array items: $ref: '#/definitions/res.TicketingHistoryAffinity' agent: $ref: '#/definitions/res.TicketingHistoryAgent' code: type: string details: $ref: '#/definitions/res.TicketingHistoryDetails' number: format: int64 type: integer relatedDocumentHistory: $ref: '#/definitions/res.TicketingHistoryRelatedDocument' sequence: format: int64 type: integer serviceCouponHistory: type: array items: $ref: '#/definitions/res.TicketingHistoryServiceCoupon' transactionInfo: $ref: '#/definitions/res.TicketingHistoryTransactionInfo' res.TicketPayment: type: object description: Payment informs about the payment made. required: - formOfPaymentType properties: base: description: Amount. $ref: '#/definitions/res.TicketingAmount' cashIndicator: type: boolean description: Cash indicates that cash was used as the form of payment. formOfPaymentType: type: string description: Indicates type for a form of payment used in this payment. example: CASH paymentConfirmation: type: boolean description: Indicates whether payment system needs to be notified about every transaction changing this document. example: true remarks: type: string description: Remarks provides additional information/comment about the form of payment. sequence: format: int64 type: integer description: Informs about the payment sequence number . tax: description: Amount. $ref: '#/definitions/res.TicketingAmount' total: description: Amount. $ref: '#/definitions/res.TicketingAmount' res.TicketPriceAmountTotal: allOf: - $ref: '#/definitions/res.RawTicketingAmount' - type: object properties: rateOfExchange: format: double type: number description: Informs about the grand total amount (base + all the taxes). res.TicketPriceBreakdown: type: object description: Contains the new amount which is generated at the time, the document is issued. required: - amounts properties: amounts: description: Amounts. $ref: '#/definitions/res.TicketPriceBreakdownAmount' taxes: description: Taxes. $ref: '#/definitions/res.Taxes' res.TicketPriceBreakdownAmount: type: object description: PriceAmount. required: - base - total properties: base: description: Base. $ref: '#/definitions/res.RawTicketingAmount' equivalent: description: CurrencyConversion. $ref: '#/definitions/res.Equivalent' net: description: Net. $ref: '#/definitions/res.RawTicketingAmount' tax: type: array description: Tax. items: $ref: '#/definitions/res.Tax' total: description: Total. $ref: '#/definitions/res.TicketPriceAmountTotal' totalTax: description: TotalTax. $ref: '#/definitions/res.RawTicketingAmount' res.TicketRemark: type: object description: TicketRemark. properties: category: $ref: '#/definitions/res.EnumRemarkCategory' header: type: string remarkLine: minLength: 1 maxLength: 512 type: string description: Tiny string 1 to 512 characters in length. example: I'm medium string sequence: format: int64 type: integer description: sequence. example: 1 type: type: string description: type. res.TicketingAmount: type: object description: Amount specific to the ticketing system. properties: applyCreditIndicator: type: boolean description: If false then the amount is assumed to have positive value. example: true currency: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Code of the currency. example: USD value: format: double type: number res.TicketingHistoryAffinity: type: object description: Details about the changes in the affinity or frequent flyer number. properties: frequentFlyer: $ref: '#/definitions/res.TicketingHistoryAffinityFrequentFlyer' res.TicketingHistoryAffinityFrequentFlyer: type: object description: Individual airline identifier assigned to a traveler who is a member of the frequent flyer program. properties: number: type: string provider: type: string tier: type: string res.TicketingHistoryAgent: type: object description: Agent issuing the transaction that updates the ticketing document. properties: duty: type: string homeLocation: type: string lniata: type: string sine: type: string ticketingProvider: $ref: '#/definitions/res.TicketingHistoryProvider' workLocation: type: string res.TicketingHistoryDetails: type: object description: Details about the changes in the ticketing document. properties: accountingCode: type: string affectedCoupons: type: string currentDocumentStatus: type: string documentEventActivity: type: string documentPurgeTypeCode: type: string newReservation: type: string oldRemark: type: string oldReservation: type: string previousDocumentStatus: type: string supportingDocument: type: string res.TicketingHistoryProvider: type: object description: Code identifying the Ticketing Carrier for each sold coupon. properties: checkDigit: type: string example: '4' name: type: string example: AA DO NOT TKT number: type: string example: '795' value: type: string example: VA res.TicketingHistoryRelatedDocument: type: object description: Other documents that are related to the primary document upon issuence. properties: miscellaneous: $ref: '#/definitions/res.TicketingHistoryRelatedDocumentData' supportingDocument: $ref: '#/definitions/res.TicketingHistoryRelatedDocumentData' res.TicketingHistoryRelatedDocumentData: type: object description: Contains other documents data that are related to the primary document upon issuance. properties: affectedCoupons: type: string number: format: int64 type: integer sequence: format: int64 type: integer res.TicketingHistoryServiceCoupon: type: object description: Details about the changes in the service coupon. properties: coupon: format: int64 type: integer currentStatus: type: string sequence: format: int64 type: integer res.TicketingHistoryTransactionInfo: type: object description: Transaction details about the document updates. properties: id: type: string inputMessage: type: string localDateTime: format: date-time type: string systemDateTime: format: date-time type: string systemProvider: type: string res.TicketingProvider: type: object description: TicketingProvider is a code identifying the Ticketing Carrier for each coupon as it was sold. properties: checkDigit: type: string example: '4' name: type: string example: AA DO NOT TKT number: type: string example: '795' value: type: string example: VA res.TicketingRelatedDocument: type: object properties: conjuctive: type: array items: $ref: '#/definitions/res.Conjuctive' res.TicketingReservation: type: object properties: creationDate: format: date-time type: string provider: type: string recordLocator: type: string res.TimaticCountryRequirements: type: object description: Provides information about Timatic results for the given country. properties: country: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Timatic applicable country code. countryName: minLength: 1 maxLength: 128 type: string description: Timatic applicable country name. status: description: Timatic status for given country. $ref: '#/definitions/res.EnumTimaticStatus' timaticVerificationSection: type: array description: Detailed information about Timatic results. items: $ref: '#/definitions/res.TimaticVerificationSection' res.TimaticDetail: type: object description: Detailed information about Timatic verification results. properties: subtype: minLength: 1 maxLength: 128 type: string description: Timatic information subtype. Eg. Information, Restriction, Exception, Requirement, Recommendation, Applicable. type: minLength: 1 maxLength: 128 type: string description: Verification result type. value: minLength: 1 maxLength: 4096 type: string res.TimaticDocumentType: type: object description: This is referenceable element because it needs to be referenced when used in UpdateReservation flow. properties: id: type: string description: Id attribute. value: $ref: '#/definitions/res.EnumTimaticDocumentType' res.TimaticVerificationResults: type: object description: Provides information about Timatic results for the passenger on the whole itinerary. properties: status: description: Overall Timatic result for passenger's itinerary. $ref: '#/definitions/res.EnumTimaticStatus' timaticCountryRequirements: type: array description: Timatic results for each country in the itinerary. items: $ref: '#/definitions/res.TimaticCountryRequirements' res.TimaticVerificationSection: type: object description: Aggregates information about Timatic results for given section. properties: name: description: Timatic section type. $ref: '#/definitions/res.EnumTimaticSectionType' timaticDetail: type: array description: Detailed information about Timatic verification results. items: $ref: '#/definitions/res.TimaticDetail' res.TransportationSecurity: type: object description: Groups passenger data related to air transportation security. Different countries may have different requirements/regulations. properties: knownTraveler: description: Represent known traveler type with known traveler number and applicable country code. $ref: '#/definitions/res.KnownTraveler' knownTravelerNumber: pattern: ^([a-zA-Z0-9]{5,25})$ minLength: 5 maxLength: 25 type: string description: Represents known traveler number. example: '123456' preScreeningData: description: Passenger details stored in the reservation which are used by authorities for air transportation pre-screening. $ref: '#/definitions/res.PreScreeningData' redress: description: '[Deprecated] Represents single passenger redress number and applicable country code.' $ref: '#/definitions/res.Redress' redresses: type: array description: Represents list of passenger redress numbers and applicable country codes. items: $ref: '#/definitions/res.Redress' redressNumber: pattern: ^([A-Za-z0-9]{1,13})$ minLength: 1 maxLength: 13 type: string description: '[Deprecated] Used only to add a redress number (without applicable country) to passenger documents. Retrieving reservation process itself is not populating this field.' example: '1234567890' res.TravelOrganizer: type: object description: Travel organizer is a person identified by a profile id who creates / created the reservation. It can be, but does not have to be, one of the passengers. required: - profileIdentifier properties: contactDetails: description: Contract details which include email addresses, phone numbers etc. $ref: '#/definitions/sec.ContactDetails' loyaltyAccount: type: array description: Loyalty account details of the user performing the service request. items: $ref: '#/definitions/sec.LoyaltyAccount' passengerRef: type: string description: ID of res.Passenger element. Reference to a Passenger in the Reservation. Present only if travel organizer is also a passenger. example: id01 personName: description: Passenger name. $ref: '#/definitions/sec.PersonName' profileIdentifier: minLength: 2 maxLength: 60 type: string description: Unique profile identifier. example: '1017715374' res.TravelPortion: type: object description: |- Portion of the travel where a deal is applied. The attribute 'type' determines which of the optional elements are present - ItineraryPartRefs is present if type=ITINERARY_PART - FlightRefs is present if type=FLIGHT If type=ITINERARY neither ItineraryPartRefs nor FlightRefs is present. required: - type properties: itineraryPartRefs: type: array description: Array of IDs of res.ItineraryPart elements. Travel portion/discount that applies to each itinerary part in the list. This can also include references to ItineraryPart elements. The same loyalty data values apply to each of the itinerary part specified. For example, BasePoints = 10000 references itinerary parts ip1 and ip2, as well as the total for ip1 and ip2, which is 20000. If missing, this structure applies to all itinerary parts. items: type: string example: - id01 - id02 segmentRefs: type: array description: Array of IDs of res.Segment elements. If present, it indicates that discount applies to each segment in the list. items: type: string example: - id01 - id02 type: description: Type of the travel portion. $ref: '#/definitions/sec.EnumTravelPortionType' res.Traveler: type: object properties: externalNumber: type: string firstName: type: string lastName: type: string name: type: string passengerType: type: string res.UpgradeAvailability: type: object description: Contains detailed information about passenger upgrade availability. required: - id - cabin - pricedAncillaryRef - bookingClassAvailabilityRef properties: id: type: string description: Unique identifier for the upgrade availability record. cabin: pattern: ^([A-Z])$ minLength: 1 maxLength: 1 type: string description: Seat map cabin code. example: Y description: type: string description: Cabin upgrade description text. example: Business pricedAncillaryRef: type: string description: ID of anc.PricedAncillary element. The reference to an ancillary definition and pricing details/formula used to create an upgrade air extra. example: id01 bookingClassAvailabilityRef: type: string description: ID of res.BookingClassAvaialbility element. The reference to a number of available seats in a booking class that is going to be used for an upgrade. example: id01 res.VisaVerified: type: object description: This is referenceable element because it needs to be referenced when used in UpdateReservation flow. properties: id: type: string description: Id attribute. value: type: boolean ress.EnumUpdateContext: type: string description: |- Identifies context of update operation. PASSENGER_EMERGENCY_CONTACT - Passenger's emergency contact - EmergencyContact ID is used to identify the element. PASSENGER_CONTACT_TRACING_PHONE - Passenger's secondary phone number - ContactTracingDetail xml ID is used to identify the element. PASSENGER_CONTACT_TRACING_EMAIL - Passenger's email address - ContactTracingDetail xml ID is used to identify the element. PASSENGER_DOCUMENT - Passenger's document - Document ID is used to identify the element PASSENGER_LOYALTY_ACCOUNT - Passenger's loyalty account - LoyaltyAccount ID is used to identify the element PASSENGER_SEGMENT_LOYALTY_ACCOUNT - Loyalty account associated with passenger on a given segment. LoyaltyAccount ID is used to identify the element. PASSENGER_FLIGHT_SEAT - Seat associated with passenger on a given flight. PassengerFlight ID is used to identify the element. PASSENGER_ADDRESS - Passenger's address - Address ID is used to identify the element PASSENGER_REDRESS - Passenger's redress number - Passenger id is used to identify the element PASSENGER_PRE_SCREENING_DATA - Passenger's secure flight data - Passenger id is used to identify the element PASSENGER_WEIGHT_CATEGORY - Passenger's weight category - Passenger id is used to identify the element PASSENGER_KNOWN_TRAVELER - Passenger's Known Traveler number - Passenger id is used to identify the element PASSENGER_FISCAL_CODE - Passenger's fiscal code - Passenger id is used to identify the element PASSENGER_VERIFICATION - Additional passenger verification - Passenger ID is used to identify the element. PASSENGER_EDIT_CODE - Edit code associated with passenger on given segment. EditCode id is used to identify the element. RESERVATION_REMARK - Remark associated with reservation. Remark id is used to identify the element. GENERIC_SPECIAL_REQUEST - Special service request or other supplementary information associated with passenger, passenger's segment, segment or reservation. GenericSpecialRequest ID is used to identify the element. PASSENGER_ADDITIONAL_TRAVEL_INFORMATION - Passenger's additional travel information - AdditionalTravelInformation ID or any child of this structure is used to identify the element. PASSENGER_CONTACT - Passenger's contact - EmailAddress or Phone ID is used to identify the element. PASSENGER_IROP_CONTACT - Passenger's irop contact - IropContact ID is used to identify the element. PASSENGER_TIMATIC_OVERRIDE - Timatic status override. Should be enabled only for Agent facet application. Only OperationType: ADD, DELETE are valid for this context. PASSENGER_BAGGAGE_CHARGE - Passenger's baggage charge. AirExtra ID is used to identify the element. PASSENGER_CHECKED_IN_BAGGAGE - Passenger's checked-in baggage. CheckedBaggage ID is used to identify the element. AIR_EXTRA_PRICE - Air extra updated price. AirExtra ID is used to identify the element. enum: - PASSENGER_EMERGENCY_CONTACT - PASSENGER_CONTACT_TRACING_PHONE - PASSENGER_CONTACT_TRACING_EMAIL - PASSENGER_DOCUMENT - PASSENGER_LOYALTY_ACCOUNT - PASSENGER_SEGMENT_LOYALTY_ACCOUNT - PASSENGER_FLIGHT_SEAT - PASSENGER_ADDRESS - PASSENGER_REDRESS - PASSENGER_PRE_SCREENING_DATA - PASSENGER_WEIGHT_CATEGORY - PASSENGER_KNOWN_TRAVELER - PASSENGER_FISCAL_CODE - PASSENGER_VERIFICATION - PASSENGER_EDIT_CODE - RESERVATION_REMARK - GENERIC_SPECIAL_REQUEST - PASSENGER_ADDITIONAL_TRAVEL_INFORMATION - PASSENGER_CONTACT - PASSENGER_IROP_CONTACT - PASSENGER_TIMATIC_OVERRIDE - PASSENGER_BAGGAGE_CHARGE - PASSENGER_CHECKED_IN_BAGGAGE - AIR_EXTRA_PRICE ress.UpdateDesignator: type: object description: Identifies an object (through context and ID) that should be updated and modification operation e.g. ADD, DELETE. required: - context - operation properties: context: $ref: '#/definitions/ress.EnumUpdateContext' operation: description: Modification operation. $ref: '#/definitions/sec.EnumOperationType' value: type: string description: ID of any element. example: id01 ress.UpdateReservationResult: type: object description: Provides detailed information about update status for the element identified by update designator from the request. required: - status properties: status: type: array description: |- Description of issues encountered. The following error statuses are supported: - UNABLE_TO_ADD_DESTINATION_ADDRESS - (Error) Error on request to add Destination Address. - UNABLE_TO_ADD_RESIDENCE_ADDRESS - (Error) Error on request to add Residence Address. - UNABLE_TO_ADD_PCTC_INFORMATION - (Error) Error on request to add Emergency Contact Information. - UNABLE_TO_ADD_CONTACT_TRACING_INFORMATION - (Error) Error on request to add Contact Tracing Information. - UNABLE_TO_ADD_DOCUMENT - (Error) Error on request to add document of any type. - UNABLE_TO_ADD_DOCUMENT_DUE_TO_SEAT_RESTRICTION - (Error) Error on request to add a document due to passenger's age not compliant with the currently selected seat restriction rules. - UNABLE_TO_ADD_REDRESS_NUMBER - (Error) Error on request to add Redress Number. - UNABLE_TO_ADD_KNOWN_TRAVELER_NUMBER - (Error) Error on request to add Known Traveler Number. - UNABLE_TO_ADD_FREQUENT_FLYER_NUMBER - (Error) Error on request to add Frequent Flyer Number. - NAME_DOES_NOT_MATCH_FREQUENT_FLYER_ACCOUNT_OWNER - (Error) Passenger name does not match with Frequent Flyer account. - CANNOT_FIND_FREQUENT_FLYER_ACCOUNT - (Error) Cannot find Frequent Flyer account. - FREQUENT_FLYER_ACCOUNT_ALREADY_ASSOCIATED_WITH_PASSENGER - (Error) There is already Frequent Flyer account associated with given passenger. - FREQUENT_FLYER_ACCOUNT_ALREADY_ASSOCIATED_WITH_SEGMENT - (Error) There is already Frequent Flyer account associated with given passenger on given segment. - CANNOT_ASSOCIATE_FREQUENT_FLYER_ACOUNT_WITH_INFANT - (Error) Cannot associate Frequent Flyer account with infant. - SEGMENT_LEVEL_FREQUENT_FLYER_ACCOUNT_IS_NOT_SUPPORTED - (Error) This airline does not support segment level Frequent Flyer account association. - UNABLE_TO_ADD_SECURE_FLIGHT_INFORMATION - (Error) Error on request to add Secure Flight Data. - SEAT_UNAVAILABLE - (Error) Seat selection response. Selected seat already taken, not available for assignment. - PASSENGER_IS_STANDBY - (Error) This indicates a Standby Pax, not eligible for seat assignment until Gate Agent pull him from list and put him on aircraft. - SEAT_ASSIGNMENT_ERROR - (Error) Generic error category for various errors that may occur when requesting seat assignment. - SEAT_OFFER_PROCESSING_ERROR - (Error) Error occurred while processing the offer. - SEAT_ASSIGNMENT_WARNING - (Warning) Generic warning category for various issues that may occur when requesting seat assignment. - UNSUPPORTED - (Warning) Operation is unsupported. - WEIGHT_CATEGORY_ASSIGNMENT_ERROR - (Error) Error on request to set passenger's weight category. - MOBILE_BOARDING_PASS_UNSUPPORTED - (Warning) Mobile boarding pass is unsupported. Mobile boarding pass is unsupported e.g. due to airport's technical limitations or law regulations. - BOARDING_PASS_INHIBITED_RESTRICTED_AIRPORT_OR_FLIGHT - (Warning) Boarding pass not provided due to restrictions set on the airport or flight. - BOARDING_PASS_INHIBITED_CREDIT_CARD_VALIDATION_REQUIRED - (Warning) Credit card validation required to get boarding pass. - BOARDING_PASS_INHIBITED_SELECTEE - (Warning) Boarding pass not provided - passenger selected for enhanced security screening. - UNABLE_TO_PROVIDE_BOARDING_PASS_BAR_CODE - (Warning) Boarding pass bar code not provided. - BOARDING_PASS_INCOMPLETE - (Warning) Boarding pass incomplete. Boarding pass does not contain all the details usually available. - UNABLE_TO_SET_FISCAL_CODE - (Error) Error on request to set passenger's fiscal code. - DOCUMENT_NUMBER_FORMAT - (Error) Document number has wrong format. - DOCUMENT_NUMBER_INHIBITED - (Error) Document number is inhibited. - DOCUMENT_NUMBER_DUPLICATED - (Error) Duplicated document number in reservation. - UNABLE_TO_PROCESS_PASSENGER_ADDITIONAL_TRAVEL_INFORMATION - (Error) Error on processing passenger additional travel information. - UNABLE_TO_UPDATE_EDIT_CODE - (Error) Edit code update operation failed. - UNABLE_TO_UPDATE_SPECIAL_SERVICE_REQUEST - (Error) SSR update operation failed. - UNABLE_TO_UPDATE_OTHER_SUPPLEMENTARY_INFORMATION - (Error) OSI update operation failed. - UNABLE_TO_UPDATE_REMARK - (Error) Remark update operation failed. - EDIT_CODE_UPDATE_INCOMPLETE - (Warning) Incomplete edit code update operation. - UNABLE_TO_UPDATE_IROP_CONTACT_INFORMATION - (Error) IROP contact information update operation failed. - UNABLE_TO_ADD_BAGGAGE_CHARGE - (Error) Adding baggage charge failed. - BAGGAGE_CHARGE_RECALCULATION_INCOMPLETE - (Warning) Incomplete baggage charge recalculation operation. - UNABLE_TO_ADD_CONTACT_DETAIL - (Error) Error on request to add contact for passenger. - EXPIRY_DATE_REQUIRED - (Error) Expiry date is required. - COUNTRY_CODE_REQUIRED - (Error) Country code is required. - DOCUMENT_FIRST_NAME_MISMATCH - (Error) First name mismatch. - DOCUMENT_LAST_NAME_MISMATCH - (Error) Last name mismatch. - DOCUMENT_FIRST_AND_LAST_NAME_MISMATCH - (Error) First and last name mismatch. items: $ref: '#/definitions/svc.Status' update: description: Identifies element from update request. It links update designators from the request with the update statuses in the response. $ref: '#/definitions/ress.UpdateDesignator' sec.Address: type: object description: A generic type which represents an address. properties: city: minLength: 1 maxLength: 128 type: string description: City name. example: Krakow companyName: minLength: 1 maxLength: 128 type: string description: Name of the company. Mandatory when type is BUSINESS. example: Sabre Corporation country: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: PseudoCity code and default currency, if specified. If the Currency element is populated, it overrides the default currency. example: PL id: type: string description: Id attribute. personName: description: Passenger name. $ref: '#/definitions/sec.PersonName' postalCode: minLength: 1 maxLength: 32 type: string description: Postal code. Format depends on a particular country. example: 30-303 stateProvince: minLength: 1 maxLength: 128 type: string description: State or province. It is a free text. For US it will be state code, for other countries it will be province identification. example: MALOPOLSKA street1: minLength: 1 maxLength: 128 type: string description: Street part of an address. example: Buma Square street2: minLength: 1 maxLength: 128 type: string description: Additional street part which might be required in some cases. example: Wadowicka 6D type: description: The type of a address. example: HOME $ref: '#/definitions/sec.EnumAddressType' sec.AirExtraPaymentStatus: type: object properties: statusCode: minLength: 1 maxLength: 32 type: string description: Tiny string 1 to 32 characters in length. example: HD value: $ref: '#/definitions/sec.EnumAirExtraPaymentStatus' sec.AircraftLease: type: object description: 'Provides details about aircraft lease. There are two main reasons why airlines lease aircraft: to avoid buying them, and to provide temporary increase in capacity. The industry has two main leasing types, wet leasing which is normally used for short term leasing and dry leasing which is more normal for the longer term leases.' properties: lessorAirline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: An airline which provides aircraft to another airline. Depending on the lease type it can also provide complete crew, maintenance, and insurance. example: AF marketingText: minLength: 1 maxLength: 128 type: string description: Free text description which describes the relation between lessor and lessee airlines e.g. AIR FRANCE FOR ETIHAD AIRWAYS. example: AIR FRANCE FOR ETIHAD AIRWAYS sec.BaggageTagType: type: object description: Type of applied baggage tag type. required: - code properties: code: minLength: 1 maxLength: 32 type: string description: Bag type code. example: D description: minLength: 1 maxLength: 128 type: string description: Bag type description. example: DAMAGED reason: type: array description: Structure that represents reasons for specific bag tag types. items: $ref: '#/definitions/sec.Reason' sec.BinaryData: type: object description: Represents binary data (e.g. images, documents). required: - contentType properties: contentType: maxLength: 255 type: string description: Content type (also known as mime or media type) that specifies the type of binary content. example: image/png name: minLength: 1 maxLength: 4096 type: string description: Optional name associated with binary data (e.g. file name). example: sample.png value: format: byte pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$ type: string sec.ContactDetails: type: object description: The representation of traveller's contact information. properties: address: type: array description: Addresses associated with the profile. items: $ref: '#/definitions/sec.Address' email: type: array description: Email addresses associated with the profile. items: $ref: '#/definitions/sec.EmailAddress' phone: type: array description: Phone numbers associated with the profile. items: $ref: '#/definitions/sec.Phone' sec.ConversionRatio: type: object description: Ratio used to calculate monetary equivalent of the points/miles. e.g. if ratio is 0.25 than 20 points equals to 5 units of the currency as 20 = 5 / 0.25. properties: minimumPoints: format: int32 type: integer description: Minimal number of points which must remain unconverted. It should be specified only if there is specified minimum defined for the PriceElement it refers to. value: format: double type: number sec.ConversionRules: type: object description: 'Details required to convert loyalty points/miles to monetary amount. The purpose of this element is to provide the client with all required data to allow dynamic recalculation of the returned amounts into loyalty points based on user inputs. The following calculation is performed to calculate points/miles based on the provided monetary amount: monetary_amount/ratio. Then the result is adjusted to the specified scalling mode and rounded if required.' properties: minimumPoints: format: int32 type: integer description: Minimum points required for dynamic conversion. example: 1000 roundingMode: description: Rounding mode used when the converted value is calculated. $ref: '#/definitions/sec.EnumRoundingMode' scalingMode: description: Scale indicating the calculated converted value. $ref: '#/definitions/sec.EnumScalingMode' sec.Deal: type: object description: Represents discount details applicable to the price. required: - offerName - type properties: amount: description: Regulatory price amount in the original currency in which the fare was defined. It could also refer to the number of loyalty points present when the type is *_AMOUNT. If the value is a calculated value, then the percentage is also populated for reference. $ref: '#/definitions/sec.Money' conversionRatio: description: Details required to convert loyalty points/miles to a monetary amount. This element provides the client with all required data to allow dynamic recalculation of the returned amounts into loyalty points based on user inputs. If required, RoundingMode and ScalingMode are taken from the ConversionRules element in PriceBreakdown. $ref: '#/definitions/sec.ConversionRatio' id: type: string description: Id attribute. offerName: minLength: 1 maxLength: 255 type: string description: Name of the offer that identifies the discount. example: MAY WEEKEND DISCOUNT percentage: format: double type: number description: Price discount represented as a percent. example: 156.59 points: format: double type: number description: Discount represented in number of loyalty points. example: 156.59 promotionCode: type: array description: Promotion code used when a request is processed. In case of multiple promotion codes, each code is associated with a passenger. The order of the promotion codes is consistent between a request and a response. This gives possibility for POS to maintain association between a promotion code and a passenger in basis of order of the promotion codes. items: type: string promotionId: minLength: 1 maxLength: 255 type: string description: Promotion ID is the ID of promotion assigned automatically during creation. example: '6896480' promotionTag: minLength: 1 maxLength: 255 type: string description: Promotion Tag is the marketing text send by FlightPromotion Service which can contain promotion ID and explanation of what the promotion is. example: THISISALPHANUMERICPROMOTIONTAGWITHNUMBERS123456789 type: description: Type of the deal thi structure represents. $ref: '#/definitions/sec.EnumDealType' sec.Deck: type: object description: Aircraft deck code. properties: code: pattern: ^([A-Z_0-9]{1,20})$ minLength: 1 maxLength: 20 type: string description: Custom deck code. Used only with OTHER deck value. Allows to accommodate new deck codes without contract/enum extension and used until the new codes are added to the new version of contract. example: MIDDLE value: $ref: '#/definitions/sec.EnumDeck' sec.Document: type: object description: Represents a document issued for the user. required: - type properties: applicableCountry: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: The code of country which the document is applicable for e.g. US for US visa issued in PL. example: US countryOfBirth: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: The code of country where the person was born. This element should be populated if the code is available or the system is able to figure it out based on other data. It may happened that country code is not available and this element is not populated. Instead PlaceOfBirth may be populated and may contain some sort of country identification as well e.g. country name in a specific language. example: US dateOfBirth: format: date type: string description: Date of birth if different than in containing structure. expiryDate: format: date type: string description: Date when the document will expire. gender: description: Gender as provided in the document. $ref: '#/definitions/sec.EnumGender' id: type: string description: Id attribute. issueDate: format: date type: string description: Date when the document was issued. issuingCountry: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: The code of country which issued the document. example: US issuingPlace: minLength: 1 maxLength: 128 type: string description: The place where the document has been issued. example: Krakow nationality: pattern: ^([A-Z]{2,3})$ minLength: 2 maxLength: 3 type: string description: Nationality country code. example: GBO number: minLength: 1 maxLength: 32 type: string description: Document number. example: AL12345678 personName: description: Passenger name. $ref: '#/definitions/sec.PersonName' placeOfBirth: minLength: 1 maxLength: 35 type: string description: |- This element contains unstructured details about person's place of birth. It may contains e.g. - a complete country name - or, a city and state, - or a city and country name. If the code of the country of birth is known and it is the only information available about person's place of birth then CountryOfBirth element will be populated instead. example: Southlake type: description: Type of the document. example: PASSPORT $ref: '#/definitions/sec.EnumDocumentType' sec.DynamicCurrencyConversion: type: object description: Offer of Dynamic Currency Conversion payment. required: - amount - exchangeRateInfo - originalAmount properties: amount: description: Regulatory price amount in the original currency in which the fare was defined. It could also refer to the number of loyalty points present when the type is *_AMOUNT. If the value is a calculated value, then the percentage is also populated for reference. $ref: '#/definitions/sec.Money' exchangeRateInfo: description: Exchange rate details used for amount calculation. It includes merchant margin rate. $ref: '#/definitions/sec.ExchangeRateInfo' originalAmount: description: Original amount in terminal (POS) currency. $ref: '#/definitions/sec.Money' supplierIdentifier: minLength: 1 maxLength: 8 type: string description: Identification of the supplier of the DCC solution. example: FEXCO sec.EmailAddress: type: object description: A generic type used to represent email address. properties: id: type: string description: Id attribute. type: description: Indicates the type of the email. example: PERSONAL $ref: '#/definitions/sec.EnumEmailType' value: pattern: ^([^@]+@[^@]+\.[^@]+)$ minLength: 5 maxLength: 256 type: string sec.EmdNumber: type: object description: Airline emd number. required: - number properties: number: minLength: 1 maxLength: 32 type: string description: Represents full emd number. example: '00121250016462' sec.EmergencyContact: type: object description: Contact data which should be used in case of emergency. properties: contactDetails: minLength: 1 maxLength: 128 type: string description: May be anything but usually it is a phone number. example: +48 12 12 23 123 countryCode: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: Country associated with the emergency contact details. example: US id: type: string description: Id attribute. name: minLength: 1 maxLength: 128 type: string description: May be a person name or business name. No particular format is expected. example: John Doe otherDetails: minLength: 1 maxLength: 128 type: string description: Additional non-standard emergency contact details. example: I'm short string relationship: minLength: 1 maxLength: 128 type: string description: Relationship between emergency contact and passenger(s). example: brother sec.ContactTracingDetails: type: object description: The representation of traveller's contact tracing information. properties: emails: type: array description: Email addresses. items: $ref: '#/definitions/sec.ContactTracingDetail' phones: type: array description: Secondary phone numbers. items: $ref: '#/definitions/sec.ContactTracingDetail' sec.ContactTracingDetail: type: object description: The representation of traveller's contact tracing information. properties: id: type: string description: Id attribute. value: type: string countryCode: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string example: US sec.EnumAddressType: type: string description: |- Used to indicate the type of address e.g. home HOME - Home address RESIDENCE - Residence address. WORK - Work address INVOICE - Address where invoices should be sent OTHER - Other type of address DESTINATION - Travel destination address PRIVATE - Private address. BUSINESS - Business address. There are countries where company name must be included in the invoices in order to reimburse business travel expenses. Company name stored in this element can be extracted from the reservation by the automated tools to be included in the invoice/receipt if needed. enum: - HOME - RESIDENCE - WORK - INVOICE - OTHER - DESTINATION - PRIVATE - BUSINESS sec.EnumAirExtraPaymentStatus: type: string description: |- PENDING - The ancillary has been selected by the passenger and has not been purchased yet. FULFILLED - The ancillary has been selected by the passenger and purchased by the passenger. WAIVED - The ancillary has been selected by the passenger and the purchase is not required since the payment has been waived. VERIFICATION - The ancillary has been selected by the passenger and is waiting for verification in order to be pending or rejected. REJECTED - The ancillary has been selected by the passenger but cannot be purchased. UNSUPPORTED - The ancillary has unsupported status. enum: - PENDING - FULFILLED - WAIVED - VERIFICATION - REJECTED - UNSUPPORTED sec.EnumCabinClass: type: string description: |- ECONOMY - Economy cabin type PREMIUM_ECONOMY - Premium economy cabin type BUSINESS - Business cabin type PREMIUM_BUSINESS - Premium business cabin type FIRST - First cabin type PREMIUM_FIRST - Premium first cabin type. enum: - ECONOMY - PREMIUM_ECONOMY - BUSINESS - PREMIUM_BUSINESS - FIRST - PREMIUM_FIRST sec.EnumDealType: type: string description: |- Defines types of custom deals defined in the system. DISCOUNT - Deal which decreases the price. RISE - Deal which increases the price. FEE_WAIVER - Deal which waives the price. OTHR - Deal used as an indicator of manually priced baggage charge. It allows ANCS to correctly calculate charges on subsequent calculation. enum: - DISCOUNT - RISE - FEE_WAIVER - OTHR sec.EnumDeck: type: string enum: - MAIN - UPPER - OTHER sec.EnumDocumentType: type: string description: NATIONAL_ID and NEXUS_CARD can be used as identity document to travel between countries in lieu of a passport. Both of them use the same validation as passport. enum: - PASSPORT - PASSPORT_DIPLOMATIC - PASSPORT_SERVICE - PASSPORT_SPECIAL - ALIEN_RESIDENT_CARD - PERMANENT_RESIDENT_CARD - FACILITATION_DOC - MILITARY_ID - US_NATURALIZATION_CERT - REENTRY_PERMIT - BORDER_CROSSING_CARD - REFUGEE_TRAVEL_DOCUMENT - VISA - NATIONAL_ID - NEXUS_CARD sec.EnumEmailType: type: string description: Available types of email addresses e.g. personal, work. enum: - PERSONAL - WORK - OTHER sec.EnumFareVendor: type: string enum: - ATPCO - SITA - SABRE_MYFARES_AIRLINES - SABRE_MYFARES_SUBSCRIBERS sec.EnumFlightScheduleStatus: type: string description: |- Flight status related to schedule. ON_TIME - Flight is departing/arriving on time. DELAYED - Flight is departing or arriving later than scheduled. EARLY - Flight is departing or arriving earlier than scheduled. CANCELLED - Flight is cancelled. enum: - ON_TIME - DELAYED - EARLY - CANCELLED sec.EnumFlightSpan: type: string enum: - DOMESTIC - INTERNATIONAL sec.EnumFormOfPaymentType: type: string description: |- PAYMENT_CARD - Credit or debit card. LOYALTY - Loyalty points/miles. EBANK - eBank e.g. Travel Bank. GIFT_CARD - Gift card. VOUCHER - UATP eVoucher. CHECK - Check. CASH - Cash. OFFLINE - Offline payment - payment is made offline (not at the same time when booking) either in designated location/retailer or over the Internet. POLI - POLi internet payment. SMART_LINK - SmartLink internet or offline payment. PAYPAL - PayPal internet payment. DIRECT_DEBIT - Direct debit is a financial transaction where one party of the transaction -payee (e.g. airline) withdraws funds directly from the other party's - payer (e.g. passenger who makes reservation) bank account. OTHER - Not yet defined. enum: - PAYMENT_CARD - LOYALTY - EBANK - GIFT_CARD - VOUCHER - CHECK - CASH - OFFLINE - POLI - SMART_LINK - PAYPAL - DIRECT_DEBIT - OTHER sec.EnumGender: type: string description: |- Gender indicator e.g. female FEMALE - Female MALE - Male UNDISCLOSED - Undisclosed UNSPECIFIED - Unspecified A - A B - B C - C D - D E - E F - F G - G H - H I - I J - J K - K L - L M - M N - N O - O P - P Q - Q R - R S - S T - T U - U V - V W - W X - X Y - Y Z - Z. enum: - FEMALE - MALE - UNDISCLOSED - UNSPECIFIED - A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z sec.EnumItineraryPartType: type: string description: |- OUTBOUND - Outbound type of the itinerary part INBOUND - Inbound type of the itinerary part MULTICITY - Itinerary part for the multicity PAST - Itinerary part for the past segments. enum: - OUTBOUND - INBOUND - MULTICITY - PAST sec.EnumMileageUnit: type: string description: |- Mileage unit. MILES - Distance in miles KILOMETERS - Distance in kilometers. enum: - MILES - KILOMETERS sec.EnumOperationType: type: string description: |- Define possible modification types: ADD, MODIFY, DELETE, VERIFY ADD - Indicates a new data element should be added MODIFY - Indicates a new data element should be modified DELETE - Indicates a new data element should be deleted VERIFY - Indicates that some additional reservation processing should be triggered. enum: - ADD - MODIFY - DELETE - VERIFY sec.EnumPassengerType: type: object description: Type of the passengers. If a special value Other is used then extension attribute is required. For Example, If passenger type is one of the listed passenger types, passenger type value is taken from the pre-defined set. If Passenger Type is not one of the predefined types, passenger types value is defined as Other and the actual, extended value is held by extension attribute. properties: extension: pattern: ^([A-Z0-9]{3})$ minLength: 3 maxLength: 3 type: string example: MRE value: $ref: '#/definitions/sec.EnumPassengerTypeBase' sec.EnumPassengerTypeBase: type: string description: Used instead of OpenEnumeration to be able to validate extension attribute format. OpenEnumeration does not support it. enum: - ADULT - SENIOR - YOUTH - CHILD - CHILD_04 - CHILD_11 - INFANT - INFANT_WITH_SEAT - STUDENT - MILITARY - SENIOR_CITIZEN - FREQUENT_FLYER - COMPANION - ADULT_WITH_COMPANION - Other sec.EnumPaymentCardType: type: string description: |- CREDIT_CARD - PaymentCardType as CreditCard DEBIT_CARD - PaymentCardType as DebitCard. enum: - CREDIT_CARD - DEBIT_CARD sec.EnumPhoneType: type: string description: |- Defines possible types of phone numbers e.g. MOBILE. MOBILE - Mobile number AGENCY - Agency number WORK - Work number HOME - Home number FAX - Fax number OTHER - Other - not listed BUSINESS - Interchangeable with WORK. CELLULAR - Interchangeable with MOBILE. HOTEL - Phone number of the hotel where person/passenger stays. enum: - MOBILE - AGENCY - WORK - HOME - FAX - OTHER - BUSINESS - CELLULAR - HOTEL sec.EnumPropertyType: type: string enum: - INT - DECIMAL - TEXT - ENUM sec.EnumRoundingMode: type: string description: |- UP - Rounding mode to round away from zero. Always increments the digit prior to a non-zero discarded fraction. Note that this rounding mode never decreases the magnitude of the calculated value. 5.5 -> 6 2.5 -> 3 1.6 -> 2 1.1 -> 2 1.0 -> 1 -1.0 -> -1 -1.1 -> -2 -1.6 -> -2 -2.5 -> -3 -5.5 -> -6 DOWN - Rounding mode to round towards zero. Never increments the digit prior to a discarded fraction (i.e., truncates). Note that this rounding mode never increases the magnitude of the calculated value. 5.5 -> 5 2.5 -> 2 1.6 -> 1 1.1 -> 1 1.0 -> 1 -1.0 -> -1 -1.1 -> -1 -1.6 -> -1 -2.5 -> -2 -5.5 -> -5 CEILING - Rounding mode to round towards positive infinity. If the result is positive, behaves as for RoundingMode.UP; if negative, behaves as for RoundingMode.DOWN. Note that this rounding mode never decreases the calculated value. 5.5 -> 6 2.5 -> 3 1.6 -> 2 1.1 -> 2 1.0 -> 1 -1.0 -> -1 -1.1 -> -1 -1.6 -> -1 -2.5 -> -2 -5.5 -> -5 FLOOR - Rounding mode to round towards negative infinity. If the result is positive, behave as for RoundingMode.DOWN; if negative, behave as for RoundingMode.UP. Note that this rounding mode never increases the calculated value. 5.5 -> 5 2.5 -> 2 1.6 -> 1 1.1 -> 1 1.0 -> 1 -1.0 -> -1 -1.1 -> -2 -1.6 -> -2 -2.5 -> -3 -5.5 -> -6 HALF_UP - Rounding mode to round towards nearest neighbor unless both neighbors are equidistant, in which case round up. Behaves as for RoundingMode.UP if the discarded fraction is >= 0.5; otherwise, behaves as for RoundingMode.DOWN. Note that this is the rounding mode commonly taught at school. 5.5 -> 6 2.5 -> 3 1.6 -> 2 1.1 -> 1 1.0 -> 1 -1.0 -> -1 -1.1 -> -1 -1.6 -> -2 -2.5 -> -3 -5.5 -> -6 HALF_DOWN - Rounding mode to round towards nearest neighbor unless both neighbors are equidistant, in which case round down. Behaves as for RoundingMode.UP if the discarded fraction is > 0.5; otherwise, behaves as for RoundingMode.DOWN. 5.5 -> 5 2.5 -> 2 1.6 -> 2 1.1 -> 1 1.0 -> 1 -1.0 -> -1 -1.1 -> -1 -1.6 -> -2 -2.5 -> -2 -5.5 -> -5 HALF_EVEN - Rounding mode to round towards the nearest neighbor unless both neighbors are equidistant, in which case, round towards the even neighbor. Behaves as for RoundingMode.HALF_UP if the digit to the left of the discarded fraction is odd; behaves as for RoundingMode.HALF_DOWN if it's even. Note that this is the rounding mode that statistically minimizes cumulative error when applied repeatedly over a sequence of calculations. It is sometimes known as Banker's rounding, and is chiefly used in the USA. This rounding mode is analogous to the rounding policy used for float and double arithmetic in Java. 5.5 -> 6 2.5 -> 2 1.6 -> 2 1.1 -> 1 1.0 -> 1 -1.0 -> -1 -1.1 -> -1 -1.6 -> -2 -2.5 -> -2 -5.5 -> -6. enum: - UP - DOWN - CEILING - FLOOR - HALF_UP - HALF_DOWN - HALF_EVEN sec.EnumScalingMode: type: string description: |- NEAREST_1 - e.g. 12345.67 -> 12345 NEAREST_10 - e.g. 12345.67 -> 12340 NEAREST_100 - e.g. 12345.67 -> 12300 NEAREST_1000 - e.g. 12345.67 -> 12000. enum: - NEAREST_1 - NEAREST_10 - NEAREST_100 - NEAREST_1000 sec.EnumSizeUnit: type: string enum: - CENTIMETER - INCH - METER - FEET sec.EnumTaxType: type: string description: |- Tax application type FLAT - Flat tax type PROPORTIONAL - Proportional tax type. enum: - FLAT - PROPORTIONAL sec.EnumTravelPortionType: type: string description: |- ITINERARY - The whole itinerary. ITINERARY_PART - Itinerary part. FLIGHT - Flight. SEGMENT - Segment. enum: - ITINERARY - ITINERARY_PART - FLIGHT - SEGMENT sec.EnumWeightUnit: type: string description: Weight unit e.g. kilograms. enum: - KILOGRAM - POUND sec.ExchangeRateInfo: type: object required: - rate properties: basedOn: minLength: 1 maxLength: 32 type: string description: Name of the provider of the exchange rate used as a base for the final exchange rate returned to the consumer. example: REUTERS WHOLESALE INTERBA margin: format: double type: number description: Applicable merchant margin rate. rate: format: double type: number description: Exchange rate used to calculate amount in payment card native currency from the original POS currency. It includes merchant margin rate. sec.FareInfo: type: object description: Defines air fare attributes like booking class, fare basis code etc. required: - bookingClass properties: amount: format: double type: number description: Regulatory price amount in the original currency in which the fare was defined. It could also refer to the number of loyalty points present when the type is *_AMOUNT. If the value is a calculated value, then the percentage is also populated for reference. example: 156.59 atpcoRule: minLength: 1 maxLength: 32 type: string description: Rule indicating that the fare paid for the travel (with the priced service) is governed by a specific rule. Each fare has a rule, which links the fare and the rule categories, and is defined by the airline. example: WB05 atpcoTariff: format: int32 type: integer description: ATPCO tariff number (geographically based) that indicates the fare paid for the travel with the priced service is governed by a specific rule. Each fare is determined by the tariff given by the fare market. bookingClass: pattern: ^([A-Z])$ minLength: 1 maxLength: 1 type: string description: Cabin booking class code, also known as RBD (Reservations/Booking Designator), that contains one uppercase alpha character. If the code is not specified, seat maps for all booking classes are retrieved. example: Y operatingBookingClass: pattern: ^([A-Z])$ minLength: 1 maxLength: 1 type: string description: Operating cabin booking class code, that contains one uppercase alpha character. example: Y brand: pattern: ^([A-Z0-9]{1,10})$ type: string description: Fare brand code. example: F6 cabinClass: description: Cabin class, such as ECONOMY. Multiple classes can be requested, however only a single cabin class is currently supported. Although, this attribute is optional, it must be provided in almost all cases; otherwise, an error is returned. The exception is that the cabin class should not be provided for legacy redemption shopping or exchange shopping. $ref: '#/definitions/sec.EnumCabinClass' cabinClassCode: pattern: ^([A-Z])$ minLength: 1 maxLength: 1 type: string description: Code indicating physical cabin in the airplane. example: Y discountCategory: pattern: ^(19|20|21|22|25|35)$ type: string description: Numeric value specifying that the fare paid for the travel with the priced service has been created from various categories. For example, categories 19-22 apply to Discounts, category 25 applies to Fare by Rule, and category 35 applies to Negotiated Fare Restrictions. fareBasisCode: minLength: 1 maxLength: 128 type: string description: Alpha or alphanumeric code that describes the fare type and its applicable fare rules. example: XZDAU1 governingAirline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Governing carrier whose fares are used on a designated Fare Component. If there is an interline fare component, the governing carrier is selected based on criteria established by IATA. Note that changing the validating airline DOES NOT change the governing airline. example: K0 id: type: string description: Id attribute. privateTariff: type: boolean description: Flag indicating whether the fare paid for the travel with the priced service is governed by a private or public ATP tariff. Options are either 'true' or 'false'. type: pattern: ^([A-Z0-9]{1,3})$ type: string description: Code identifying specific categories or groups of fares, such as normal, special, refundable, non-refundable, exchangeable, etc. example: NLX vendor: description: Entity by which given fare was filed e.g. ATPCO or SITA. $ref: '#/definitions/sec.FareVendor' sec.FareVendor: type: object description: Represents entity by which given fare was filed. properties: code: minLength: 1 maxLength: 4 type: string description: |- Should have one of following values: ATP ATPCO SITA SITA SMFC SABRE MYFARES/FARES WEB SERVICE - AIRLINES /PCC/SABRE MYFARES/FARES WEB SERVICE - SUBSCRIBERS fares filed via sabre myfares/fares web service will use the actual pseudo city code of the agency that filed the fare. value: $ref: '#/definitions/sec.EnumFareVendor' sec.Flight: type: object description: Generic structure to represent flight/sector/flight leg/segment (different names used for the same entity). It represents either a single portion of air travel understood as a pair of departure and arrival (flight leg) or many pairs (multi-leg flight) flown on the same equipment type with the same flight number and flight date. required: - airline - arrivalAirport - arrivalTime - departureAirport - departureTime - flightNumber properties: airline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Marketing airline code. example: F7 arrivalAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Destination of the flight. example: DFW arrivalTime: format: date-time type: string description: Arrival date and time. departureAirport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Origin of the flight. example: KRK departureTime: format: date-time type: string description: Departure date and time. disclosureAirline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Code that identifies (discloses) the codeshare airline that operates the flight. This code can be different from the marketing or operating airline codes. example: VA equipment: pattern: ^([A-Z0-9]{3})$ minLength: 3 maxLength: 3 type: string description: Code identifying the type of equipment used for the flight. example: '747' flightNumber: pattern: ^([0-9]{1,4})$ minLength: 1 maxLength: 4 type: string description: Flight number provided by the marketing airline. example: '123' id: type: string description: Id attribute. operatingAirline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Operating airline code, which could be different from the marketing airline code. example: K0 operatingAirlineName: minLength: 1 maxLength: 512 type: string description: Operating airline name, which could differ from the marketing airline name. example: SABRE AIRWAYS operatingFlightNumber: pattern: ^([0-9]{1,4})$ minLength: 1 maxLength: 4 type: string description: Flight number of the operating airline, which could be different from the marketing airline. example: '222' sec.FlightDetail: allOf: - $ref: '#/definitions/sec.Flight' - type: object properties: aircraftLease: $ref: '#/definitions/sec.AircraftLease' arrivalCountry: type: string arrivalFlightScheduleStatus: $ref: '#/definitions/sec.EnumFlightScheduleStatus' arrivalTerminal: type: string boardingTime: format: date-time type: string changeOfGauge: type: boolean commuter: type: boolean departureCountry: type: string departureFlightScheduleStatus: $ref: '#/definitions/sec.EnumFlightScheduleStatus' departureGate: type: string departureTerminal: type: string distance: $ref: '#/definitions/sec.Mileage' estimatedArrivalTime: format: date-time type: string estimatedDepartureTime: format: date-time type: string flightDuration: format: int32 type: integer flightStop: type: array items: $ref: '#/definitions/sec.FlightStop' iatci: type: boolean span: $ref: '#/definitions/sec.EnumFlightSpan' status: type: string subjectToGovernmentApproval: type: boolean thirdPartyGroundHandled: type: boolean timeToDeparture: format: int32 type: integer sec.FlightStop: type: object description: Represents break during a single segment e.g. for refueling. required: - airport - arrivalTime - departureTime properties: airport: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Indicates the location where the stop occurs. example: FRA arrivalTime: format: date-time type: string description: Arrival date and time. departureTime: format: date-time type: string description: Departure date and time. duration: format: int32 type: integer description: Time at the stop airport expressed in minutes. example: 120 elapsedTime: format: int32 type: integer description: Flight time from departure airport to layover airport expressed in minutes. example: 120 sec.KeyValueProperty: type: object description: Represent a single property defined as a key/value pair. required: - key properties: key: minLength: 1 type: string description: Name of a property. example: height value: minLength: 1 type: string description: Value of a property. example: some property value sec.LoyaltyAccount: type: object description: A generic type used to represents Frequent Flyer /Loyalty account. required: - memberAirline - memberId properties: id: type: string description: Id attribute. latestAwardDate: format: date type: string description: Last time when the member was awarded. loyaltyTierLevel: description: Passenger loyalty account tier level. These levels are specific to each airline that offers a loyalty-type program. $ref: '#/definitions/sec.LoyaltyTierLevel' memberAirline: pattern: ^([A-Z0-9]{2}[A-Z]?)$ minLength: 2 maxLength: 3 type: string description: Member airline code. example: LH memberId: minLength: 1 maxLength: 128 type: string description: Member identifier - the format depends on the airline. example: '1234444423423' membershipStartDate: format: date type: string description: Date when the member joined the loyalty program. mileage: description: Current mileage value associated with the loyalty account. $ref: '#/definitions/sec.Mileage' points: format: int32 type: integer description: Price expressed in frequent flyer points/miles. example: 1000 source: description: The source of loyalty account data. $ref: '#/definitions/sec.Source' pnrId: minLength: 1 maxLength: 128 type: string description: The loyalty account identifier from the PNR system. example: '7' sec.LoyaltyTierLevel: type: object description: Loyalty account tier level definition. properties: name: minLength: 1 maxLength: 128 type: string description: Brand name as defined in the MM (Merchandising Manager) system. This could also include the Loyalty tier level, such as Gold, Silver, Platinum, etc. example: gold number: format: int32 type: integer description: Loyalty tier level identifier. tag: minLength: 1 maxLength: 128 type: string description: Code that identifies a loyalty account tier level. example: GLD priority: format: int32 type: integer description: Loyalty tier level priority. example: 4 atpco: minLength: 1 maxLength: 128 type: string description: The equivalent tier level as filed in ATPCO (the lower the number is, the better price passenger gets). example: '03' customerInsight: minLength: 1 maxLength: 128 type: string description: The equivalent tier level in the Customer Insight database. example: '02' sec.Mileage: type: object description: Represents distance. required: - unit properties: unit: description: Unit of the stored mileage e.g. miles, kilometers. example: MILES $ref: '#/definitions/sec.EnumMileageUnit' value: format: int32 type: integer sec.Source: type: string enum: - SSCI - PNR sec.Money: type: object description: A generic type used to represent monetary amount. required: - currency properties: currency: pattern: ^([A-Z]{3})$ minLength: 3 maxLength: 3 type: string description: Code of the currency. example: USD value: format: double type: number sec.PaymentCard: type: object description: 'A generic type used to represent payment card: credit, debit etc.' required: - number - typeCode properties: cardType: description: Type of Payment Card whether CreditCard or DebitCard. example: CREDIT_CARD $ref: '#/definitions/sec.EnumPaymentCardType' expirationDetails: pattern: ^(((0?[1-9]|[1-2][0-9]|3[0-1])/)?(0?[1-9]|1[0-2])/[0-9]{2})$ type: string description: Month and year until the card is valid. example: 11/15 id: type: string description: Id attribute. nameOnCard: minLength: 1 maxLength: 128 type: string description: Owner name on the card. example: John Doe number: pattern: ^([0-9]{12,19}|X{1,15}[0-9]{4})$ minLength: 12 maxLength: 19 type: string description: The actual payment card number. example: '4111111111111111' typeCode: pattern: ^([A-Z]{2})$ minLength: 2 maxLength: 2 type: string description: The code of the card e.g. VA for Visa. example: VA sec.PersonName: type: object description: A generic type used to represent traveler name. required: - first - last properties: first: minLength: 1 maxLength: 128 type: string description: First name. example: John last: minLength: 1 maxLength: 128 type: string description: Last name. example: Doe middle: minLength: 1 maxLength: 128 type: string description: Optional middle name. example: Peter prefix: minLength: 1 maxLength: 32 type: string description: Prefix placed before the passenger name, such as Mr., Dr., Ms, etc. example: Mr. raw: minLength: 1 maxLength: 128 type: string description: Passenger surname as stored in the system. It can be separated from the remaining name data with a slash, such as SMITH/JOHN DAVID. example: Mr. John Peter Doe III suffix: minLength: 1 maxLength: 32 type: string description: Optional suffix. example: III sec.Phone: type: object description: A genetic type used to represent phone number. required: - number properties: allowedSMS: type: boolean description: Indicates if SMS contact is allowed. Applicable only for phones with MOBILE type. areaCode: pattern: ^([0-9]{1,8})$ type: string description: Area code portion of the number. example: '604' carrier: type: string description: Carrier name. example: ATT countryCode: pattern: ^([0-9]{1,7})$ type: string description: Country code portion of the number. example: '48' extension: minLength: 1 maxLength: 50 type: string description: Optional extension suffix. example: '123' id: type: string description: Id attribute. number: minLength: 1 maxLength: 50 type: string description: The actual number. example: '12345678' type: description: Type of the phone number e.g. mobile, work etc. example: MOBILE $ref: '#/definitions/sec.EnumPhoneType' sec.PriceBreakdown: type: object description: This structure is used to represent total fare. It includes all the price components like base, tax, fee etc. properties: base: description: Base amount of the ancillary fee that can also include taxes if TaxesIncludedInBase is set to 'true'. $ref: '#/definitions/sec.PriceElement' commission: type: array description: Commission amount charged as part of this price. items: $ref: '#/definitions/sec.PriceElement' discount: type: array description: Applicable discounts. items: $ref: '#/definitions/sec.PriceElement' fee: type: array description: Summarized fee prices. items: $ref: '#/definitions/sec.PriceElement' surcharge: type: array description: Summarized surcharge prices. items: $ref: '#/definitions/sec.PriceElement' tax: type: array description: Lists the price or a price component that supports both monetary and/or frequent flyer type of amounts. There should be only a single element for each tax type/code. items: $ref: '#/definitions/sec.PriceElement' total: description: Grand total price for the fare. It is a sum of all the pricing components. $ref: '#/definitions/sec.PriceElement' sec.PriceElement: type: object description: A generic type used to represent a price or a price component. It supports both monetary and/or frequent flyer type of amounts. properties: amount: description: Regulatory price amount in the original currency in which the fare was defined. It could also refer to the number of loyalty points present when the type is *_AMOUNT. If the value is a calculated value, then the percentage is also populated for reference. $ref: '#/definitions/sec.Money' code: minLength: 1 maxLength: 128 type: string description: An optional code used to specify a subtype of a price e.g. certain tax category. example: AB conversionRatio: description: Details required to convert loyalty points/miles to a monetary amount. This element provides the client with all required data to allow dynamic recalculation of the returned amounts into loyalty points based on user inputs. If required, RoundingMode and ScalingMode are taken from the ConversionRules element in PriceBreakdown. $ref: '#/definitions/sec.ConversionRatio' equivAmount: description: Regulatory price amount converted to the requested currency. $ref: '#/definitions/sec.Money' override: type: boolean description: Attribute relevant only for tax price element in Reprice operation. When set to true, tax amount will override the existing tax in host. example: true points: format: int32 type: integer description: Price expressed in frequent flyer points/miles. example: 1000 referenceAmount: description: Value that is not used as the amount a passenger should pay for the fare. Instead, it is used as reference or internal calculation to determine the fare amount. For example, if a passenger chooses to pay for the fare in points and in currency, then both the Amount and EquivAmount, together with points, are populated. Consequently, the ReferenceAmount can be used to provide the initial amount that was split into both points and currency amount based on a designated set of rules. Similarly, when points are returned from a source other than the reservation system, and the user has elected to pay in points only, the ReferenceAmount can be populated with a currency amount returned from the system to use as a reference or for internal calculations (as described at the beginning of this statement). $ref: '#/definitions/sec.Money' taxType: description: An optional type used to specify a tax application type. $ref: '#/definitions/sec.EnumTaxType' sec.PropertyDefinition: type: object description: Definition of dynamic property. required: - name - type properties: allowedValue: type: array items: type: string example: - DOG max: format: int64 type: integer description: A maximum value of given property. example: 20 min: format: int64 type: integer description: A minimum value for given property. example: 0 name: minLength: 1 maxLength: 512 type: string description: A name of a property. example: WIEGHT optional: type: boolean description: Indicates if property is optional. If attribute is not present it means the property is required. type: description: Type of a property. $ref: '#/definitions/sec.EnumPropertyType' unit: minLength: 1 maxLength: 128 type: string description: A unit of given value. example: KG sec.Reason: type: object description: Structure that represents reason for specific bag tag types. required: - code properties: code: minLength: 1 maxLength: 32 type: string description: Reason code. example: '50' description: minLength: 1 maxLength: 128 type: string description: Reason description. example: SMALL DAMAGE TEST sec.Size: type: object required: - unit properties: unit: $ref: '#/definitions/sec.EnumSizeUnit' value: format: int32 type: integer sec.TicketNumber: type: object description: 'Airline ticket number. ''number'' attribute represents full ticket number including all its components: airline accounting code, stock number and check digit. Other elements are present only when available - either all or none are present.' required: - number properties: airlineAccountingCode: pattern: ^([0-9]{3})$ minLength: 3 maxLength: 3 type: string description: IATA assigned 3 digit number. Each airline has a unique one. In the full ticket number it is the first 3 digits of the number. example: '001' checkDigit: pattern: ^([0-6]{1})$ minLength: 1 maxLength: 1 type: string description: Ticket number check digit. It is calculated as modulo 7 of the number created as concatenation of the airline accounting code and serial number. example: '2' number: minLength: 1 maxLength: 32 type: string description: 'Represents full ticket number including all its components: airline accounting code, stock number and check digit.' example: '00121250016462' serialNumber: minLength: 1 maxLength: 32 type: string description: Serial number. It has no business meaning. example: '2125001646' sec.Weight: type: object description: Represents weight of an object e.g. baggage. required: - unit properties: unit: description: Weight unit e.g. kilograms. example: KILOGRAM $ref: '#/definitions/sec.EnumWeightUnit' value: format: double type: number svc.EnumStatusType: type: string enum: - ERROR - WARNING - SUCCESS example: SUCCESS svc.Status: type: object required: - type properties: code: minLength: 1 maxLength: 100 type: string example: VALIDATION_ERROR message: minLength: 1 maxLength: 1000 type: string description: Application-specific code and message. It is a textual description to provide more information about the specific condition, warning, or error displaying a code attribute as a numeric value. example: Only 2 passenger types are allowed. type: $ref: '#/definitions/svc.EnumStatusType' bus.ErrorResponse: type: object description: Generic error. properties: status: $ref: '#/definitions/bus.OperationStatus' type: $ref: '#/definitions/bus.ErrorType' errorCode: type: string description: Error code. example: ERR.2SG.SEC.MISSING_CREDENTIALS timeStamp: format: date-time type: string description: Timestamp when the error was created. example: '2020-11-01T01:01:01.372' message: type: string description: Message associated with the reported issue. example: Authentication data is missing bus.OperationStatus: type: string description: Status of an operation. enum: - Complete - Incomplete - NotProcessed - Unknown bus.ErrorType: type: string description: Error type. enum: - Transport - Validation - Application - BusinessLogic parameters: bus.ApplicationID: name: Application-ID in: header type: string required: false description: Identifies the application which invokes the service. bus.Authorization: name: Authorization in: header type: string required: true description: Gateway authorization token. x-example: Bearer T1RLAQLGvbv8bgEDtkUluJb1dBDQ1WJTfB...ommwHaQNqzTlr4mUgbY6PwQNllIeluAOtKi+42yP+4h7oaWrN/ibm5OWae7dNxDrcwZquGDM bus.ConversationID: name: Conversation-ID in: header type: string required: false description: The ID of a set of related messages that make up a conversation. bus.MessageID: name: Message-ID in: header type: string required: false description: The ID of the message. It should be globally unique. jd.SessionID: name: Session-ID in: header type: string required: true description: The ID of a stateful process. Generated and returned by DCCI once a stateful process is entered. x-example: 5937189A92E854EBCFDD0E14B2133FAAD jd.jipcc: name: jipcc in: query type: string required: true description: Storefront identifier. x-example: K0M5 responses: bus.ErrorResponse: description: Error response. schema: $ref: '#/definitions/bus.ErrorResponse'