components:
  schemas:
    AccountCode:
      description: The account code that should be used for fare identification and
        optional services processing
      type: string
    AdvanceChange:
      properties:
        after_departure:
          $ref: '#/components/schemas/AdvanceChangeInner'
        after_departure_no_show:
          $ref: '#/components/schemas/AdvanceChangeInner'
        anytime:
          $ref: '#/components/schemas/AdvanceChangeInner'
        anytime_no_show:
          $ref: '#/components/schemas/AdvanceChangeInner'
        before_departure:
          $ref: '#/components/schemas/AdvanceChangeInner'
        before_departure_no_show:
          $ref: '#/components/schemas/AdvanceChangeInner'
        id:
          type: string
      required:
      - id
      type: object
    AdvanceChangeInner:
      properties:
        assessment:
          $ref: '#/components/schemas/Assessment'
        description:
          description: A descriptive text for the advance change information
          example: Advance change allowed for free
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        fee_application:
          type: integer
        headline:
          description: A short text summarizing the advance change information
          example: Free
          type: string
        refund_method:
          $ref: '#/components/schemas/RefundMethod'
      required:
      - assessment
      - headline
      - description
      type: object
    Aircraft:
      properties:
        cabin_pressure:
          enum:
          - n/a
          - normal
          - enhanced
          - unpressurized
          type: string
        display_text:
          type: string
        id:
          type: string
        model:
          type: string
        quality:
          $ref: '#/components/schemas/Quality'
        type:
          enum:
          - bus
          - helicopter
          - jumbo
          - larger regional jet
          - n/a
          - narrowbody
          - smaller regional jet
          - train
          - turbo/prop
          - turbo or prop
          - widebody
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
        window_size:
          enum:
          - n/a
          - standard
          - larger
          - smaller
          type: string
      required:
      - id
      - display_text
      - quality
      - model
      - cabin_pressure
      - window_size
      - type
      - updated_at
      type: object
    Amenity:
      description: All of the unique Amenities that have been matched for all flights
        in the request
      properties:
        aircrafts:
          items:
            $ref: '#/components/schemas/Aircraft'
          type: array
        beverages:
          items:
            $ref: '#/components/schemas/Beverage'
          type: array
        entertainments:
          items:
            $ref: '#/components/schemas/Entertainment'
          type: array
        fresh_foods:
          items:
            $ref: '#/components/schemas/FreshFood'
          type: array
        layouts:
          items:
            $ref: '#/components/schemas/Layout'
          type: array
        powers:
          items:
            $ref: '#/components/schemas/Power'
          type: array
        seats:
          items:
            $ref: '#/components/schemas/Seat'
          type: array
        wifis:
          items:
            $ref: '#/components/schemas/Wifi'
          type: array
      required:
      - seats
      - wifis
      - powers
      - entertainments
      - fresh_foods
      - beverages
      - layouts
      - aircrafts
      type: object
    AmenityCategory:
      description: Specifies what Amenities should be returned for the given request
      enum:
      - seat
      - wifi
      - power
      - entertainment
      - fresh_food
      - beverage
      - layout
      - aircraft
      - seat_summary
      - wifi_summary
      - power_summary
      - entertainment_summary
      - fresh_food_summary
      - beverage_summary
      - layout_summary
      - aircraft_summary
      type: string
    Application:
      description: Indicates the baggage restrictions application
      enum:
      - up to
      - over
      type: string
    Assessment:
      description: The assessment of a certain attribute
      enum:
      - Neutral
      - Benefit
      - Fee
      - Restriction
      type: string
    BaggageAttributes:
      properties:
        cxr:
          description: The carrier whose Record S7 was used to extract the baggage
            information from
          example: AA
          type: string
        seq_no:
          minimum: 0
          type: integer
        service_type:
          description: The service type of the Record S7 where the information was
            sourced from
          example: B
          type: string
        sub_code:
          description: The sub-code of the Record S7 where the information was sourced
            from
          example: 0LN
          type: string
      required:
      - cxr
      - sub_code
      - service_type
      - seq_no
      type: object
    Beverage:
      properties:
        alcoholic_cost:
          $ref: '#/components/schemas/Cost'
        display_text:
          type: string
        exists:
          $ref: '#/components/schemas/Exists'
        id:
          type: string
        nonalcoholic_cost:
          $ref: '#/components/schemas/Cost'
        quality:
          $ref: '#/components/schemas/Quality'
        type:
          description: The type of beverage available
          enum:
          - alcoholic
          - nonalcoholic
          - premium alcoholic
          - alcoholic and nonalcoholic
          - n/a
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
      required:
      - id
      - display_text
      - quality
      - alcoholic_cost
      - nonalcoholic_cost
      - exists
      - type
      - updated_at
      type: object
    BoardingPriority:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the Boarding Priority information
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Boarding Priority information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Boarding Priority
            information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Boarding Priority
            information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - headline
      - description
      - assessment
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    Brand:
      description: The brand information for a Branded Fare
      properties:
        brand_codes:
          description: The brand codes, sourced from the matched Record S8 segment
          items:
            type: string
          type: array
        brand_name:
          description: The brand name, sourced from the matched Record S8 segment
          type: string
        id:
          type: string
      required:
      - id
      - brand_name
      - brand_codes
      type: object
    CalculationMethod:
      description: Defines for which portion of the travel this policy is applicable
      enum:
      - A
      - B
      - N
      type: string
    Cancellation:
      properties:
        after_departure:
          $ref: '#/components/schemas/CancellationInner'
        after_departure_no_show:
          $ref: '#/components/schemas/CancellationInner'
        anytime:
          $ref: '#/components/schemas/CancellationInner'
        anytime_no_show:
          $ref: '#/components/schemas/CancellationInner'
        before_departure:
          $ref: '#/components/schemas/CancellationInner'
        before_departure_no_show:
          $ref: '#/components/schemas/CancellationInner'
        id:
          type: string
      required:
      - id
      type: object
    CancellationInner:
      properties:
        assessment:
          $ref: '#/components/schemas/Assessment'
        description:
          description: A descriptive text for the cancellation information
          example: Cancellation non-refundable
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        fee_application:
          $ref: '#/components/schemas/FeeApplication'
        headline:
          description: A short text summarizing the cancellation information
          example: Non-refundable
          type: string
        refund_method:
          $ref: '#/components/schemas/RefundMethod'
      required:
      - assessment
      - description
      - headline
      type: object
    CarryOnBaggage:
      properties:
        assessment:
          $ref: '#/components/schemas/Assessment'
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the carry-on baggage information
          example: One free bag and a personal item allowed
          type: string
        free_bags:
          $ref: '#/components/schemas/FreeBaggageData'
        headline:
          description: A short text summarizing the carry-on baggage information
          example: 1 free and a personal item
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the baggage information
          type: string
        paid_bags:
          items:
            $ref: '#/components/schemas/PaidBaggageData'
          type: array
        small_icon_url:
          description: A lower-resolution image, related to the baggage information
          type: string
      required:
      - id
      - assessment
      - headline
      - description
      - small_icon_url
      - large_icon_url
      - paid_bags
      type: object
    CheckInPriority:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the Check-in Priority information
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Check-in Priority information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Check-in Priority
            information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Check-in Priority
            information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - headline
      - description
      - assessment
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    CheckedBaggage:
      properties:
        assessment:
          $ref: '#/components/schemas/Assessment'
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the baggage information
          example: First bag for free and a second one available for 50EUR.
          type: string
        free_bags:
          $ref: '#/components/schemas/FreeBaggageData'
        headline:
          description: A short text summarizing the baggage information
          example: 1st free and second for 50EUR
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the baggage information
          type: string
        paid_bags:
          items:
            $ref: '#/components/schemas/PaidBaggageData'
          type: array
        pre_paid_bags:
          description: Feature in BETA
          items:
            $ref: '#/components/schemas/PaidBaggageData'
          type: array
        small_icon_url:
          description: A lower-resolution image, related to the baggage information
          type: string
      required:
      - id
      - assessment
      - headline
      - description
      - small_icon_url
      - large_icon_url
      - paid_bags
      type: object
    Control:
      description: The request control specifies what information should be returned
        in the response
      properties:
        amenity_categories_filter:
          items:
            $ref: '#/components/schemas/AmenityCategory'
          maxItems: 16
          type: array
        disable_osi:
          description: Specifies whether should disable returning Optional Service
            Identifiers for UPAs
          type: boolean
        disable_technical_stops:
          description: Specifies whether should disable returning technical stops
            (hidden segments) in the response for each
          type: boolean
        disable_upa_infographics:
          description: Specifies whether should disable returning Infographic attachments
            for UPAs
          type: boolean
        disable_upa_marketing_graphics:
          description: Specifies whether should disable returning Marketing Graphics
            attachments for UPAs
          type: boolean
        disable_upa_photo:
          description: Specifies whether should disable returning Photo attachments
            for UPAs
          type: boolean
        disable_upa_tour:
          description: Specifies whether should disable returning Tour attachments
            for UPAs
          type: boolean
        disable_upa_video:
          description: Specifies whether should disable returning Video attachments
            for UPAs
          type: boolean
        features:
          description: Opt-in feature flags that would enable certain request/response
            fields or functionality added later on in the API version.
          items:
            $ref: '#/components/schemas/FeatureFlag'
          maxItems: 10
          type: array
        include_rq:
          description: Specifies whether should return the original request as part
            of the response
          type: boolean
        includes:
          items:
            $ref: '#/components/schemas/Include'
          maxItems: 3
          type: array
        os_override:
          items:
            pattern: ^[a-z]+$
            type: string
          type: array
        ticket_attributes_filter:
          items:
            $ref: '#/components/schemas/TicketAttribute'
          maxItems: 12
          type: array
        upa_attributes_filter:
          description: A filter that contains specific attributes. Only UPAs that
            have non-empty lists of these attributes will be returned.
          items:
            $ref: '#/components/schemas/UpaAttribute'
          maxItems: 6
          type: array
        upa_attributes_include:
          description: A filter that contains specific attributes. UPAs will contain
            only attributes that are listed here and not disabled.
          items:
            $ref: '#/components/schemas/UpaAttribute'
          maxItems: 6
          type: array
        upa_categories_filter:
          description: A filter that contains specific UPA categories. Only UPAs that
            have these categories will be returned.
          items:
            pattern: ^[a-z]+$
            type: string
          maxItems: 50
          type: array
        upa_seat_characteristics_filter:
          description: A filter that contains specific UPA seat characteristic codes.
            Only UPAs that have these seat characterstic combinations will be returned.
          items:
            $ref: '#/components/schemas/SeatCharacteristicCodes'
          maxItems: 50
          type: array
        upa_sources_filter:
          description: A filter that contains specific UPA sources. Only UPAs with
            the specified sources will be returned.
          items:
            $ref: '#/components/schemas/UpaSource'
          maxItems: 2
          type: array
        uta_application_filter:
          $ref: '#/components/schemas/UtaApplicationFilter'
          description: A filter that contains specific UTA applications. Only UTAs
            satisfying those applications will be returned.
      type: object
    Cost:
      description: Used to indicate whether there is a charge or not for the specific
        Amenity.
      enum:
      - free
      - free or paid
      - paid
      - n/a
      type: string
    Currency:
      description: The desired currency of the elements in the response
      pattern: ^[A-Z]{3}$
      type: string
    Data:
      properties:
        itineraries:
          items:
            $ref: '#/components/schemas/Itinerary'
          type: array
        res_date:
          description: The reservation date of the request. Plays part in fare identification
            and optional services matching.
          pattern: ^20[0-9]{2}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|30|31)$
          type: string
        tkt_date:
          description: The ticketing date of the request. Plays part in fare identification
            and optional services matching.
          pattern: ^20[0-9]{2}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|30|31)$
          type: string
      required:
      - itineraries
      type: object
    DisplayTextSummary:
      description: Used to summarize a certain Amenity's availability for all flights
        in a leg.
      properties:
        display_text:
          type: string
        exists:
          $ref: '#/components/schemas/Exists3'
      required:
      - display_text
      type: object
    Entertainment:
      properties:
        cost:
          $ref: '#/components/schemas/Cost'
        display_text:
          type: string
        exists:
          $ref: '#/components/schemas/Exists'
        id:
          type: string
        offerings:
          $ref: '#/components/schemas/EntertainmentOfferingsGroup'
        quality:
          $ref: '#/components/schemas/Quality'
        type:
          description: The best entertainment type available
          enum:
          - livetv
          - loop
          - n/a
          - none
          - on-demand
          - overhead
          - pre-download
          - seatback
          - streaming
          - tablet
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
      required:
      - id
      - display_text
      - quality
      - cost
      - exists
      - type
      - updated_at
      type: object
    EntertainmentOfferings:
      properties:
        content_type:
          description: The type of content available for an entertainment offering
          enum:
          - avod
          - iptv
          - livetv
          - movies
          - n/a
          - tvshows
          type: string
        delivery_medium:
          description: How the entertainment is delivered to the passenger for an
            entertainment offering
          enum:
          - in-seat
          - n/a
          - none
          - overhead
          - pre-download
          - streaming
          - tablet
          type: string
        rollout:
          description: Indicated the entertainment offering's coverage during the
            flight
          enum:
          - n/a
          - full
          - partial
          type: string
        selection_type:
          description: How the content is selected for an entertainment offering
          enum:
          - n/a
          - on-demand
          - live
          - loop
          type: string
      required:
      - delivery_medium
      - content_type
      - selection_type
      - rollout
      type: object
    EntertainmentOfferingsGroup:
      properties:
        offerings:
          items:
            $ref: '#/components/schemas/EntertainmentOfferings'
          type: array
        operator:
          enum:
          - and
          - or
          type: string
      required:
      - operator
      - offerings
      type: object
    Error:
      properties:
        href:
          type: string
        title:
          type: string
        uuid:
          type: string
      required:
      - uuid
      - title
      - href
      type: object
    Errors:
      items:
        $ref: '#/components/schemas/Error'
      type: array
    Exists:
      description: Indicates whether a certain property exists and is applicable for
        the given Amenity.
      enum:
      - 'yes'
      - 'no'
      - n/a
      type: string
    Exists3:
      description: Used to summarize if an Amenity is available for all, some or none
        of the flights in a leg.
      enum:
      - 'yes'
      - 'no'
      - partial
      type: string
    FareSource:
      description: The fare source for the itinerary. Plays part in optional services
        matching and Fare by Rule matching.
      pattern: ^[A-Z0-9]{1,3}$
      type: string
    FeatureFlag:
      description: 'Features in BETA: transferable_funds, markdown_text, pre_paid_checked_baggage'
      enum:
      - seat_characteristics
      - extended_req_fields
      - policy_fee_application
      - co2_emissions
      - upa_photo_alt_text
      - policies_extended_fields
      - loyalty_rewards
      - pre_paid_checked_baggage
      - markdown_text
      - transferable_funds
      type: string
    Fee:
      description: Represents a fee/charge for a certain attribute
      properties:
        amount:
          description: The amount with floating precision
          format: double
          type: number
        currency:
          description: A 3-byte currency code
          type: string
        higher_lower:
          description: The application of this fare, whether the higher or lower amount
            should be taken between the fee amount and percent of the fee amount.
            H - Higher; L - Lower; N - No Application
          enum:
          - 'H'
          - 'L'
          - 'N'
          type: string
        percentage:
          description: The percentage that must be used to calculate the actual amount
          format: double
          type: number
      required:
      - currency
      - amount
      type: object
    FeeApplication:
      properties:
        application:
          type: integer
        method:
          $ref: '#/components/schemas/CalculationMethod'
      required:
      - application
      - method
      type: object
    FreeBaggageData:
      properties:
        attributes:
          $ref: '#/components/schemas/BaggageAttributes'
        display_text:
          description: The display text that's sourced from the Tables 196, referenced
            in the Record S5
          type: string
        optional_service_id:
          description: The optional service identifier includes the carrier, service
            type, sub-code and sequence number of the record where data's source from
          example: AA0DFA123456
          type: string
        pieces:
          description: The number (decimal) of free pieces as a string, or Blank,
            where Blank signifies no restriction on the number of baggage pieces that
            can be checked; however, note that `total_weight` should be checked to
            determine if there are additional weight restrictions
          type: string
        size:
          $ref: '#/components/schemas/Size'
        total_weight:
          $ref: '#/components/schemas/TotalMaxWeight'
        weight:
          $ref: '#/components/schemas/Weight'
      required:
      - pieces
      - display_text
      - optional_service_id
      - attributes
      type: object
    FreshFood:
      properties:
        cost:
          $ref: '#/components/schemas/Cost'
        display_text:
          type: string
        exists:
          $ref: '#/components/schemas/Exists'
        id:
          type: string
        quality:
          $ref: '#/components/schemas/Quality'
        type:
          description: The type of food available
          enum:
          - n/a
          - snack
          - premium snack
          - light meal
          - meal
          - premium meal
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
      required:
      - id
      - display_text
      - quality
      - cost
      - exists
      - type
      - updated_at
      type: object
    Include:
      description: An include, specifying what information should be returned for
        the given request
      enum:
      - amenity
      - uta
      - upa
      type: string
    Itinerary:
      description: Represents a single itinerary (journey) from the request. Can be
        One Way, Round Trip, Open Jaw.
      properties:
        acct_code:
          $ref: '#/components/schemas/AccountCode'
        currency:
          $ref: '#/components/schemas/Currency'
        office_id:
          $ref: '#/components/schemas/OfficeId'
        pcc:
          $ref: '#/components/schemas/PCC'
        pos:
          $ref: '#/components/schemas/POS'
        psgrs:
          $ref: '#/components/schemas/PassengerList'
        segments:
          description: A list of the journey's segments
          items:
            $ref: '#/components/schemas/ItinerarySegment'
          maxItems: 32
          minItems: 1
          type: array
        src:
          $ref: '#/components/schemas/FareSource'
        travel_agency_id:
          $ref: '#/components/schemas/TravelAgencyId'
      required:
      - segments
      type: object
    ItinerarySegment:
      properties:
        arr:
          description: Itinerary segment's airport of arrival
          pattern: ^[A-Z]{3}$
          type: string
        cabin:
          description: 1 - Economy, 2 - Premium economy, 3 - Business, 4 - First
          maximum: 4
          minimum: 1
          type: integer
        cxr:
          description: Carrier for the itinerary segment
          pattern: ^([A-Z][0-9]|[0-9][A-Z]|[A-Z]{2})$
          type: string
        date:
          description: Itinerary segment's departure date
          pattern: ^20[0-9]{2}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|30|31)$
          type: string
        dep:
          description: Itinerary segment's airport of departure
          pattern: ^[A-Z]{3}$
          type: string
        fbc:
          description: Fare basis code. This field is conditional in case Fare related
            information is requested. (e.g. UPA, UTA)
          pattern: ^([A-Z0-9]{1,18})(/[A-Z0-9]{1,8}){0,2}$
          type: string
        fltno:
          description: Flight number of the itinerary segment
          maximum: 9999
          minimum: 1
          type: integer
        rbd:
          description: The Reservation Booking Designator for the segment
          pattern: ^[A-Z]{1,2}$
          type: string
        rule_no:
          description: Preferred rule number when multiple fares are applicable to
            the criteria
          pattern: ^[A-Z0-9]{1,4}$
          type: string
      required:
      - cxr
      - dep
      - arr
      - fltno
      - cabin
      - date
      type: object
    Layout:
      properties:
        direct_aisle_access:
          $ref: '#/components/schemas/Exists'
        display_text:
          type: string
        id:
          type: string
        quality:
          $ref: '#/components/schemas/Quality'
        row_layout:
          description: The most prevalent configuration of seats in the cabin for
            the aircraft subfleet operated
          example: 3-3-3
          type: string
        type:
          enum:
          - angled
          - angled pods
          - forward-backward
          - forward
          - herringbone
          - reverse herringbone
          - middle seat free
          - n/a
          - staggered herringbone
          - staggered
          - v-shaped
          - yin-yang
          - layered
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
      required:
      - id
      - display_text
      - quality
      - row_layout
      - direct_aisle_access
      - type
      - updated_at
      type: object
    LoungeAccess:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the Lounge Access information
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Lounge Access information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Lounge Access information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Lounge Access information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - headline
      - description
      - assessment
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    LoyaltyRewards:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the Loyalty Rewards information
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Loyalty Rewards information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Loyalty Rewards information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Loyalty Rewards information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - headline
      - description
      - assessment
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    OfficeId:
      description: An office ID that always begins with a 3-character city code
      pattern: ^[A-Z0-9]{3,}$
      type: string
    OptSvcApplication:
      description: '"Application for brand-related Optional Service UTAs. Can be:
        ''Not offered as part of the brand'', ''Displayed but not offered at the current
        Tier'', ''Offered for free'' or ''Offered for a charge''."

        '
      enum:
      - not offered
      - displayed
      - free
      - for a charge
      type: string
    OptionalServiceIdentifier:
      properties:
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        sub_code:
          description: The sub code of the Optional Service Record S7.
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - sub_code
      - group_code
      - sub_group_code
      type: object
    PCC:
      description: The pseudo-city code of the agency sending in the request
      pattern: ^[A-Z0-9]+$
      type: string
    POS:
      description: The point of sale for the itinerary. Plays part in optional services
        matching and can be used to determine the results' currency automatically.
      pattern: ^[A-Z]{2,3}$
      type: string
    PaidBaggageData:
      properties:
        attributes:
          $ref: '#/components/schemas/BaggageAttributes'
        display_text:
          description: The display text of the baggage charge that's sourced from
            the Record S5's commercial name field
          type: string
        excess_first:
          description: The First/Last Excess Baggage Piece fields are used when the
            baggage charge applies to the N-th (excess first) through the M-th (excess
            last) excess baggage occurrence
          type: string
        excess_last:
          description: The First/Last Excess Baggage Piece fields are used when the
            baggage charge applies to the N-th (excess first) through the M-th (excess
            last) excess baggage occurrence
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        free:
          description: The number (stringified decimal) of free pieces that are potentially
            covered by a baggage charge Record S7
          type: string
        optional_service_id:
          description: The optional service identifier includes the carrier, service
            type, sub-code and sequence number of the record where data's source from
          example: AA0GOC123456
          type: string
        os_sequence:
          description: The sequence number (stringified decimal) of the baggage charge
            Record S7
          type: string
        size:
          $ref: '#/components/schemas/Size'
        weight:
          $ref: '#/components/schemas/Weight'
      required:
      - pieces
      - display_text
      - free
      - os_sequence
      - optional_service_id
      - attributes
      type: object
    PassengerList:
      description: A list of passenger codes for the itinerary
      items:
        pattern: ^[A-Z]{3}$
        type: string
      maxItems: 9
      minItems: 1
      type: array
    Power:
      properties:
        chance:
          $ref: '#/components/schemas/Exists'
          description: Indicates that the Power type is offered on some but not all
            of the aircraft in the subfleet scheduled to operate the flight. There
            is a chance that this Power type may not be available depending on the
            airline's flight operations
        cost:
          $ref: '#/components/schemas/Cost'
        display_text:
          type: string
        distribution:
          description: Indicates whether power is provided in some or all rows
          enum:
          - all
          - n/a
          - some
          type: string
        exists:
          $ref: '#/components/schemas/Exists'
        id:
          type: string
        multiple_at_seat:
          $ref: '#/components/schemas/Exists'
          description: Indicates whether there are 2 or more USB ports or power outlets,
            or at least 1 of each
        power_outlet:
          $ref: '#/components/schemas/Exists'
          description: Defines if AC outlet is available
        quality:
          $ref: '#/components/schemas/Quality'
        type:
          description: The type of power outlet available
          enum:
          - adapter
          - n/a
          - none
          - power
          - power/usb-a
          - power/usb-a/usb-c
          - power/usb-c
          - usb-a
          - usb-a/usb-c
          - usb-c
          - power/usb
          - usb
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
        usb_port:
          $ref: '#/components/schemas/Exists'
          description: Defines if USB port is available
      required:
      - id
      - display_text
      - quality
      - cost
      - distribution
      - multiple_at_seat
      - usb_port
      - exists
      - power_outlet
      - chance
      - type
      - updated_at
      type: object
    PsgrRefs:
      items:
        type: string
      type: array
    Quality:
      description: Used to describe the quality of a certain Amenity (if known).
      enum:
      - n/a
      - better
      - standard
      type: string
    RefundMethod:
      description: Defines the return method of Change and Cancellation policies
      enum:
      - original form of payment
      - scrip
      - voucher
      - emd
      type: string
    Req:
      properties:
        acct_code:
          $ref: '#/components/schemas/AccountCode'
        control:
          $ref: '#/components/schemas/Control'
        currency:
          $ref: '#/components/schemas/Currency'
        data:
          $ref: '#/components/schemas/Data'
        office_id:
          $ref: '#/components/schemas/OfficeId'
        pcc:
          $ref: '#/components/schemas/PCC'
        pos:
          $ref: '#/components/schemas/POS'
        psgrs:
          $ref: '#/components/schemas/PassengerList'
        req_id:
          maxLength: 50
          minLength: 1
          type: string
        src:
          $ref: '#/components/schemas/FareSource'
        travel_agency_id:
          $ref: '#/components/schemas/TravelAgencyId'
      required:
      - data
      type: object
    ReqItinerary:
      $ref: '#/components/schemas/Itinerary'
    ReqItinerarySegment:
      $ref: '#/components/schemas/ItinerarySegment'
    Resp:
      properties:
        data:
          $ref: '#/components/schemas/RespData'
        itineraries:
          description: The response itineraries that map the returned Amenities/UPAs/Ticket
            attributes to itineraries, fares and segments
          items:
            $ref: '#/components/schemas/RespItinerary'
          type: array
        req_id:
          maxLength: 50
          type: string
        uuid:
          type: string
      required:
      - uuid
      - data
      - itineraries
      type: object
    RespData:
      description: All of the data that has been matched as part of the request. Elements
        are unique but can be referenced by multiple segments and/or itineraries.
      properties:
        advance_change:
          items:
            $ref: '#/components/schemas/AdvanceChange'
          type: array
        amenity:
          $ref: '#/components/schemas/Amenity'
        amenity_summary:
          items:
            $ref: '#/components/schemas/Summary'
          type: array
        boarding_priority:
          items:
            $ref: '#/components/schemas/BoardingPriority'
          type: array
        brand:
          items:
            $ref: '#/components/schemas/Brand'
          type: array
        cancellation:
          items:
            $ref: '#/components/schemas/Cancellation'
          type: array
        carry_on_bag:
          items:
            $ref: '#/components/schemas/CarryOnBaggage'
          type: array
        check_in_priority:
          items:
            $ref: '#/components/schemas/CheckInPriority'
          type: array
        checked_bag:
          items:
            $ref: '#/components/schemas/CheckedBaggage'
          type: array
        lounge_access:
          items:
            $ref: '#/components/schemas/LoungeAccess'
          type: array
        loyalty_rewards:
          items:
            $ref: '#/components/schemas/LoyaltyRewards'
          type: array
        same_day_change:
          items:
            $ref: '#/components/schemas/SameDayChange'
          type: array
        seat_selection:
          items:
            $ref: '#/components/schemas/SeatSelection'
          type: array
        transferable_funds:
          description: Feature in BETA
          items:
            $ref: '#/components/schemas/TransferableFunds'
          type: array
        upa:
          items:
            $ref: '#/components/schemas/Upa'
          type: array
        upgrade_eligibility:
          items:
            $ref: '#/components/schemas/UpgradeEligibility'
          type: array
      required:
      - amenity
      - amenity_summary
      - advance_change
      - cancellation
      - carry_on_bag
      - checked_bag
      - brand
      - lounge_access
      - upgrade_eligibility
      - boarding_priority
      - check_in_priority
      - seat_selection
      - same_day_change
      - upa
      type: object
    RespItinerary:
      properties:
        data:
          $ref: '#/components/schemas/RespItineraryData'
        errors:
          $ref: '#/components/schemas/RespItineraryErrors'
        is_lcc:
          description: Specifies whether whe itinerary has been identified as having
            a low-cost carrier
          type: boolean
        rq:
          $ref: '#/components/schemas/ReqItinerary'
        valid:
          description: Used to indicate whether the itinerary is valid. An itinerary
            will not be valid if it contains a nonexistent flight.
          type: boolean
      required:
      - valid
      - is_lcc
      type: object
    RespItineraryAmenityRef:
      properties:
        aircraft:
          description: The Aircraft Amenity ID for the segment
          type: string
        beverage:
          description: The Beverage Amenity ID for the segment
          type: string
        entertainment:
          description: The Entertainment Amenity ID for the segment
          type: string
        fresh_food:
          description: The Fresh Food Amenity ID for the segment
          type: string
        layout:
          description: The Layout Amenity ID for the segment
          type: string
        power:
          description: The Power Amenity ID for the segment
          type: string
        seat:
          description: The Seat Amenity ID for the segment
          type: string
        wifi:
          description: The Wifi Amenity ID for the segment
          type: string
      type: object
    RespItineraryData:
      properties:
        co2_emissions:
          description: The calculated CO2 emissions for the itinerary in kilograms,
            trimmed to the second decimal placement
          type: number
        legs:
          items:
            $ref: '#/components/schemas/RespItineraryLeg'
          type: array
      required:
      - legs
      type: object
    RespItineraryErrors:
      properties:
        messages:
          description: An array of human-readable error messages for the itinerary
          example: '[ "Segment #0 is not matched", "Fare for flight XXX-YYY-ZZ-ABCDE123-20220101-ECON
            is not matched" ]'
          items:
            type: string
          type: array
        unmatched_fares:
          description: An array of machine-readable unmatched fares for segments (flights)
          example: XXX-YYY-ZZ-ABCDE123-20220101-ECON
          items:
            type: string
          type: array
        unmatched_segments:
          description: An array of machine-readable unmatched segments (flights)
          items:
            type: string
          type: array
      required:
      - messages
      - unmatched_segments
      - unmatched_fares
      type: object
    RespItineraryFare:
      properties:
        advance_change:
          description: The Advance change policies IDs for the fare per passenger
          items:
            type: string
          type: array
        brand:
          description: The Brand ID for the fare
          type: string
        cancellation:
          description: The Cancellation policies IDs for the fare per passenger
          items:
            type: string
          type: array
        segments:
          description: The segments that are part of the Fare component
          items:
            $ref: '#/components/schemas/RespItinerarySegment'
          minItems: 1
          type: array
      type: object
    RespItineraryLeg:
      description: Represents a leg that's part of the requested itinerary
      properties:
        amenity_summary:
          description: The ID of the Amenity summary
          type: string
        co2_emissions:
          description: The calculated CO2 emissions for the leg in kilograms, trimmed
            to the second decimal placement
          type: number
        fares:
          description: 'Multiple fares are returned for: low-cost carrier requests,
            round-trip and open-jaw itineraries'
          items:
            $ref: '#/components/schemas/RespItineraryFare'
          type: array
        total_travel_time:
          description: The total duration of all flights in the leg
          example: 0h55m
          type: string
      required:
      - total_travel_time
      - fares
      type: object
    RespItinerarySegment:
      properties:
        amenity:
          $ref: '#/components/schemas/RespItineraryAmenityRef'
        boarding_priority:
          description: The Boarding Priority IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        carry_on_bag:
          description: The Carry-on Bag IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        check_in_priority:
          description: The Check-in Priority IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        checked_bag:
          description: The Checked Bag IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        co2_emissions:
          description: The calculated CO2 emissions for the segment in kilograms,
            trimmed to the second decimal placement
          type: number
        id:
          example: XXX-YYY-ZZ-1234-20220101-ECON,
          type: string
        lounge_access:
          description: The Lounge Access IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        loyalty_rewards:
          description: The Loyalty Rewards IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        overnight:
          $ref: '#/components/schemas/Exists'
          description: Indicates whether the flight is overnight
        same_day_change:
          description: The Same-day Change IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        seat_selection:
          description: The Seat Selection IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        transferable_funds:
          description: The Transferable Funds IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
        upas:
          description: The UPA IDs for the segment
          items:
            type: string
          type: array
        upgrade_eligibility:
          description: The Upgrade Eligibility IDs for the segment per passenger
          items:
            $ref: '#/components/schemas/PsgrRefs'
          type: array
      required:
      - id
      type: object
    SameDayChange:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the Same Day Change information
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Same Day Change information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Same Day Change information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Same Day Change information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - assessment
      - headline
      - description
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    Seat:
      properties:
        display_text:
          description: Up to 30-character string
          example: Above average legroom (32&quot;)
          type: string
        flatness:
          description: An assessment of whether the seat reclines a full 180°, at
            an angle or doesn't lie flat (premium cabins only)
          enum:
          - angle flat
          - full flat
          - n/a
          - not flat
          type: string
        id:
          type: string
        legroom:
          description: An assessment of the legroom available
          enum:
          - less
          - more
          - n/a
          - standard
          type: string
        pitch:
          description: The number of inches of seat pitch (distance from any point
            on one seat to the same point on the seat in front of or behind it)
          example: '32'
          type: string
        quality:
          $ref: '#/components/schemas/Quality'
        type:
          description: The seat type available
          enum:
          - n/a
          - above average legroom
          - angle flat seat
          - below average legroom
          - cradle recliner
          - full flat pod
          - full flat seat
          - middle seat free
          - private suite
          - recliner seat
          - open suite
          - skycouch
          - standard legroom
          - unknown
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
        width:
          description: An assessment of the seat width (economy only)
          enum:
          - n/a
          - standard
          - wider
          type: string
      required:
      - id
      - display_text
      - quality
      - legroom
      - pitch
      - width
      - flatness
      - type
      - updated_at
      type: object
    SeatCharacteristicCodes:
      description: The commercial codes mapped to a commercial name
      items:
        pattern: ^[A-Z]{1,2}$
        type: string
      maxItems: 5
      minItems: 1
      type: array
    SeatSelection:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the Seat Selection information
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Seat Selection information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Seat Selection information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Seat Selection information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - assessment
      - headline
      - description
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    Size:
      description: The baggage dimension restrictions in both centimetres and inches
        and their application
      properties:
        application:
          $ref: '#/components/schemas/Application'
        cm:
          type: string
        in:
          type: string
      required:
      - application
      - in
      - cm
      type: object
    Summary:
      description: All of the unique Amenity Summaries for all legs in the response.
      properties:
        aircraft:
          $ref: '#/components/schemas/DisplayTextSummary'
        beverage:
          $ref: '#/components/schemas/DisplayTextSummary'
        entertainment:
          $ref: '#/components/schemas/DisplayTextSummary'
        fresh_food:
          $ref: '#/components/schemas/DisplayTextSummary'
        id:
          type: string
        layout:
          $ref: '#/components/schemas/DisplayTextSummary'
        power:
          $ref: '#/components/schemas/DisplayTextSummary'
        seat:
          $ref: '#/components/schemas/DisplayTextSummary'
        wifi:
          $ref: '#/components/schemas/DisplayTextSummary'
      required:
      - id
      type: object
    TicketAttribute:
      description: Specifies what Ticket Attribute information should be returned
        for the given request
      enum:
      - cancellation
      - advance_change
      - brand
      - carry_on_baggage
      - checked_baggage
      - lounge_access
      - upgrade_eligibility
      - boarding_priority
      - check_in_priority
      - seat_selection
      - same_day_change
      - loyalty_rewards
      type: string
    TotalMaxWeight:
      description: This specifies the total weight of baggage that a passenger may
        check or carry-on for free on the baggage travel
      properties:
        application:
          $ref: '#/components/schemas/Application'
        kg:
          type: string
        lb:
          type: string
      required:
      - application
      type: object
    TransferableFunds:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        description:
          description: A descriptive text for the Loyalty Rewards information
          type: string
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Loyalty Rewards information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Loyalty Rewards information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Loyalty Rewards information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - headline
      - description
      - assessment
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    TravelAgencyId:
      description: The ID of the agency sending in the request
      pattern: ^[A-Z0-9]+$
      type: string
    Upa:
      properties:
        att_descr:
          description: A short attribute description text
          example: enhanced every flight
          nullable: true
          type: string
        categories:
          description: The UPA categories
          items:
            type: string
          type: array
        cta_text:
          description: The Call to action text
          type: string
        cta_url:
          description: The Call to action URL
          type: string
        description:
          description: A descriptive text for the UPA
          type: string
        description_md:
          description: (Feature in BETA) A descriptive text in Markdown format for
            the UPA
          type: string
        fees:
          description: The UPA fees
          items:
            $ref: '#/components/schemas/Fee'
          type: array
        headline:
          description: A short text summarizing the UPA
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image of the UPA
          type: string
        optional_service_identifiers:
          items:
            $ref: '#/components/schemas/OptionalServiceIdentifier'
          type: array
        photos:
          items:
            $ref: '#/components/schemas/UpaCommon'
          type: array
        seat_characteristics:
          description: Aircraft seat commercial characteristics
          items:
            $ref: '#/components/schemas/UpaSeatCharacteristics'
          type: array
        small_icon_url:
          description: A lower-resolution image of the UPA
          type: string
        source:
          $ref: '#/components/schemas/UpaSource'
        tours:
          items:
            $ref: '#/components/schemas/UpaCommon'
          type: array
        videos:
          items:
            $ref: '#/components/schemas/UpaCommon'
          type: array
      required:
      - id
      - categories
      - fees
      - headline
      - large_icon_url
      - small_icon_url
      - att_descr
      - description
      - tours
      - videos
      - photos
      type: object
    UpaAttribute:
      description: Specifies all the possible UPA attributes that can be returned
        in the response and used to filter UPAs by
      enum:
      - photo
      - video
      - tour
      - infographic
      - marketing_graphic
      - seat_characteristics
      type: string
    UpaCommon:
      properties:
        alt_text:
          description: An alternative text for the photo, which can be used as a substitute
            when the photo isn't available.
          type: string
        caption:
          example: What makes the Airbus A220 the world's most innovative aircraft
            on European flights? Have a look.
          type: string
        caption_md:
          description: Markdown caption content for an embeddable piece of media content,
            such as photo
          type: string
        embed_url:
          description: A URL for an embeddable piece of media content, such as video
          type: string
        large_url:
          description: A URL for the high-resolution UPA attachment content
          type: string
        media_type:
          description: The specific type of the media that is being represented
          enum:
          - photo
          - infographic
          - marketing_graphic
          - video
          - tour
          type: string
        medium_square_url:
          description: A URL for the medium-sized UPA attachment content
          type: string
        thumb_url:
          description: A URL for the thumbnail-sized UPA attachment content
          type: string
        url:
          description: A URL for the standard-sized UPA attachment content
          type: string
      type: object
    UpaSeatCharacteristics:
      properties:
        codes:
          $ref: '#/components/schemas/SeatCharacteristicCodes'
        commercial_name:
          description: The commercial name of a seat
          type: string
      required:
      - commercial_name
      - codes
      type: object
    UpaSource:
      description: Specifies a source, which filed the specific UPA that is being
        returned for the given request
      enum:
      - ATPCO
      - airline
      type: string
    UpgradeEligibility:
      properties:
        application:
          $ref: '#/components/schemas/OptSvcApplication'
        assessment:
          $ref: '#/components/schemas/Assessment'
        code:
          description: The sub code of the Optional Service Record S7.
          type: string
        commercial_name:
          description: The value of the commercial name field of the Optional Service
            Record S5.
          type: string
        cta_text:
          description: The Call to action text. Not used anymore, will be deprecated
            in V2.
          type: string
        cta_url:
          description: The Call to action URL. Not used anymore, will be deprecated
            in V2.
          type: string
        description:
          description: A descriptive text for the Upgrade Eligibility information
          type: string
        fee:
          $ref: '#/components/schemas/Fee'
        group_code:
          description: The group code of the Optional Service Record S7.
          type: string
        headline:
          description: A short text summarizing the Upgrade Eligibility information
          type: string
        id:
          type: string
        large_icon_url:
          description: A higher-resolution image, related to the Upgrade Eligibility
            information
          type: string
        small_icon_url:
          description: A lower-resolution image, related to the Upgrade Eligibility
            information
          type: string
        sub_group_code:
          description: The sub-group code of the Optional Service Record S7.
          type: string
      required:
      - id
      - headline
      - description
      - assessment
      - large_icon_url
      - small_icon_url
      - commercial_name
      - application
      type: object
    UtaApplicationFilter:
      description: Application specifications for each type of UTA as part of the
        'uta_application_filter'.
      properties:
        boarding_priority:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
        check_in_priority:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
        lounge_access:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
        loyalty_rewards:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
        same_day_change:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
        seat_selection:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
        transferable_funds:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
        upgrade_eligibility:
          $ref: '#/components/schemas/UtaApplicationFilterOptions'
      type: object
    UtaApplicationFilterOptions:
      description: Specific UTA applications used to filter UTAs satisfying those
        applications.
      items:
        $ref: '#/components/schemas/OptSvcApplication'
      maxItems: 4
      type: array
    Weight:
      description: The baggage weight restrictions in both kilograms and pounds and
        their application
      properties:
        application:
          $ref: '#/components/schemas/Application'
        kg:
          type: string
        lb:
          type: string
      required:
      - application
      - kg
      - lb
      type: object
    Wifi:
      properties:
        chance:
          description: Indicates that Wi-Fi is offered on some but not all of the
            aircraft in the subfleet scheduled to operate the flight. There is a chance
            that this Wi-Fi type may not be available depending on the airline's flight
            operations. `Full` means that Wi-Fi is offered on 100% of a the subfleet,
            whereas `some` means there is a low percentage of Wi-Fi installed across
            the subfleet
          enum:
          - n/a
          - some
          - good
          - very good
          - full
          type: string
        connectivity_type:
          description: Indicates passengers can use any devices equipped with Wi-Fi,
            e.g. a laptop computer, smartphone or tablet. The `cellular_roaming` value
            indicates that only smartphones may be used, not in the Wi-Fi mode, and
            that roaming charges may apply
          enum:
          - GSM_WiFi
          - n/a
          - wifi
          - cellular_roaming
          - Trial
          type: string
        cost:
          $ref: '#/components/schemas/Cost'
          description: Whether there is a charge to access Wi-Fi
        coverage:
          description: Indicates whether Wi-Fi is available fully, partially or for
            none of the flight based on coverage area
          enum:
          - full
          - n/a
          - none
          - partial
          type: string
        display_text:
          description: Up to 30-character string
          example: Better Wi-Fi
          type: string
        exists:
          $ref: '#/components/schemas/Exists'
        id:
          type: string
        performance:
          description: Indicates speed/bandwidth
          enum:
          - basic
          - better
          - best
          - n/a
          type: string
        quality:
          $ref: '#/components/schemas/Quality'
        type:
          description: The type of connectivity available
          enum:
          - chance
          - n/a
          - none
          - smartphone_data_roam
          - wifi
          type: string
        updated_at:
          description: Indicates when the data element was last updated
          example: '2020-11-04T09:20:22Z'
          type: string
      required:
      - id
      - display_text
      - quality
      - performance
      - cost
      - exists
      - chance
      - coverage
      - connectivity_type
      - type
      - updated_at
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http
info:
  description: Consolidated Retailing API
  title: Consolidated Retailing API
  version: 0.0.12
openapi: 3.0.3
paths:
  /consolidated:
    post:
      operationId: routehappy_api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Req'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Resp'
          description: Hub API response
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
          description: Unsupported language
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
          description: Access token is missing or invalid
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
          description: Not found
        '408':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
          description: Request Timed Out
        '415':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
          description: Unsupported media
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
          description: Processing the query has failed at some point by returning
            an error
      security:
      - bearerAuth: []
      summary: RouteHappy API endpoint
      tags:
      - api
  /consolidated/schema:
    get:
      operationId: get_schema
      responses:
        '200':
          content:
            application/yaml:
              schema:
                type: string
          description: The Consolidated API OpenAPI schema
      summary: The schema of the Consolidated API
servers:
- url: https://prod.apis.atpco.net/routehappy/consolidated
