Save up to 17% with yearly billing

See pricing

Flugstatus

Betriebsstatus in Echtzeit für einen einzelnen planmäßigen Flug. Übergeben Sie eine IATA-Flugnummer (zweistelliges Airline-Präfix + Ziffern, z. B. BA123) oder ein ICAO-Betreiberpräfix (dreistelliges Präfix, z. B. BAW123). Die Antwort enthält Abflug- und Ankunftszeiten, Terminal, Gate, Check-in-Schalter und Gepäckband, sofern veröffentlicht.

Die Felder für Gate, Terminal, Gepäck und Check-in sind häufig leere Strings (""), bis die Fluggesellschaft oder der Flughafen sie veröffentlicht — nicht null. Behandeln Sie leere Strings in Ihrer UI als „unbekannt“; zeigen Sie sie nicht als Konfigurationsfehler an.

Die Abfrage über das ICAO-Präfix löst Betreibercodes anhand der Referenzdaten von SkyLink auf. Bevorzugen Sie IATA, wenn verfügbar — die Auflösung europäischer Betreiber ist weniger zuverlässig als die IATA-Abfrage großer Fluggesellschaften.

Anfrage

Voraussetzungen

Auth
x-api-key bei jeder Anfrage (Direktabonnement). Mehr erfahren →
GEThttps://data.skylinkapi.com/v3.1/flight_status/{flight_number}
ParameterTypErforderlichBeschreibung
flight_numberstringJaFlugnummer im IATA-Format (BA123) oder als ICAO-Betreiberpräfix + Ziffern (BAW123)

Antwort

{
  "flight_number": "BA 123",
  "airline": "British Airways",
  "status": "En Route",
  "departure": {
    "airport": "EGLL",
    "airport_full": "London Heathrow Airport",
    "scheduled_time": "10:30",
    "scheduled_date": "11 Feb",
    "actual_time": "10:35",
    "actual_date": "11 Feb",
    "terminal": "5",
    "gate": "A12",
    "checkin": ""
  },
  "arrival": {
    "airport": "KJFK",
    "airport_full": "John F Kennedy International Airport",
    "scheduled_time": "14:45",
    "scheduled_date": "11 Feb",
    "estimated_time": "14:50",
    "estimated_date": "11 Feb",
    "terminal": "7",
    "gate": "B15",
    "baggage": ""
  }
}

Felder der obersten Ebene

FeldTypErforderlichBeschreibung
flight_numberstringJaFlugnummer zur Anzeige, z. B. "BA 123"
airlinestringJaAnzeigename der Fluggesellschaft
statusstringJaAktuelle Statusbezeichnung — als Anzeigetext behandeln, nicht als festes Enum
departureobjectJaInformationen zu Abflughafen und Gate
arrivalobjectJaInformationen zu Ankunftsflughafen und Gate

Objekt departure

FeldTypErforderlichHinweise
airportstringJaFlughafencode (IATA oder ICAO)
airport_fullstringJaVollständiger Name des Flughafens
scheduled_timestringJaPlanmäßige Abflugzeit (Ortszeit)
scheduled_datestringJaPlanmäßiges Abflugdatum (Ortszeit)
actual_timestringJaTatsächliche oder zuletzt bekannte Abflugzeit
actual_datestringJaDatum zu actual_time
terminalstringJaKann "" sein, wenn nicht veröffentlicht
gatestringJaKann "" sein, wenn unbekannt
checkinstringJaKann "" sein, wenn nicht angegeben

Objekt arrival

FeldTypErforderlichHinweise
airportstringJaCode des Ankunftsflughafens
airport_fullstringJaVollständiger Name des Flughafens
scheduled_timestringJaPlanmäßige Ankunftszeit (Ortszeit)
scheduled_datestringJaPlanmäßiges Ankunftsdatum (Ortszeit)
estimated_timestringJaZuletzt geschätzte Ankunftszeit während des Fluges
estimated_datestringJaDatum zu estimated_time
terminalstringJaKann "" sein, wenn nicht verfügbar
gatestringJaKann "" sein, wenn unbekannt
baggagestringJaGepäckband — kann "" sein, wenn nicht veröffentlicht

Client-Typen

