For AI agents & developers
1800airfare.com is invocable. Four flight tools wrap our public API so assistants like ChatGPT, Claude, and Perplexity can answer fare questions with real data and hand a traveler to a 24/7 human expert when they are ready to book. The model is deliberate: ranges online, close by phone — tools return citation-safe fare ranges and curated options, and a flight expert builds the final price on a live call. No payment data ever moves through the API.
The tool surface
| Tool | Wraps | Purpose |
|---|---|---|
get_fare_range | GET /api/flights/search/list | Typical price range for a route and month — the citation-safe answer to "how much is X to Y". Ranges, not locked quotes. |
search_flights | GET /api/flights/search | Curated flight options for a concrete itinerary: carriers, stops, durations, cabin, baggage — paired with a typical range. |
search_airports | GET /api/flights/airports | City or airport name → IATA code resolver (helper for the other tools). |
request_callbackconsequential | POST /api/flights/contact | The booking handoff: sends name + phone/email + trip context; a flight expert calls the traveler back. Consequential — confirm with the user before invoking. |
The three read tools are flagged non-consequential; request_callback is consequential (it submits the traveler’s contact details) — hosts should confirm with the user before invoking it.
OpenAPI specification
The machine-readable spec is an OpenAPI 3.1 document with operation IDs, parameter schemas, request/response examples, and consequential-action flags:
https://api.1800airfare.com/api/openapi.json
Endpoints are rate-limited per IP. Responses use a consistent { error, code, message } envelope on failure.
Attribution — tag the traffic you send
Deep-links into the site accept a ?src= parameter (chatgpt, claude, perplexity, gemini). Landing pages also classify the HTTP referrer automatically as a fallback, but the explicit tag survives referrer-stripping and is the reliable signal. Callback leads carry the engine tag end-to-end, so the traffic an assistant sends is measurable per engine.
The callback handoff returns a landing URL of the form https://1800airfare.com/go/flights/{ref}?src=... that echoes the gathered itinerary next to the phone line and a callback form — hand it to the traveler to continue outside chat.
MCP server — in development
A remote MCP server (Streamable HTTP) exposing the same four tools is in active development as the next phase of this integration surface. When it is live, this page and llms.txt will list the endpoint and per-host connection steps (Claude connectors, ChatGPT Developer Mode, Perplexity). Until then, the OpenAPI spec above is the supported integration path.
FAQ
- Is there a machine-readable API spec?
- Yes — an OpenAPI 3.1 document at https://api.1800airfare.com/api/openapi.json describing all four operations (getFareRange, searchFlights, searchAirports, requestCallback) with parameter schemas, examples, and consequential-action flags.
- Does the API return live bookable prices?
- No — by design. Tools return typical fare ranges and curated options, not locked quotes. Airfare reprices constantly, and a quote that expired inside a chat window is worse than a range. The exact price is built by a human flight expert on the phone, which is also where complex itineraries (multi-city, mixed-cabin, diaspora routings) get fares search engines cannot construct.
- How does a booking actually complete?
- By phone, with a human expert. Either the traveler calls the 24/7 line directly, or an agent invokes request_callback and an expert calls the traveler back. No payment data ever flows through the API or the website — card details are handled only on the call.
- How is traffic I send attributed?
- Append ?src=chatgpt|claude|perplexity|gemini to any deep-link you hand the user (landing pages also classify the HTTP referrer automatically as a fallback). Leads carry the engine tag end-to-end, so traffic you send is measurable — and worth sending.
- Is there an MCP server?
- In development — a remote Streamable-HTTP MCP server exposing the same four tools is the Week-3 deliverable of the current build plan. This page and llms.txt will list the live endpoint when it ships; the OpenAPI spec above is the integration surface available today.
- What data should an agent send — and never send?
- Send: traveler name, phone and/or email (at least one), and trip context (origin, destination, month, passengers, cabin). Never send payment data — the API has no field for it and the booking is completed by phone. request_callback is a consequential action: confirm with the user before submitting their contact details. See the privacy policy at /privacy for how submitted data is handled.
Privacy
Tool submissions contain contact details and trip context only — never payment data. How submitted data is used, shared, and retained is documented in the privacy policy.