FlightAware API: Check flight status
Checks the public FlightAware status of an airline flight (airline name or code plus number) on a departure date, by default today at the departure airport: airports, scheduled, estimated and actual gate times in local time, delays, gates, terminals, aircraft and distance. A date older than FlightAware's public two-week list is looked up on the flight's history page when FlightAware still shows it.
Unofficial. Not affiliated with or endorsed by FlightAware.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Date optional
date Departure date at the departure airport in YYYY-MM-DD, for example 2026-09-28. Defaults to today at that airport.
2026-09-27
- Flight, required
flight Airline name or code and flight number, for example United 1234 or BA 283.
BA 283
Input as JSON
{ "date": "2026-09-27", "flight": "BA 283"}Output
{ "status": "Landed", "airline_name": "British Airways", "arrival_gate": "157", "aircraft_type": "Boeing 777-300ER", "baggage_claim": null, "flight_number": "BA283", "actual_arrival": "2026-09-27T14:12:00-07:00", "departure_gate": "C65", "actual_departure": "2026-09-27T10:45:00+01:00", "arrival_terminal": "B", "flightaware_link": "https://www.flightaware.com/live/flight/BAW283/history/20260927/0940Z/EGLL/KLAX" , "estimated_arrival": "2026-09-27T14:10:00-07:00", "scheduled_arrival": "2026-09-27T13:50:00-07:00", "departure_terminal": "5", "estimated_departure": "2026-09-27T10:40:00+01:00", "origin_airport_code": "LHR", "origin_airport_name": "London Heathrow", "scheduled_departure": "2026-09-27T10:30:00+01:00", "route_distance_miles": 4999, "aircraft_registration": null, "arrival_delay_minutes": 22, "flightaware_flight_id": "BAW283-1790315269-airline-1943p:0", "departure_delay_minutes": 15, "destination_airport_code": "LAX", "destination_airport_name": "Los Angeles Intl"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"flightaware.com/check_flight_status","input":{"date":"2026-09-27","flight":"BA 283"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "flightaware.com/check_flight_status" , "input": { "date": "2026-09-27", "flight": "BA 283" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "flightaware.com/check_flight_status" , "input": { "date": "2026-09-27", "flight": "BA 283" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run flightaware.com/check_flight_status# with {"date":"2026-09-27","flight":"BA 283"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "flight" ], "properties": { "date": { "type": "string", "description": "Departure date at the departure airport in YYYY-MM-DD, for example 2026-09-28. Defaults to today at that airport." }, "flight": { "type": "string", "description": "Airline name or code and flight number, for example United 1234 or BA 283." } }}Output schema
{ "type": "object", "required": [ "flight_number", "airline_name", "status", "origin_airport_name", "origin_airport_code", "destination_airport_name", "destination_airport_code", "scheduled_departure", "estimated_departure", "actual_departure", "scheduled_arrival", "estimated_arrival", "actual_arrival", "departure_delay_minutes", "arrival_delay_minutes", "departure_terminal", "departure_gate", "arrival_terminal", "arrival_gate", "baggage_claim", "aircraft_type", "route_distance_miles", "flightaware_link", "aircraft_registration", "flightaware_flight_id" ], "properties": { "status": { "type": [ "string", "null" ], "description": "Flight status in plain words." }, "airline_name": { "type": [ "string", "null" ], "description": "Airline name." }, "arrival_gate": { "type": [ "string", "null" ], "description": "Arrival gate." }, "aircraft_type": { "type": [ "string", "null" ], "description": "Aircraft model in words." }, "baggage_claim": { "type": [ "string", "null" ], "description": "Baggage claim, if displayed." }, "flight_number": { "type": "string", "description": "Airline flight number, for example UA1234." }, "actual_arrival": { "type": [ "string", "null" ], "description": "Actual gate arrival time, with airport local offset." }, "departure_gate": { "type": [ "string", "null" ], "description": "Departure gate." }, "actual_departure": { "type": [ "string", "null" ], "description": "Actual gate departure time, with airport local offset." }, "arrival_terminal": { "type": [ "string", "null" ], "description": "Arrival terminal." }, "flightaware_link": { "type": "string", "description": "FlightAware page for this flight." }, "estimated_arrival": { "type": [ "string", "null" ], "description": "Estimated gate arrival time, with airport local offset." }, "scheduled_arrival": { "type": [ "string", "null" ], "description": "Scheduled gate arrival time, with airport local offset." }, "departure_terminal": { "type": [ "string", "null" ], "description": "Departure terminal." }, "estimated_departure": { "type": [ "string", "null" ], "description": "Estimated gate departure time, with airport local offset." }, "origin_airport_code": { "type": [ "string", "null" ], "description": "Departure airport IATA code, or ICAO code if IATA is unavailable." }, "origin_airport_name": { "type": [ "string", "null" ], "description": "Departure airport name." }, "scheduled_departure": { "type": [ "string", "null" ], "description": "Scheduled gate departure time, with airport local offset." }, "route_distance_miles": { "type": [ "number", "null" ], "description": "Route distance in miles." }, "aircraft_registration": { "type": [ "string", "null" ], "description": "Aircraft registration, if displayed." }, "arrival_delay_minutes": { "type": [ "integer", "null" ], "description": "Minutes late at arrival; negative means early." }, "flightaware_flight_id": { "type": [ "string", "null" ], "description": "FlightAware flight ID." }, "departure_delay_minutes": { "type": [ "integer", "null" ], "description": "Minutes late at departure; negative means early." }, "destination_airport_code": { "type": [ "string", "null" ], "description": "Arrival airport IATA code, or ICAO code if IATA is unavailable." }, "destination_airport_name": { "type": [ "string", "null" ], "description": "Arrival airport name." } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
flightaware.com/check_flight_status- Returns
- flight number, airline, status, origin and destination airports, scheduled/estimated/actual departure and arrival, delays, terminals, gates, aircraft type, route distance, FlightAware link and flight ID
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method flightaware.com/check_flight_status with the inputs above.
Ask your agent
- Is Delta 1782 on time today? I need the departure gate and terminal at the origin airport.
- Check FlightAware for BA 283 departing 2025-03-14 and tell me whether it landed late and by how many minutes.
- My sister is flying Southwest 2406 tomorrow, what's the scheduled arrival time and which aircraft is it?
- Pull up the FlightAware status of Lufthansa LH 456 from last Tuesday, I want to know its actual departure and arrival times.
- What's the current status of AA 100 — estimated arrival, arrival gate, and how far is the route?
See more
All FlightAware methodsChecks today's delayed and cancelled departures and arrivals at an airport on FlightAware, with current weather and any reported FAA delay status. Delay averages and ground programs are returned only when FlightAware shows them; counts can be null when no statistics row is displayed.
flightaware.com/get_airport_delaysLists the public arrivals or departures FlightAware shows for an airport (name, city, IATA/ICAO code or FlightAware link), with flight times and status. For a city with several airports it picks the busiest listed one and says so; the public board shows up to 20 flights per direction.
flightaware.com/list_airport_flightsChecks a flight's public status and times on Flightradar24 by flight number and the departure date at the origin airport.
flightradar24.com/check_flight_statusLists upcoming departures or arrivals at an airport from the Flightradar24 public airport board, with local times, airline, route, status and aircraft.
flightradar24.com/list_airport_flightsFinds Google Flights options for a route and date with prices, local times, stops and emissions. Round-trip searches list outbound choices with their displayed round-trip fares.
google.com/search_flightsGets current FAA delay and closure events for a US airport, found by name, city or code. A city with several airports resolves to one of them, and reported delays may not cover every flight.
faa.gov/get_airport_delaysFinds Expedia flights between cities or airports on selected dates, with per-traveler USD prices. Round trips combine outbound and return choices; for round trips only the cheapest outbound choices are paired with their returns.
expedia.com/search_flightsLooks up today's crowd-sourced security wait estimate and hourly pattern for a US airport by name, city or code, with PreCheck status and checkpoints.
tsawaittimes.com/get_security_wait_time