A collection of powerful aviation utility endpoints: great-circle distance between airports, navigation aid search (VOR/NDB/ILS/DME), FAA NAS delay status, AI-powered flight briefings, and ML-predicted gate-to-gate flight times.
The SkyLink Aviation Utilities API bundles five distinct capabilities into one subscription: precise route mathematics, a 70,000+ navaid database, live FAA system status, IBM Granite AI-generated flight briefings, and machine learning flight time prediction. These are the building blocks that transform a basic aviation app into a professional-grade tool.
| Endpoint | Feature | Coverage |
|---|---|---|
/v3/distance |
Great-circle distance & bearing | Global |
/v3/navaids |
Navigation aids (VOR, NDB, ILS, DME, TACAN) | Global (~70,000) |
/v3/delays |
FAA NAS delays, ground stops, closures | USA (FAA) |
/v3/briefing/flight |
AI-powered flight briefing (IBM Granite) | Global |
/v3/ml/flight-time |
ML gate-to-gate flight time prediction | Global |
Calculate the precise great-circle distance, initial bearing, and midpoint between any two airports or coordinates.
GET /v3/distance?from_icao=KJFK&to_icao=EGLL
GET /v3/distance?from_icao=KJFK&to_icao=EGLL&unit=nm
GET /v3/distance?from_icao=KLAX&to_icao=RJTT&unit=km
GET /v3/distance?from_lat=40.6&from_lon=-73.7&to_lat=51.4&to_lon=-0.4
Features:
- Great-circle distance (shortest path over Earth's surface)
- Distance units: nautical miles (nm), kilometers (km), statute miles (mi)
- Initial bearing (direction from origin to destination)
- Reciprocal bearing (direction back)
- Route midpoint coordinates
- Input: ICAO codes, IATA codes, or raw lat/lon coordinates
Search 70,000+ navigation aids worldwide: VOR, NDB, ILS, DME, TACAN, VOR-DME, VORTAC.
GET /v3/navaids?ident=JFK # search by identifier
GET /v3/navaids?type=VOR&country=US # all VORs in the US
GET /v3/navaids?airport=KJFK&type=ILS # ILS approaches at KJFK
GET /v3/navaids?bbox=40,-80,42,-73 # navaids in a bounding box
GET /v3/navaids?ident=BNN&type=NDB # search NDB by ident
Features:
- Filter by type:
VOR,NDB,ILS,DME,TACAN,VOR-DME,VORTAC - Filter by associated airport ICAO
- Filter by country (ISO 2-letter code)
- Filter by bounding box
- Partial identifier match
- Returns: ident, name, type, frequency (MHz/kHz), lat/lon, elevation, magnetic variation
Real-time national airspace system (NAS) status — no caching, live data from nasstatus.faa.gov.
GET /v3/delays/faa # all current FAA NAS alerts
GET /v3/delays/faa?icao=KJFK # delays specific to an airport
Features:
- Ground Delay Programs (GDP) — average and maximum delay durations
- Ground Stops — complete departure halts for an airport
- Airport Closures — complete closures with reason
- Airspace Flow Programs (AFP) — en-route flow restrictions
- Delay reason (weather, volume, equipment, etc.)
- Source: nasstatus.faa.gov — never cached
Get a structured, AI-generated preflight briefing for any origin-destination pair. The API aggregates METAR, TAF, NOTAMs, and PIREPs, then uses IBM Granite to synthesize them into a readable briefing.
GET /v3/briefing/flight?origin=KJFK&destination=EGLL
GET /v3/briefing/flight?origin=KJFK&destination=EGLL&format=markdown
GET /v3/briefing/flight?origin=KLAX&destination=YSSY&format=plain_text
Features:
- Aggregates: METAR/TAF (origin + destination), NOTAMs (both airports), PIREPs (100nm radius)
- Output formats:
json(structured),markdown,plain_text,html - AI-generated sections: summary, critical restrictions, origin briefing, destination briefing
- Powered by IBM Granite LLM
- Includes data disclaimer
Predict gate-to-gate block time for any route using a trained ML model.
GET /v3/ml/flight-time?from=KJFK&to=EGLL
GET /v3/ml/flight-time?from=KJFK&to=EGLL&aircraft=B77W
GET /v3/ml/flight-time?from=KLAX&to=RJTT&aircraft=B789
Features:
- Gate-to-gate (block time) prediction
- Optional aircraft type code (ICAO) for higher accuracy (e.g.,
B738,A320,B77W) - Fallback to distance/speed model if aircraft type is unknown
- Accepts ICAO or IATA airport codes
Sign up at RapidAPI — SkyLink API — 1,000 free requests/month, no credit card required.
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/distance",
headers=headers,
params={"from_icao": "KJFK", "to_icao": "EGLL", "unit": "nm"}
)
d = r.json()
print(f"Distance: {d['distance_nm']} NM")
print(f"Initial bearing: {d['initial_bearing']}°")
print(f"Midpoint: {d['midpoint']['lat']:.2f}, {d['midpoint']['lon']:.2f}")r = requests.get(
"https://skylink-api.p.rapidapi.com/v3/navaids",
headers=headers,
params={"airport": "KJFK", "type": "ILS"}
)
for nav in r.json()["navaids"]:
print(f"{nav['ident']} — {nav['name']} — {nav['frequency_mhz']} MHz")
# IKJF — ILS RWY 04L — 110.90 MHz
# IOJF — ILS RWY 13L — 111.95 MHzr = requests.get(
"https://skylink-api.p.rapidapi.com/v3/delays/faa",
headers=headers
)
data = r.json()
print(f"{data['total_alerts']} active FAA NAS alerts")
for gdp in data.get("ground_delays", []):
print(f"GDP — {gdp['airport']}: avg {gdp['avg_delay']} min, "
f"max {gdp['max_delay']} min — {gdp['reason']}")
for gs in data.get("ground_stops", []):
print(f"Ground Stop — {gs['airport']}: {gs['reason']}")r = requests.get(
"https://skylink-api.p.rapidapi.com/v3/briefing/flight",
headers=headers,
params={
"origin": "KJFK",
"destination": "EGLL",
"format": "plain_text",
"include_weather": True,
"include_notams": True,
"include_pireps": True
}
)
print(r.json()["briefing"])
# --- AI-GENERATED FLIGHT BRIEFING ---
# Route: KJFK → EGLL | Date: 2026-03-29
#
# SUMMARY: Departure conditions VFR with light winds...
# ...r = requests.get(
"https://skylink-api.p.rapidapi.com/v3/ml/flight-time",
headers=headers,
params={"from": "KJFK", "to": "EGLL", "aircraft": "B77W"}
)
prediction = r.json()
print(f"Predicted block time: {prediction['predicted_minutes']} min "
f"({prediction['predicted_hours_decimal']:.1f} h)")
# Predicted block time: 426 min (7.1 h)const axios = require('axios');
const headers = {
'x-rapidapi-key': 'YOUR_API_KEY',
'x-rapidapi-host': 'skylink-api.p.rapidapi.com'
};
// Distance calculation
const dist = await axios.get(
'https://skylink-api.p.rapidapi.com/v3/distance',
{ headers, params: { from_icao: 'KLAX', to_icao: 'RJTT', unit: 'nm' } }
);
console.log(`LAX → TYO: ${dist.data.distance_nm} NM`);
// ML flight time
const time = await axios.get(
'https://skylink-api.p.rapidapi.com/v3/ml/flight-time',
{ headers, params: { from: 'KLAX', to: 'RJTT', aircraft: 'B789' } }
);
console.log(`Predicted: ${time.data.predicted_hours_decimal.toFixed(1)} hours`);# Distance
curl "https://skylink-api.p.rapidapi.com/v3/distance?from_icao=KJFK&to_icao=EGLL&unit=nm" \
-H "x-rapidapi-key: YOUR_API_KEY" -H "x-rapidapi-host: skylink-api.p.rapidapi.com"
# FAA delays
curl "https://skylink-api.p.rapidapi.com/v3/delays/faa" \
-H "x-rapidapi-key: YOUR_API_KEY" -H "x-rapidapi-host: skylink-api.p.rapidapi.com"
# AI briefing
curl "https://skylink-api.p.rapidapi.com/v3/briefing/flight?origin=KJFK&destination=EGLL&format=markdown" \
-H "x-rapidapi-key: YOUR_API_KEY" -H "x-rapidapi-host: skylink-api.p.rapidapi.com"{
"from": "KJFK", "to": "EGLL",
"distance_nm": 3459,
"distance_km": 6406,
"initial_bearing": 51,
"reciprocal_bearing": 289,
"midpoint": { "lat": 52.3, "lon": -30.1 }
}{
"navaids": [{
"ident": "JFK", "name": "KENNEDY", "type": "VOR-DME",
"frequency_mhz": 115.9, "latitude_deg": 40.621, "longitude_deg": -73.788,
"elevation_ft": 13, "magnetic_variation_deg": -13.0,
"associated_airport": "KJFK", "iso_country": "US"
}]
}{
"total_alerts": 4,
"ground_delays": [
{ "airport": "KJFK", "avg_delay": "45 minutes", "max_delay": "2 hours",
"reason": "WEATHER / LOW CEILING AND VISIBILITY", "trend": "Increasing" }
],
"ground_stops": [],
"closures": [],
"airspace_flow_programs": []
}- Route planning and dispatch — distance, bearing, and block time for any route
- EFB navaid lookup — find ILS frequencies and VOR idents for any airport
- FAA delay monitoring dashboards — real-time NAS status for operations centers
- AI-powered pilot assistants — generate natural-language briefings via the briefing endpoint
- MCP tool integrations — expose aviation data to AI agents and LLM workflows
- Block time estimation — use ML predictions for scheduling and crew planning
- Flight planning optimization — combine distance, winds aloft, and block time for fuel planning
- metar-api — METAR/TAF that feeds the AI briefing
- notam-api — NOTAMs that feed the AI briefing
- aviation-weather-api — PIREPs that feed the AI briefing
- airport-database-api — airport coordinates for distance calculations
- flight-tracking-api — live aircraft positions
- flight-status-api — real-time flight status
- flight-schedules-api — departure/arrival schedules
- aircraft-registration-lookup-api — aircraft DB
- aerodrome-charts-api — SID/STAR/APP charts
navaids vor ils ndb faa-delays great-circle aviation-api ai-briefing ml-predictions python aviation flight-planning ibm-granite
All features are included in a single SkyLink API subscription. No juggling 5 different providers. One key, one schema, one bill.
- Website: https://skylinkapi.com
- Full Docs: https://skylinkapi.com/docs
- RapidAPI: https://rapidapi.com/skylink-api-skylink-api-default/api/skylink-api
- Free Tier: 1,000 requests/month — no credit card required
- Navaids: ~70,000 worldwide (OurAirports) | FAA Delays: Live, never cached