Skip to content

SkyLink-API/flight-schedules-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flight Schedules API — Airport Departures & Arrivals

RapidAPI Free Tier Python JavaScript

Get departure and arrival schedules for any airport worldwide. Supports 5 days of historical data plus forward-looking schedules. Live data including gates, terminals, delays, and airline info. Free tier available.

The SkyLink Flight Schedules API gives you access to airport-level departure and arrival boards for any ICAO airport code. Query today's schedule, look back at historical flights from the past 5 days, or retrieve upcoming departures and arrivals — all with live gate, terminal, and status data.


Features

  • Departure schedules for any ICAO airport
  • Arrival schedules for any ICAO airport
  • 5 days of historical data + 1 day forward
  • Date + time filtering — query a specific date and optional time window
  • Paginated results — handle airports with hundreds of daily flights
  • Per-flight data:
    • Flight number (IATA and ICAO)
    • Airline name and IATA/ICAO codes
    • Origin / destination airport (ICAO, IATA, city)
    • Scheduled time, estimated time, actual time
    • Terminal and gate
    • Flight status (Scheduled / Boarding / Departed / En Route / Landed / Arrived / Cancelled)
    • Delay in minutes
  • Supports both ICAO and IATA airport codes as input

Endpoints

GET /v3/schedules/departures?icao=KJFK                  # today's departures
GET /v3/schedules/arrivals?icao=KJFK                    # today's arrivals
GET /v3/schedules/departures?icao=EGLL&date=25-03-2026  # specific date (DD-MM-YYYY)
GET /v3/schedules/arrivals?icao=KLAX&date=25-03-2026&time=14:00   # with time
GET /v3/schedules/departures?icao=YSSY&page=2           # page 2 of results

# Examples:
GET /v3/schedules/departures?icao=KJFK     # JFK departures
GET /v3/schedules/arrivals?icao=EGLL       # Heathrow arrivals
GET /v3/schedules/departures?icao=EDDM     # Munich departures
GET /v3/schedules/arrivals?icao=YSSY       # Sydney arrivals

Quick Start

Get Your Free API Key

Sign up at RapidAPI — SkyLink API — 1,000 free requests/month, no credit card required.

Python — Today's Departures from Heathrow

import requests

headers = {
    "x-rapidapi-key": "YOUR_API_KEY",
    "x-rapidapi-host": "skylink-api.p.rapidapi.com"
}

r = requests.get(
    "https://skylink-api.p.rapidapi.com/v3/schedules/departures",
    headers=headers,
    params={"icao": "EGLL"}
)
data = r.json()

print(f"{data['total_count']} departures from Heathrow today")
for flight in data["flights"][:10]:
    print(f"  {flight['flight_number']}{flight['destination_city']} "
          f"({flight['destination_airport']}) "
          f"at {flight['scheduled_time']} | {flight['status']}")

Python — Historical Arrivals for a Specific Date

# Get arrivals at JFK on a past date
r = requests.get(
    "https://skylink-api.p.rapidapi.com/v3/schedules/arrivals",
    headers=headers,
    params={
        "icao": "KJFK",
        "date": "25-03-2026",
        "time": "09:00"  # optional: start from this time
    }
)

for flight in r.json()["flights"][:10]:
    delay = f" (+{flight['delay_minutes']}min)" if flight.get("delay_minutes") else ""
    print(f"  {flight['flight_number']} from {flight['origin_city']} "
          f"— arrived {flight.get('actual_time', flight['scheduled_time'])}{delay}")

Python — Monitor a Specific Flight's Arrival

import requests, time

headers = {
    "x-rapidapi-key": "YOUR_API_KEY",
    "x-rapidapi-host": "skylink-api.p.rapidapi.com"
}

TARGET_FLIGHT = "BA183"
AIRPORT = "KJFK"

