Flight Check

Flight reliability data for AI agents, chatbots, and travel apps

The FlightCheck API gives you structured access to U.S. flight performance data from the Bureau of Transportation Statistics, live FAA delay feeds, TSA wait time predictions, passenger rights information, and connection risk analysis. Every response includes a plain-English summary field designed for AI agents to use directly in responses to users.

Free tier: 100 req/dayNo credit cardJSON responsesCORS enabled

Get your free API key

Free tier: 100 requests/day. No credit card required.

Authentication

Include your API key in every request using either method:

Option 1: Authorization header (recommended)
curl -H "Authorization: Bearer fc_your_key_here" \
  https://flightcheck.live/api/v1/flight/DL/428
Option 2: Query parameter
curl "https://flightcheck.live/api/v1/flight/DL/428?api_key=fc_your_key_here"

Response format

Every endpoint returns the same structure. The summary field is a plain-English sentence your AI agent can use directly in responses.

Standard response
{
  "data": { ... },
  "meta": {
    "source": "Bureau of Transportation Statistics",
    "period": "through 2026-09",
    "sample_size": 11852,
    "freshness": "Data through 2026-09",
    "endpoint": "/api/v1/flight/DL/428",
    "documentation": "https://flightcheck.live/developers"
  },
  "summary": "Delta 428 (JFK-LAX) lands on time 84% of the time. When late, delays average 41 minutes."
}

Endpoints

GET/api/v1/flight/:carrier/:number

Get reliability data for a specific flight number. Returns on-time rate, average delay, cancellation rate, and route info.

Request

curl -H "Authorization: Bearer fc_your_key" \
  https://flightcheck.live/api/v1/flight/DL/428

Response

{
  "data": {
    "airline": "DL",
    "airline_name": "Delta Air Lines",
    "flight_number": "428",
    "origin": "JFK",
    "dest": "LAX",
    "on_time_rate": 84,
    "avg_delay_minutes": 41,
    "cancel_rate": 1.2,
    "sample_size": 11852
  },
  "summary": "Delta 428 (JFK-LAX) lands on time 84% of the time..."
}
GET/api/v1/route/:origin/:dest

Compare all airlines on a route. Returns overall stats plus per-airline breakdown sorted by reliability.

Request

curl -H "Authorization: Bearer fc_your_key" \
  https://flightcheck.live/api/v1/route/JFK/LAX

Response

{
  "data": {
    "origin": "JFK",
    "dest": "LAX",
    "overall": {
      "on_time_rate": 79,
      "avg_delay_minutes": 38,
      "cancel_rate": 1.8
    },
    "airlines": [
      { "code": "DL", "name": "Delta", "on_time_rate": 84 },
      { "code": "AA", "name": "American", "on_time_rate": 78 },
      { "code": "B6", "name": "JetBlue", "on_time_rate": 72 }
    ]
  }
}
GET/api/v1/airport/:code

Airport overview with historical stats, live TSA wait, FAA status, and delay causes.

Request

curl -H "Authorization: Bearer fc_your_key" \
  https://flightcheck.live/api/v1/airport/JFK

Response

{
  "data": {
    "code": "JFK",
    "name": "John F. Kennedy International Airport",
    "on_time_rate": 76,
    "avg_delay_minutes": 42,
    "tsa_wait": {
      "current_wait": "about 12-18 minutes",
      "best_time": "5 AM (about 5 min)"
    },
    "faa_status": {
      "status": "normal",
      "headline": "No delays reported right now."
    }
  }
}
GET/api/v1/airport/:code/status

Live airport status only. Real-time FAA delay data + current TSA wait estimate. Updates every 2 minutes.

Request

curl -H "Authorization: Bearer fc_your_key" \
  https://flightcheck.live/api/v1/airport/ORD/status

Response

{
  "data": {
    "code": "ORD",
    "faa_status": "delays",
    "faa_headline": "Delays reported due to weather.",
    "delays": [
      { "type": "ground_delay", "reason": "thunderstorms", "avgDelay": "45 minutes" }
    ],
    "tsa_wait": {
      "current_wait": "about 15-21 minutes",
      "current_minutes": 18
    }
  }
}
POST/api/v1/compare

Compare 2-3 flights side by side. Returns stats for each flight plus comparative insights.

Request

curl -X POST -H "Authorization: Bearer fc_your_key" \
  -H "Content-Type: application/json" \
  -d '{"flights":[{"airline":"DL","number":"428"},{"airline":"AA","number":"1"}]}' \
  https://flightcheck.live/api/v1/compare

Response

{
  "data": {
    "flights": [
      { "airline": "DL", "number": "428", "stats": { "on_time_rate": 84 } },
      { "airline": "AA", "number": "1", "stats": { "on_time_rate": 78 } }
    ],
    "insights": [
      "DL 428 is the most reliable at 84% on time vs AA 1 at 78%."
    ]
  }
}
GET/api/v1/rights/:situation

