
Schiphol vluchtgegevens
De Public Flight API van Schiphol geeft per vlucht de geplande en verwachte tijden, status, gate, terminal, bagageband, vliegtuigtype en route, plus lijsten van luchtvaartmaatschappijen, bestemmingen en vliegtuigtypen. Gratis na registratie, maar de voorwaarden zijn streng: alleen om reizigers te helpen, niets langer dan 24 uur bewaren en geen statistiek.

Passagiers op Schiphol naar herkomst en bestemming (CBS): Europa is het grootste deel, 71% in 2025
Verdeling in 2025: Europa 71%, Amerika 16%, Azië 9,2%, Afrika 4%. Totaal: 68.770.805 passagiers.
Passagiers op Schiphol per jaar (CBS): 68,8 miljoen passagiers in 2025, 75% meer dan in 2000
Passagiers op Schiphol per jaar (CBS), 2000 – 2025, in miljoen passagiers. Het hoogste punt was 2019 (71,7).
Passagiers op Schiphol (CBS): gemiddeld het hoogst in augustus, het laagst in januari
Passagiers op Schiphol (CBS) per maand, januari 2022 – augustus 2026, in miljoen passagiers. Gemiddeld over 4 volle jaren: augustus 6,1, januari 3,9. Hoogste maand: augustus 2026 (6,6).
Wat je ermee kunt bouwen1
Wat kun je ermee?3 ideeën
Een vertrekbord voor je eigen publiek
Toon de vertrekken van vandaag met gate en status, bijvoorbeeld op een pagina voor bezoekers van een congres. Dat helpt reizigers en past dus binnen de voorwaarden. Commercieel gebruik moet Schiphol eerst uitdrukkelijk goedkeuren.
Iemand ophalen
Volg een aankomende vlucht van gepland via in Nederlands luchtruim (FIR) en geland (LND) tot de eerste koffer op de band (FIB). Het veld baggageClaim zegt welke band.
Trends? Gebruik een andere bron
Statistiek en historische analyse zijn met deze API niet toegestaan. Voor het aantal passagiers en vliegbewegingen per maand is er CBS-tabel 37478hvv; voor vliegroutes OpenSky.
Zo verwerk je het4 stappen
Registreer en maak een applicatie
Maak een account op het ontwikkelaarsportaal, maak een applicatie en abonneer die op de Public Flight API. Het client secret zie je maar één keer. Sommige abonnementen moeten eerst worden goedgekeurd.
https://developer.schiphol.nl/news-and-updates/api-consumer-getting-started-guide
Haal een token op
Ruil client ID en secret in voor een JWT bij https://api.auth.schiphol.nl/oauth/token, met audience https://api.schiphol.nl/public. Het token is 30 minuten geldig: bewaar het en vraag niet bij elke aanroep een nieuw, dan loop je tegen de limiet.
Vraag de vluchten op
Stuur het token mee als Authorization: Bearer. Filter met scheduleDate, flightDirection (A of D), airline, route, en sorteer met sort. Zonder token geeft de API 401.
https://api.schiphol.nl/public/public-flights/v4/flights?scheduleDate=2026-10-15&flightDirection=D&page=0
Volg de Link-kop voor de volgende pagina
Een antwoord bevat maximaal 20 vluchten. De volgende pagina staat in de HTTP-kop Link (rel="next"). Pagina's lopen van 0 tot en met 499.
Interessante koppelingen
Vergelijkbare bronnen
OpenSky NetworkPosities van vliegtuigen boven Nederland uit open ADS-B-ontvangers, zonder gate- of passagiersinformatie.
- CLCBS Luchtvaart; maandcijfers Nederlandse luchthavens (37478hvv) nog niet uitgelegd
Passagiers, vracht en vliegbewegingen per maand voor Schiphol en de andere luchthavens van nationaal belang. Wel geschikt voor statistiek.
Waar je op moet letten
- Alleen om reizigers te helpen
De Public API mag alleen worden gebruikt voor reizigers en mensen die iemand ophalen. Niet toegestaan: concurrentieanalyse, marktonderzoek, claims voor vertragingscompensatie, doorverkopen of doorgeven aan derden, en statistische of historische analyse.
- Maximaal 24 uur bewaren
Gegevens mogen hooguit 24 uur in een cache. Daarna moet je ze verwijderen. Een eigen archief opbouwen is niet toegestaan.
- Nieuw platform sinds oktober 2026
Het oude platform met App_Id en App_Key stopte op 1 oktober 2026. Oude voorbeelden met api.schiphol.nl/public-flights en een ResourceVersion-kop werken niet meer; de versie staat nu in het pad (/v4/).
- Status is een code
publicFlightState geeft codes zoals SCH, DEL, BRD, GTD, DEP, LND, CNX. De OpenAPI-specificatie heeft er geen vaste lijst van; de betekenis staat op de pagina Flight Statuses.
- Sleutels zijn persoonlijk
Credentials zijn niet overdraagbaar, horen niet in code aan de kant van de browser en moeten volgens de voorwaarden minstens elke 90 dagen worden vervangen.
APIREST (JSON), OAuth2 · gelezen 16 okt 2026
Account op developer.schiphol.nl, daar een applicatie maken en abonneren op de PublicFlight API. Ruil client ID en secret (OAuth2 client credentials) bij https://api.auth.schiphol.nl/oauth/token, audience https://api.schiphol.nl/public, in voor een JWT van 30 minuten. Stuur dat mee als Authorization: Bearer, samen met Accept: application/json. Zonder token: 401 Unauthorized. getest
json
Basisadres
https://api.schiphol.nl/public/public-flights/v4
Endpoints 8
- GET
/flightsVluchten op een dag (standaard vandaag), met filters op richting, vluchtnummer, maatschappij, route en tijdvelden. 20 per pagina. - GET
/flights/{id}Eén vlucht op het numerieke id. - GET
/flights/idsAlleen de id's van vluchten tussen fromDateTime en toDateTime (op scheduleDateTime), hoogstens drie dagen. - GET
/airlinesAlle luchtvaartmaatschappijen op Schiphol (naam, IATA, ICAO, NVLS-code). - GET
/airlines/{airline}Eén maatschappij op IATA- of ICAO-code. - GET
/aircrafttypesVliegtuigtypen met IATA-hoofd- en subcode, korte en lange naam; filter iataMain, iataSub. - GET
/destinationsBestemmingen met IATA-code, Nederlandse en Engelse naam, stad en land. - GET
/destinations/{iata}Eén bestemming op IATA-code.
Filteren uit de beschrijving
Elke voorwaarde is een eigen queryparameter; combinaties gelden als EN. Tijdvakken via fromDateTime/toDateTime met searchDateTimeField.
Parameters 12
scheduleDate | Dag van de vlucht; zonder: vandaag. | uit de beschrijving |
scheduleTime | Vluchten vanaf dit geplande tijdstip. | uit de beschrijving |
flightDirection | A = aankomst, D = vertrek. | uit de beschrijving |
flightName | Vluchtnummer zoals op het ticket, bv. KL672. | uit de beschrijving |
airline / airlineCode | Maatschappij als IATA- (KL) of ICAO-prefix (KLM), of als NVLS-code; één tegelijk. | uit de beschrijving |
route | IATA- of ICAO-code van een luchthaven op de route; meerdere met komma's. | uit de beschrijving |
fromDateTime / toDateTime + searchDateTimeField | Zoeken in een tijdvak op een tijdveld: scheduleDateTime, estimatedLandingTime, actualLandingTime, publicEstimatedOffBlockTime, actualOffBlockTime, expectedTimeBoarding, expectedTimeGateOpen, expectedTimeGateClosing, expectedTimeOnBelt of lastUpdatedAt. | uit de beschrijving |
fromScheduleDate / toScheduleDate | Bereik van vluchtdagen. | uit de beschrijving |
includedelays | Ook vluchten van een eerdere dag die door vertraging naar de gevraagde dag schuiven (standaard false). | uit de beschrijving |
isOperationalFlight | Alleen operationele (true) of niet-operationele (false) vluchten. | uit de beschrijving |
sort | Sorteren met + of −, meerdere velden met komma's, bv. -scheduleDate,+scheduleTime (standaard +scheduleTime). | uit de beschrijving |
page | Paginanummer (begint bij 0). Volg liever de URL in de kop Link rel="next". | uit de beschrijving |
Velden van een vlucht (volgens de specificatie; niet zelf gezien) 15
| Naam | Type | Betekenis |
|---|---|---|
flightName / flightNumber / prefixIATA / prefixICAO | tekst | Vluchtnummer (KL672) en zijn delen |
flightDirection | tekst | A (aankomst) of D (vertrek) |
scheduleDate / scheduleTime | datum / tijd · lokale tijd | Geplande dag en tijd |
serviceType | tekst | J passagiers lijn, C passagiers charter, F vracht lijn, H vracht charter |
mainFlight / codeshares | tekst | Uitvoerende vlucht en alle codeshare-nummers |
route.destinations | lijst | Luchthavens op de route (IATA) |
publicFlightState.flightStates | lijst | Statuscodes: SCH, AIR, EXP, FIR, LND, FIB, ARR, DIV, CNX, TOM (aankomst); SCH, DEL, WIL, GTO, BRD, GCL, GTD, DEP, CNX, GCH, TOM (vertrek) |
terminal / gate / baggageClaim.belts | tekst | Vertrek- of aankomsthal, gate (pieren B tot en met H en M) en bagageband |
aircraftType.iataMain / iataSub | tekst | Vliegtuigtype, bv. 739 en 73J |
aircraftRegistration | tekst | Registratie van het toestel, bv. PHTFA |
estimatedLandingTime / actualLandingTime | datetime | Verwachte en werkelijke landing |
publicEstimatedOffBlockTime / actualOffBlockTime | datetime | Verwacht en werkelijk vertrek van de gate |
Toon alle 15
| Naam | Type | Betekenis |
|---|---|---|
expectedTimeBoarding / expectedTimeGateOpen / expectedTimeGateClosing / expectedTimeOnBelt | datetime | Verwachte tijden voor boarding, gate en eerste koffer op de band |
routesEu / visa | tekst / boolean | S (Schengen), E (Europa) of N (buiten Europa); visum nodig |
lastUpdatedAt | datetime | Laatste wijziging in het vluchtinformatiesysteem |
Limieten en valkuilen
- 100 verzoeken per minuut per applicatie (tier Public). Daarboven 429 Too Many Requests met Retry-After. uit de beschrijving
- Hoogstens 20 resultaten per pagina, pagina 0 tot en met 499. Een lege pagina kan 204 No Content geven. uit de beschrijving
- Token 30 minuten geldig: één keer halen en hergebruiken; een nieuw token per aanroep loopt tegen de limiet van de tokenserver. uit de beschrijving
- Voorwaarden: alleen om reizigers te helpen. Niet toegestaan: concurrentieanalyse, ongeautoriseerd commercieel gebruik, doorverkopen of doorgeven aan derden, en historische of statistische analyse. Gegevens hoogstens 24 uur in een cache, daarna verwijderen; geen eigen archief. Sleutels minstens elke 90 dagen vervangen. uit de beschrijving
- Het oude platform (App_Id, App_Key, kop ResourceVersion) stopte op 1 oktober 2026; de versie staat nu in het pad (/v4/). Een testomgeving staat op https://api-acc.schiphol.nl/public/public-flights/v4. uit de beschrijving
- De parameters bestaan dubbel in kleine letters (scheduledate, flightname, flightdirection, includeDelays); de camelCase-variant gaat voor. uit de beschrijving
- Statuscodes zijn in de specificatie geen vaste lijst; de betekenis staat op de pagina Flight Statuses. uit de beschrijving
- Voor statistiek een open alternatief: CBS-tabel 37478hvv (passagiers, vracht en vliegbewegingen per maand, Schiphol = A043590). Voor posities: OpenSky. ervaring
Probeer het
Geen aanroep: wij hebben geen account en geen token (zonder token geeft de API 401). Bovendien verbieden de voorwaarden doorgeven aan derden en statistiek.
Gelezen uit OpenAPI-specificatie van PublicFlight API 4 (in het portaal; endpoints, parameters, patronen) · Uitleg van alle velden van vluchten, luchtvaartmaatschappijen, bestemmingen en vliegtuigtypen · Betekenis van de statuscodes (SCH, AIR, LND, BRD, DEP …) · Paginering met de HTTP-kop Link · Best practices: limiet per tier, tokens, cachetijden, foutcodes · Gebruiksvoorwaarden: wat wel en niet mag. Labels: uit de beschrijving staat in wat de api zelf publiceert. getest uit onze eigen kleine aanroep. platform geldt voor elk api van dit platform, volgens de documentatie. ervaring zelf ondervonden bij het bouwen van open data index.
Meer in dit thema
Bekijk hoe deze pagina is opgebouwd
bron: schiphol-vluchten blokken: [] secties: - ideeen - verwerken - koppelingen - vergelijkbaar - beperkingen cache: tag: bron:schiphol-vluchten ververs: na statuscheck, als de bron nieuwer is statuscheck: methode: openbare documentatiepagina van de Public Flight API bereikbaar verwacht: elke minuut
Bron: content/bronnen/schiphol-vluchten.yaml · Markdown