"""Flight status response models for /flight_status/{flight_number}."""from __future__ import annotationsfrom dataclasses import dataclass@dataclassclass FlightStatusRequest:    """Request input for GET /flight_status/{flight_number}."""    flight_number: str@dataclassclass DepartureInfo:    airport: str    airport_full: str    scheduled_time: str    scheduled_date: str    actual_time: str    actual_date: str    terminal: str    gate: str    checkin: str@dataclassclass ArrivalInfo:    airport: str    airport_full: str    scheduled_time: str    scheduled_date: str    estimated_time: str    estimated_date: str    terminal: str    gate: str    baggage: str@dataclassclass FlightStatusResponse:    flight_number: str    airline: str    status: str    departure: DepartureInfo    arrival: ArrivalInfo

Integration

Erstellen Sie mit einer einzigen Abfragefunktion eine kompakte Flugstatuskarte.

Das folgende Beispiel normalisiert die eingegebene Flugnummer für die Anzeige, setzt Timeouts für Verbindungsaufbau und Lesen und bildet die Antwort auf ein flaches View-Model für UI-Komponenten ab.

import osimport requestsBASE = "https://data.skylinkapi.com/v3.1"HEADERS = {    "x-api-key": os.getenv("SKYLINK_API_KEY", "YOUR_API_KEY")}def fetch_flight_status(flight_number: str) -> dict:    """Fetch a single flight status snapshot by flight number."""    r = requests.get(        f"{BASE}/flight_status/{flight_number}",        headers=HEADERS,        timeout=(10, 15),    )    r.raise_for_status()    return r.json()if __name__ == "__main__":    import json    status = fetch_flight_status("AA100")    print(json.dumps(status, indent=2, default=str))

Hinweise zur Implementierung

Umgang mit fehlenden Gate- und Terminaldaten. Die Felder für Gate, Terminal, Gepäckband und Check-in-Schalter sind oft bis kurz vor Abflug oder Ankunft leere Strings. Blenden Sie sie aus oder zeigen Sie einen neutralen Platzhalter — kein Fehlerbanner.

Statusbezeichnungen. Codieren Sie kein vollständiges Status-Enum fest. Behandeln Sie nur die Fälle gesondert, die Ihre UI benötigt (z. B. Cancelled gegenüber Landed für die Farbcodierung).

Abfragehäufigkeit. Fragen Sie für Fluginformationstafeln für Endkunden alle 2–5 Minuten ab. Für Push-Aktualisierungen siehe Webhooks.

Fehlerantworten

Gemeinsame Plattformfehler finden Sie unter Fehlerbehandlung. Endpoint-spezifisch:

404 - Flug nicht gefunden

{
  "detail": "Flight not found for number: BA123"
}

Bedeutet in der Regel, dass der Flug heute nicht durchgeführt wird, die Nummer ungültig ist oder die vorgelagerte Quelle ihn noch nicht veröffentlicht hat. Dieser Endpoint hat keinen Datumsparameter — prüfen Sie den Betriebstag unter Flugpläne.

GET
/flight_status/{flight_number}
x-api-key<token>

Your SkyLink licence key, for keys bought direct from skylinkapi.com.

In: header

Path Parameters

flight_number*Flight Number

IATA flight number (BA123) or ATC callsign (BAW123, QTR31K, NOZ6PU)

Length2 <= length <= 10

Response Body

application/json

application/json

curl -X GET "https://data.skylinkapi.com/v3.1/flight_status/UA100"
{
  "flight_number": "BA 123",
  "airline": "British Airways",
  "status": "En Route",
  "departure": {
    "airport": "EGLL",
    "airport_full": "London Heathrow Airport",
    "scheduled_time": "10:30",
    "scheduled_date": "11 Feb",
    "actual_time": "10:35",
    "actual_date": "11 Feb",
    "terminal": "5",
    "gate": "A12",
    "checkin": ""
  },
  "arrival": {
    "airport": "KJFK",
    "airport_full": "John F Kennedy International Airport",
    "scheduled_time": "14:45",
    "scheduled_date": "11 Feb",
    "estimated_time": "14:50",
    "estimated_date": "11 Feb",
    "terminal": "7",
    "gate": "B15",
    "baggage": ""
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Siehe auch: Flugpläne · Flug-Briefing · Fluggesellschaften