Amadeus · Capability

Flight Offers Search — Shopping

Flight Offers Search — Shopping. 2 operation(s). Lead operation: Amadeus Return List of Flight Offers Based on Posted Searching Criteria.. Self-contained Naftiko capability covering one Amadeus business surface.

Run with Naftiko AmadeusTravelShopping

What You Can Do

POST
Searchflightoffers — Amadeus Return List of Flight Offers Based on Posted Searching Criteria.
/v1/shopping/flight-offers
GET
Getflightoffers — Amadeus Return List of Flight Offers Based on Searching Criteria.
/v1/shopping/flight-offers

MCP Tools

return-list-flight-offers-based

Amadeus Return List of Flight Offers Based on Posted Searching Criteria.

read-only
return-list-flight-offers-based-2

Amadeus Return List of Flight Offers Based on Searching Criteria.

read-only idempotent

Capability Spec

flight-offers-search-shopping.yaml Raw ↑
naftiko: "1.0.0-alpha2"
info:
  label: "Flight Offers Search — Shopping"
  description: 'Flight Offers Search — Shopping. 2 operation(s). Lead operation: Amadeus Return List of Flight Offers Based on Posted Searching Criteria.. Self-contained Naftiko capability covering one Amadeus business surface.'
  tags:
    - Amadeus
    - Travel
    - Shopping
  created: "2026-05-29"
  modified: "2026-05-29"
binds:
  - namespace: env
    keys:
      AMADEUS_TOKEN: AMADEUS_TOKEN
