---
title: "Search live flight offers through MPP"
method: POST
path: "/v1/mpp/flights/search"
tags: ["Flights"]
---

# Search live flight offers through MPP

`POST /v1/mpp/flights/search`

## Request

- Base URL: `https://api.munition.io`
- URL: `https://api.munition.io/v1/mpp/flights/search`
- Auth: none required

Munition Flight Search over MPP: pay 0.05 USDC on Base/Polygon/Arbitrum via Authorization: Payment to search Duffel flight offers and receive normalized itineraries, prices, carriers, and metadata.

## Headers

- `Idempotency-Key` string

## Request body

- SearchFlightsInput
  - `origin` string, required: IATA airport code to depart from, for example SFO.
  - `destination` string, required: IATA airport code to arrive at, for example NRT.
  - `departureDate` string, required: Outbound date in YYYY-MM-DD format.
  - `returnDate` string: Optional return date in YYYY-MM-DD format.
  - `adults` integer
  - `children` integer
  - `infants` integer
  - `travelClass` 'ECONOMY' | 'PREMIUM_ECONOMY' | 'BUSINESS' | 'FIRST'
  - `nonStop` boolean: When true, return only offers whose itineraries have one segment each.
  - `maxResults` integer
  - `maxPrice` number: Optional max total offer price. Currency conversion is not applied.
  - `currency` string: Optional ISO currency code used with maxPrice.

## Response `200`

Paid flight search results

- SearchFlightsOutput
  - `results` object[], required
    - `id` string, required
    - `source` 'flight_search', required
    - `totalPrice` string, required
    - `currency` string, required
    - `airlineCodes` string[], required
    - `itineraries` object[], required
      - `duration` string
      - `numberOfStops` integer, required
      - `segments` object[], required
        - `departure` object, required
          - `airportCode` string
          - `at` string
        - `arrival` object, required
          - `airportCode` string
          - `at` string
        - `carrierCode` string
        - `operatingCarrierCode` string
        - `flightNumber` string
        - `aircraft` string
        - `duration` string
  - `meta` object, required
    - `resultCount` integer, required
    - `searchedAt` string, date-time, required
  - `warnings` string[]

## Other responses

- `402`: Call without Authorization to receive an MPP challenge, then retry with Authorization: Payment <credential>. Invalid payment and settlement failures can also return 402.

---

[API](https://skmtc.dev/munition/apis/munition-api.md) · [All operations](https://skmtc.dev/munition/apis/munition-api/llms.txt) · [OpenAPI document](https://skmtc.dev/munition/apis/munition-api/revisions/3b11109809d1?raw)