Passenger rights for a disruption. Situations: cancellation, significant-delay, tarmac-delay, bumped, baggage-delayed. Add ?airline=DL for airline-specific contacts.

Request

curl -H "Authorization: Bearer fc_your_key" \
  "https://flightcheck.live/api/v1/rights/cancellation?airline=DL"

Response

{
  "data": {
    "situation": "cancellation",
    "title": "Full Refund Guaranteed",
    "what_airline_owes": [
      "Full refund to original payment method",
      "Refund of all fees (baggage, seat selection, extras)"
    ],
    "dot_rule": "14 CFR Part 260",
    "airline_contact": {
      "airline": "Delta Air Lines",
      "phone": "1-800-221-1212",
      "refund_url": "https://www.delta.com/refund"
    }
  }
}
GET/api/v1/connection/:airport

Analyze connection risk at an airport. Query params: minutes (required layover time), international=true, month=1-12.

Request

curl -H "Authorization: Bearer fc_your_key" \
  "https://flightcheck.live/api/v1/connection/ORD?minutes=45"

Response

{
  "data": {
    "airport": "ORD",
    "layover_minutes": 45,
    "risk_level": "risky",
    "miss_rate": 22,
    "recommendation": "A 45-minute connection at ORD is risky...",
    "mct_domestic": 75,
    "factors": [
      { "label": "Below minimum connection time", "impact": "negative" }
    ]
  }
}

Rate limits

TierDaily limitPrice
Free100 requests/day$0
Pro10,000 requests/dayContact us

Limits reset at midnight UTC. Need more? Email api@flightcheck.live.

Code examples

Python
import requests

API_KEY = "fc_your_key_here"
headers = {"Authorization": f"Bearer {API_KEY}"}

# Get flight reliability data
r = requests.get(
    "https://flightcheck.live/api/v1/flight/DL/428",
    headers=headers
)
data = r.json()

# Use the summary directly in your AI response
print(data["summary"])
# "Delta 428 (JFK-LAX) lands on time 84% of the time..."

# Or dig into the structured data
flight = data["data"]
print(f"On-time rate: {flight['on_time_rate']}%")
print(f"Avg delay when late: {flight['avg_delay_minutes']} min")
JavaScript / TypeScript
const API_KEY = "fc_your_key_here";

// Get flight reliability data
const res = await fetch(
  "https://flightcheck.live/api/v1/flight/DL/428",
  { headers: { Authorization: `Bearer ${API_KEY}` } }
);
const { data, summary } = await res.json();

// Use summary directly in your chatbot response
console.log(summary);
// "Delta 428 (JFK-LAX) lands on time 84% of the time..."

// Or use structured data
console.log(`On-time: ${data.on_time_rate}%`);
OpenAI Function Calling
{
  "name": "get_flight_reliability",
  "description": "Get on-time rate and delay data for a flight",
  "parameters": {
    "type": "object",
    "properties": {
      "carrier": { "type": "string", "description": "2-letter airline code (e.g. DL, AA, UA)" },
      "flight_number": { "type": "string", "description": "Flight number (e.g. 428)" }
    },
    "required": ["carrier", "flight_number"]
  }
}

// In your tool handler:
async function get_flight_reliability({ carrier, flight_number }) {
  const res = await fetch(
    `https://flightcheck.live/api/v1/flight/${carrier}/${flight_number}`,
    { headers: { Authorization: `Bearer ${API_KEY}` } }
  );
  return await res.json();
}

Building an AI agent?

FlightCheck data can power your travel recommendations. Every API response includes a summary field with a plain-English sentence you can include directly in your agent's responses to users. The data field gives you structured numbers for more complex logic.

Works with OpenAI function calling, Anthropic tool use, LangChain, and any framework that can make HTTP requests. CORS is enabled for browser-based agents.

FAQ

Is the API free?

Yes. The free tier gives you 100 requests per day, which is enough for most AI agents and side projects. No credit card required. If you need more volume, email us.

What data do you have?

On-time performance, delay averages, cancellation rates, and delay causes for every U.S. airline, airport, route, and flight number. Plus live FAA delay feeds, TSA wait time predictions, passenger rights by situation, and connection risk analysis.

How fresh is the data?

Historical stats are from BTS and updated monthly (currently through September 2026). FAA delays and TSA wait estimates are live, updated every 2 minutes.

Can I use this commercially?

Yes. The free tier is fine for commercial use. If you're building something that needs higher volume or SLA guarantees, reach out and we'll set up a pro tier.

What airports and airlines are covered?

Every U.S. airport and airline that reports to the Bureau of Transportation Statistics. That's all major carriers and most regional ones — roughly 370 airports and 20 airlines.

Do you have international flight data?

Only for flights departing or arriving at U.S. airports. We don't have data for purely international routes (e.g., London to Paris).