capability:
  consumes:
    - type: http
      namespace: flight-offers-search-shopping
      baseUri: https://test.api.amadeus.com/v2
      description: Flight Offers Search — Shopping business capability. Self-contained, no shared references.
      authentication:
        type: bearer
        token: '{{env.AMADEUS_TOKEN}}'
      resources:
        - name: shopping-flight-offers
          path: /shopping/flight-offers
          operations:
            - name: searchFlightOffers
              method: POST
              description: Amadeus Return List of Flight Offers Based on Posted Searching Criteria.
              inputParameters:
                - name: getFlightOffersBody
                  in: body
                  type: object
                  required: true
                  description: list of criteria to retrieve a list of flight offers
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
            - name: getFlightOffers
              method: GET
              description: Amadeus Return List of Flight Offers Based on Searching Criteria.
              inputParameters:
                - name: originLocationCode
                  in: query
                  type: string
                  required: true
                  description: city/airport [IATA code](http://www.iata.org/publications/Pages/code-search.aspx) from which the traveler will depart, e.g. BOS for Boston
                - name: destinationLocationCode
                  in: query
                  type: string
                  required: true
                  description: city/airport [IATA code](http://www.iata.org/publications/Pages/code-search.aspx) to which the traveler is going, e.g. PAR for Paris
                - name: departureDate
                  in: query
                  type: string
                  required: true
                  description: the date on which the traveler will depart from the origin to go to the destination. Dates are specified in the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) YYYY-MM-DD format, e.g. 2017-12-25
                - name: returnDate
                  in: query
                  type: string
                  required: false
                  description: the date on which the traveler will depart from the destination to return to the origin. If this parameter is not specified, only one-way itineraries are found. If this parameter is specified, only ro
                - name: adults
                  in: query
                  type: integer
                  required: true
                  description: "the number of adult travelers (age 12 or older on date of departure).\n\nThe total number of seated travelers (adult and children) can not exceed 9."
                - name: children
                  in: query
                  type: integer
                  required: false
                  description: the number of child travelers (older than age 2 and younger than age 12 on date of departure) who will each have their own separate seat. If specified, this number should be greater than or equal to 0
                - name: infants
                  in: query
                  type: integer
                  required: false
                  description: the number of infant travelers (whose age is less or equal to 2 on date of departure). Infants travel on the lap of an adult traveler, and thus the number of infants must not exceed the number of adul
                - name: travelClass
                  in: query
                  type: string
                  required: false
                  description: most of the flight time should be spent in a cabin of this quality or higher. The accepted travel class is economy, premium economy, business or first class. If no travel class is specified, the searc
                - name: includedAirlineCodes
                  in: query
                  type: string
                  required: false
                  description: "This option ensures that the system will only consider these airlines. This can not be cumulated with parameter excludedAirlineCodes.\n\nAirlines are specified as [IATA airline codes](http://www.iata.or"
                - name: excludedAirlineCodes
                  in: query
                  type: string
                  required: false
                  description: "This option ensures that the system will ignore these airlines. This can not be cumulated with parameter includedAirlineCodes.\n\nAirlines are specified as [IATA airline codes](http://www.iata.org/publi"
                - name: nonStop
                  in: query
                  type: boolean
                  required: false
                  description: if set to true, the search will find only flights going from the origin to the destination with no stop in between
                - name: currencyCode
                  in: query
                  type: string
                  required: false
                  description: the preferred currency for the flight offers. Currency is specified in the [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) format, e.g. EUR for Euro
                - name: maxPrice
                  in: query
                  type: integer
                  required: false
                  description: maximum price per traveler. By default, no limit is applied. If specified, the value should be a positive number with no decimals
                - name: max
                  in: query
                  type: integer
                  required: false
                  description: maximum number of flight offers to return. If specified, the value should be greater than or equal to 1
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
  exposes:
    - type: rest
      namespace: flight-offers-search-shopping-rest
      port: 8080
      description: REST adapter for Flight Offers Search — Shopping. One Spectral-compliant resource per consumed operation, prefixed with /v1.
      resources:
        - path: /v1/shopping/flight-offers
          name: shopping-flight-offers
          description: REST surface for shopping-flight-offers.
          operations:
            - method: POST
              name: searchFlightOffers
              description: Amadeus Return List of Flight Offers Based on Posted Searching Criteria.
              call: flight-offers-search-shopping.searchFlightOffers
              with:
                getFlightOffersBody: rest.getFlightOffersBody
              outputParameters:
                - type: object
                  mapping: $.
            - method: GET
              name: getFlightOffers
              description: Amadeus Return List of Flight Offers Based on Searching Criteria.
              call: flight-offers-search-shopping.getFlightOffers
              with:
                originLocationCode: rest.originLocationCode
                destinationLocationCode: rest.destinationLocationCode
                departureDate: rest.departureDate
                returnDate: rest.returnDate
                adults: rest.adults
                children: rest.children
                infants: rest.infants
                travelClass: rest.travelClass
                includedAirlineCodes: rest.includedAirlineCodes
                excludedAirlineCodes: rest.excludedAirlineCodes
                nonStop: rest.nonStop
                currencyCode: rest.currencyCode
                maxPrice: rest.maxPrice
                max: rest.max
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: flight-offers-search-shopping-mcp
      port: 9090
      transport: http
      description: MCP adapter for Flight Offers Search — Shopping. One tool per consumed operation, routed inline through this capability's consumes block.
      tools:
        - name: return-list-flight-offers-based
          description: Amadeus Return List of Flight Offers Based on Posted Searching Criteria.
          hints:
            readOnly: true
            destructive: false
            idempotent: false
          call: flight-offers-search-shopping.searchFlightOffers
          with:
            getFlightOffersBody: tools.getFlightOffersBody
          outputParameters:
            - type: object
              mapping: $.
        - name: return-list-flight-offers-based-2
          description: Amadeus Return List of Flight Offers Based on Searching Criteria.
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: flight-offers-search-shopping.getFlightOffers
          with:
            originLocationCode: tools.originLocationCode
            destinationLocationCode: tools.destinationLocationCode
            departureDate: tools.departureDate
            returnDate: tools.returnDate
            adults: tools.adults
            children: tools.children
            infants: tools.infants
            travelClass: tools.travelClass
            includedAirlineCodes: tools.includedAirlineCodes
            excludedAirlineCodes: tools.excludedAirlineCodes
            nonStop: tools.nonStop
            currencyCode: tools.currencyCode
            maxPrice: tools.maxPrice
            max: tools.max
          outputParameters:
            - type: object
              mapping: $.