while True:
    r = requests.get(
        "https://skylink-api.p.rapidapi.com/v3/schedules/arrivals",
        headers=headers,
        params={"icao": AIRPORT}
    )
    flights = r.json()["flights"]
    target = next((f for f in flights if f["flight_number"] == TARGET_FLIGHT), None)

    if target:
        print(f"{TARGET_FLIGHT}: {target['status']} | "
              f"Gate {target.get('gate', 'TBD')} | "
              f"ETA {target.get('estimated_time', target['scheduled_time'])}")

        if target["status"] in ("Arrived", "Landed"):
            print("Flight has arrived!")
            break

    time.sleep(120)  # check every 2 minutes

JavaScript (Node.js)

const axios = require('axios');

const headers = {
  'x-rapidapi-key': 'YOUR_API_KEY',
  'x-rapidapi-host': 'skylink-api.p.rapidapi.com'
};

// Today's departures from Munich Airport
const { data } = await axios.get(
  'https://skylink-api.p.rapidapi.com/v3/schedules/departures',
  { headers, params: { icao: 'EDDM' } }
);

console.log(`${data.total_count} flights departing from Munich today`);
data.flights.slice(0, 5).forEach(f => {
  console.log(`${f.flight_number}${f.destination_city} at ${f.scheduled_time}`);
});

cURL

# Departures from JFK today
curl "https://skylink-api.p.rapidapi.com/v3/schedules/departures?icao=KJFK" \
  -H "x-rapidapi-key: YOUR_API_KEY" \
  -H "x-rapidapi-host: skylink-api.p.rapidapi.com"

# Historical arrivals at LAX
curl "https://skylink-api.p.rapidapi.com/v3/schedules/arrivals?icao=KLAX&date=25-03-2026" \
  -H "x-rapidapi-key: YOUR_API_KEY" \
  -H "x-rapidapi-host: skylink-api.p.rapidapi.com"

Response Schema

{
  "airport": "EGLL",
  "date": "2026-03-29",
  "type": "departures",
  "total_count": 312,
  "page": 1,
  "flights": [
    {
      "flight_number": "BA123",
      "flight_number_icao": "BAW123",
      "airline": {
        "name": "British Airways",
        "iata": "BA",
        "icao": "BAW"
      },
      "destination_airport": "KJFK",
      "destination_iata": "JFK",
      "destination_city": "New York",
      "scheduled_time": "2026-03-29T10:30:00Z",
      "estimated_time": "2026-03-29T10:45:00Z",
      "actual_time": null,
      "terminal": "5",
      "gate": "B32",
      "status": "Boarding",
      "delay_minutes": 15
    }
  ]
}

Date Format Notes

  • Date parameter: DD-MM-YYYY (e.g., 25-03-2026)
  • Time parameter: HH:MM 24-hour format UTC (e.g., 14:00)
  • Historical window: Up to 5 days in the past
  • Forward window: 1 day ahead (next 24 hours)
  • All times in response are UTC

Use Cases

  • Airport departure/arrival board websites — digital signage and web dashboards
  • Travel apps — show what's departing from an airport near the user
  • Airline punctuality analysis — collect historical delay data for analytics
  • Airport retail and parking demand forecasting — predict passenger volumes by schedule
  • Corporate travel monitoring — track all incoming flights for a meeting or event
  • Hotel/taxi coordination systems — show incoming arrivals for pickup scheduling
  • Aviation data journalism — research cancellations and delays on specific dates

Related Repositories


GitHub Topics

flight-schedules departures arrivals airport-schedules aviation-api airline-schedules python javascript rest-api flight-data departure-board arrival-board


Part of SkyLink API — The All-In-One Aviation Data API

All features are included in a single SkyLink API subscription. No juggling 5 different providers. One key, one schema, one bill.

About

Get departure and arrival schedules for any airport worldwide. Supports 5 days of historical data plus forward-looking schedules. Live data including gates, terminals, delays, and airline info. Free tier available.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors