---
title: "Find Recent Agent Flight Quote"
method: GET
path: "/conv/agent-flight-quotes/recent"
tags: ["conversational"]
---

# Find Recent Agent Flight Quote

`GET /conv/agent-flight-quotes/recent`

The newest saved assistant quote for exactly this trip. PUBLIC.

An assistant usually links the trip's search page rather than the quote it
reached, so the landing page asks for the quote by route, dates, party and
cabin. Origin and destination are the trip's airport lists exactly as the
search stored them ("ORD,MDW" for a multi-airport city). This exposes
only what the public quote review page already shows.

## Query parameters

- `origin` string, required
- `destination` string, required
- `departure_date` string, date, required
- `return_date` string, date, nullable
- `adults` integer
- `children` integer
- `infants_in_seat` integer
- `infants_on_lap` integer
- `cabin` 'economy' | 'premium_economy' | 'business' | 'first'
- `days` integer

## Response `200`

Successful Response

- AgentFlightQuoteLookupResponse — The newest saved agent quote for one exact trip, found by route and dates.
  - `url` string, required
  - `share` AgentFlightQuoteResolveResponse, required — Persisted quote readable independently of its creating browser/session.
    - `target` FlightShareTarget — Public target discriminator for a shared flight.
      - `type` 'flight_share'
    - `share_kind` 'agent_quote'
    - `quote_id` string, uuid, required
    - `request` AgentFlightQuoteRequest, required — Route search using existing airport resolution and traveler types.
      - `origin` string, required — Airport code, city/metro name or code, or comma-separated airport codes. Resolves to searchable airport codes before search.
      - `destination` string, required — Airport code, city/metro name or code, or comma-separated airport codes. Resolves to searchable airport codes before search.
      - `departure_date` string, date, required
      - `return_date` string, date, nullable
      - `passengers` AgentFlightPassengers, required — Anonymous pricing needs counts/types, never traveler identities.
        - `adults` integer, required
        - `children` integer
        - `infants_in_seat` integer
        - `infants_on_lap` integer
      - `airline` string, nullable
      - `max_stops` integer, nullable — Maximum stops per direction; null leaves stops unrestricted.
      - `cabin` 'economy' | 'business'
      - `currency` 'USD'
    - `snapshot` FlightShareSnapshot, required — Immutable, explicitly whitelisted facts safe for a public share page.
      - `fare_label` string, nullable
      - `passenger_count` integer, required
      - `legs` FlightShareLeg[], required
        - `airline_name` string, nullable
        - `airline_code` string, nullable
        - `origin` string, required
        - `destination` string, required
        - `departure_date` string, required
        - `departure_time` string, nullable
        - `arrival_date` string, nullable
        - `arrival_time` string, nullable
        - `duration_minutes` integer, nullable
        - `stops` integer, required
        - `connection_airports` string[], nullable — Ordered connection airport codes when every segment boundary is known and stays at the same airport. Null when unavailable, incomplete, or requiring an airport change; an empty list means a confirmed nonstop leg.
        - `flight_numbers` string[]
        - `segments` FlightShareSegment[]
          - `origin` string, nullable
          - `destination` string, nullable
          - `departure_date` string, nullable
          - `departure_time` string, nullable
          - `arrival_date` string, nullable
          - `arrival_time` string, nullable
          - `flight_number` string, nullable
          - `duration_minutes` integer, nullable
          - `layover_after_minutes` integer, nullable — Elapsed time until the next segment at the same airport; null when unknown or on the last segment.
      - `axel_price_total` Money, required — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
      - `comparison_price_total` Money — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
      - `ticketed_passenger_count` integer, nullable — Travelers occupying seats. Older snapshots lack the mix and retain their original passenger-count basis.
      - `axel_price_per_person` Money — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
      - `comparison_price_per_person` Money — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
      - `non_member_price_total` Money — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
    - `checked_at` string, date-time, required
    - `fare_options` AgentFlightFareOption[]
      - `baggage` string[]
      - `baggage_policy` FareBaggagePolicy — Structured fare baggage policy, with raw supplier text preserved.
        - `source` 'serpapi_google_flights' | 'unknown'
        - `quotes` FareBaggageQuote[]
          - `bag_type` 'personal_item' | 'carry_on' | 'checked' | 'checked_first' | 'checked_second' | 'unknown'
          - `quantity` integer, nullable — Bag count when the supplier text states one; 0 for explicit restrictions.
          - `is_included` boolean
          - `is_restriction` boolean
          - `fee_amount` string, nullable
          - `fee_currency` string, nullable
          - `fee_basis` 'round_trip' | 'one_way' | 'per_segment' | 'unknown'
          - `pax_basis` 'per_pax' | 'total' | 'unknown'
          - `fee_amount_per_direction` string, nullable — Per-passenger one-way fee amount when it can be normalized from the supplier quote. For round-trip totals, this is half of fee_amount.
          - `source_key` 'together' | 'departing' | 'returning' | 'unknown'
          - `raw_text` string, required
      - `features` string[]
      - `fare_policy` FarePolicy
        - `facts` FarePolicyFact[]
          - `category` 'personal_item' | 'carry_on' | 'checked_bags' | 'seat_selection' | 'changes' | 'refunds' | 'seat_upgrade' | 'same_day_changes' | 'priority_boarding' | 'wifi' | 'meals' | 'lounge' | 'entertainment' | 'rewards', required
          - `state` 'included' | 'fee' | 'not_included' | 'not_available' | 'conditional' | 'unknown'
          - `quantity` integer, nullable — Included bag count, only when established by evidence.
          - `evidence` string[] — Supplier statements or curated airline-policy references, including qualifications.
          - `details` string[] — Qualifications the customer must see alongside the summary.
          - `reason` 'not_provided' | 'conflicting_evidence' | 'conditional' | 'varies_by_leg', nullable
        - `unclassified` string[]
      - `fare_name` string, required
      - `comparison_price_total` Money — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
      - `non_member_price_total` Money — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
      - `member_price_total` Money — Immutable money value stored as integer minor units. Amount is always stored in the smallest currency unit (cents, yen, pesos, etc). This avoids floating-point precision issues and matches payment processor standards. Examples: $19.99 USD -> Money(amount=1999, currency="USD") ¥1000 JPY -> Money(amount=1000, currency="JPY") $1000.00 CLP -> Money(amount=1000, currency="CLP") Serializes to {"amount": 1999, "currency": "USD"}. IMPORTANT: Use Money.from_decimal() for user-facing amounts like "$19.99". The constructor expects integer minor units (cents).
        - `amount` integer, required
        - `currency` string, required
      - `separate_tickets` boolean
    - `fare_options_retrieved_at` string, date-time, nullable
    - `fare_options_incomplete` boolean, nullable
    - `membership_required` true
    - `membership_terms` string
    - `non_member_booking` string
  - `created_at` string, date-time, required

## Other responses

- `422` — Validation Error

## Changes

> 30 revisions in range; 1 not diffed.

- **2026-10-01** `dcaee418cd3e` — 2 warning
  - changed the pattern of the `query` request parameter `destination` from `^[A-Za-z]{3}$` to `^[A-Za-z]{3}(,[A-Za-z]{3}){0,4}$`
  - changed the pattern of the `query` request parameter `origin` from `^[A-Za-z]{3}$` to `^[A-Za-z]{3}(,[A-Za-z]{3}){0,4}$`
- **2026-09-30** `d698bc4c58ea` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/helloaxel/apis/client-api-gateway/changes/conv/agent-flight-quotes/recent/get.md)

---

[API](https://skmtc.dev/helloaxel/apis/client-api-gateway.md) · [All operations](https://skmtc.dev/helloaxel/apis/client-api-gateway/llms.txt) · [OpenAPI document](https://skmtc.dev/helloaxel/apis/client-api-gateway/revisions/8f7eca7ced4d?raw)
