https://www.gaspeil.nl/api/v1/dagen-tot-leegGeen request body. Geen authenticatie. CORS staat open. Response is JSON, cached voor 1 uur op de edge.
Twee publieke endpoints. Het eerste beantwoordt één vraag: hoeveel dagen nog totdat Nederland zonder gas zit, als de trends van recente jaren zich herhalen? Het tweede geeft elke gevolgde LNG-aankomst uit de LNG Radar, met per record of de lading geschat, gemeten of bevestigd is. Gratis, geen API-key. Voor de actuele scheepsdata per haven is er een API met sleutel, ook gratis.
https://www.gaspeil.nl/api/v1/dagen-tot-leegGeen request body. Geen authenticatie. CORS staat open. Response is JSON, cached voor 1 uur op de edge.
curl https://www.gaspeil.nl/api/v1/dagen-tot-leeg{
"ok": true,
"asOf": "2026-05-19",
"daysUntilEmpty": 187,
"emptyDate": "2026-11-22",
"currentFullPct": 12.91,
"currentGasInStorageTwh": 17.4,
"method": "historical-replay",
"basedOnYears": [2023, 2024, 2025],
"scenarios": {
"earliest": {
"basedOnYear": 2025,
"emptyDate": "2026-11-08",
"daysUntilEmpty": 173
},
"central": {
"emptyDate": "2026-11-22",
"daysUntilEmpty": 187
},
"latest": {
"basedOnYear": 2024,
"emptyDate": "2026-12-04",
"daysUntilEmpty": 199
}
},
"source": "https://www.gaspeil.nl",
"documentation": "https://www.gaspeil.nl/api-docs",
"license": "CC BY 4.0"
}asOfISO date (YYYY-MM-DD)Laatste gas-dag waarvan AGSI+ data beschikbaar was bij het bouwen van de prognose.
daysUntilEmptyinteger | nullKalenderdagen vanaf asOf tot waarop de centrale prognose de gas-in-storage op 0 plaatst. null als opslag binnen de 3-jaars horizon niet leeg raakt.
emptyDateISO date | nullDe datum waarop de centrale prognose voorspelt dat opslag leeg is. null wanneer geen leegloop wordt voorspeld.
currentFullPctnumberProcentuele vulgraad van de Nederlandse gasopslagen op asOf, op 2 decimalen.
currentGasInStorageTwhnumberAbsolute hoeveelheid gas in opslag (TWh) op asOf.
methodstringWelk forecastmodel is gebruikt. Momenteel altijd "historical-replay": neemt per kalenderdag de gemiddelde netto opslag-flow uit de drie meest recente jaren en past dat toe vanaf vandaag.
basedOnYearsinteger[]De jaren waarover de centrale schatting is gemiddeld.
scenarios.earliestobject | nullHet historische jaar met het zwakste injectie-patroon, geeft de vroegste empty-date in de bandbreedte.
scenarios.centralobjectDe centrale schatting (gemiddelde van basedOnYears).
scenarios.latestobject | nullHet historische jaar met het sterkste injectie-patroon, geeft de laatste empty-date in de bandbreedte.
De response wordt 1 uur gecached op de Vercel edge (Cache-Control: public, max-age=3600). De achterliggende data wordt één keer per dag rond 12:00 UTC ververst via een geautomatiseerde sync naar onze data-store.
Er is geen harde rate limit, maar respect graag de cache: als je vaker dan elk uur polling doet krijg je dezelfde JSON terug.
Succes-responses zijn altijd HTTP 200 met "ok": true. Bij problemen krijg je 503 (data nog niet gevuld in de KV-store) of 500 (onverwacht), met "ok": false en een error-veld.
De prognose gebruikt een opslag-replay model: voor elk van de drie meest recente jaren wordt per kalenderdag de werkelijke netto-flow (injectie minus onttrekking) berekend, en dat patroon wordt vanaf de huidige voorraad doorgetrokken. De centrale schatting middelt over de drie jaren. De vroegste en laatste scenario's tonen de bandbreedte.
Wat het niet vangt: koude winter, beleidsingreep, LNG-spike, Noorse uitval. De cijfers zijn een indicatie van het ritme, geen voorspelling van de werkelijkheid. Zie de disclaimer voor de volledige aannames.
De data wordt gepubliceerd onder Creative Commons CC BY 4.0. Gebruik vrij voor publicaties, dashboards, persberichten, hobby-projecten, scripts, alarmclocks. Vermeld als bron "Gaspeil.nl op basis van GIE AGSI+" en link waar mogelijk terug naar gaspeil.nl.
De onderliggende bronnen (GIE AGSI+, NED.nl) hebben hun eigen voorwaarden, die zijn van toepassing op afgeleide werken die hun ruwe data publiceren.
JavaScript / Node:
const r = await fetch("https://www.gaspeil.nl/api/v1/dagen-tot-leeg");
const data = await r.json();
console.log(`Nog ${data.daysUntilEmpty} dagen tot ${data.emptyDate}`);Python:
import requests
r = requests.get("https://www.gaspeil.nl/api/v1/dagen-tot-leeg").json()
print(f"Nog {r['daysUntilEmpty']} dagen tot {r['emptyDate']}")Shell + jq:
curl -s https://www.gaspeil.nl/api/v1/dagen-tot-leeg \
| jq '{days: .daysUntilEmpty, when: .emptyDate}'https://www.gaspeil.nl/api/v1/lng/lossingenAlle LNG-tankers die sinds september 2026 bij Gate (Rotterdam) of EemsEnergy (Eemshaven) zijn aangekomen, nieuwste eerst. JSON of CSV, geen authenticatie, CORS open, 5 minuten gecached.
Elk record draagt een status in drie trappen, zodat je weet hoe hard het getal is:
geschatstatusAangekomen volgens de havenlijst van Rotterdam of AIS. De lading is een schatting op scheepslengte (of op eerdere gemeten ladingen van hetzelfde schip).
gemetenstatusGelost: de sprong in de tankvoorraad van de terminal (GIE ALSI+) is aan dit schip gekoppeld. Verschijnt een dag na aankomst. measuredGwh en measuredGasDay zijn dan gevuld.
bevestigdstatusDe Amerikaanse exportlijst van het ministerie van Energie (DOE) noemt deze lading: vertrekdatum, exportterminal en geladen volume. Komt ongeveer twee maanden na vertrek. Alleen voor Amerikaans LNG.
Parameters (allemaal optioneel):
formatjson | csvStandaard JSON. Met format=csv krijg je een CSV met kopregel, komma als scheidingsteken, één regel per aankomst.
terminalgate | eemsAlleen aankomsten bij die terminal.
from, toISO date (YYYY-MM-DD)Aankomstdatum vanaf en tot en met.
Voorbeeld-response (ingekort):
{
"ok": true,
"generatedAt": "2026-09-11T14:00:00.000Z",
"count": 23,
"filters": { "terminal": null, "from": null, "to": null },
"statuses": { "geschat": "...", "gemeten": "...", "bevestigd": "..." },
"lossingen": [
{
"key": "9876543|2026-09-10",
"ship": "VOORBEELD SHIP",
"imo": "9876543",
"terminal": "gate",
"arrivedAt": "2026-09-10T04:20:00.000Z",
"status": "gemeten",
"cargoGwh": 990,
"estimatedGwh": 1015,
"measuredGwh": 990,
"measuredGasDay": "2026-09-10",
"origin": { "label": "Verenigde Staten", "iso": "US", "likely": false, "basis": "AIS-spoor begint bij Sabine Pass" },
"doe": null,
"co2T": 3575,
"ttfEurMwh": 34.57,
"valueEur": 34224000,
"recordedAt": "2026-09-10T05:00:00.000Z"
}
],
"source": "https://www.gaspeil.nl/radar",
"documentation": "https://www.gaspeil.nl/api-docs",
"license": "CC BY 4.0"
}cargoGwhintegerBeste beschikbare lading in GWh: de gemeten waarde als die er is, anders de schatting. estimatedGwh is altijd de oorspronkelijke schatting.
originobject | nullWaar de lading is geladen, met de basis van die afleiding (AIS-spoor, positie bij een exportterminal, rederij of DOE-historie). likely=true betekent: vermoeden, geen waarneming.
doeobject | nullKoppeling aan de DOE-exportlijst: departedAt, terminal, loadedGwh. Alleen bij status bevestigd.
co2TintegerGeschatte CO2 van de overtocht in ton (alleen brandstof van het schip, geen vloeibaar maken of terugreis).
ttfEurMwh, valueEurnumber | nullTTF-prijs op de dag van aankomst en de lading maal die prijs. Indicatief; null als de prijs toen niet beschikbaar was.
Shell:
curl -s "https://www.gaspeil.nl/api/v1/lng/lossingen?format=csv&terminal=gate" -o gate.csvDezelfde export staat als downloadknop in het herkomstpaneel van de radar. Vermeld als bron "Gaspeil.nl op basis van Havenbedrijf Rotterdam, AIS, GIE ALSI+ en DOE". Hoe de getallen tot stand komen staat op /radar/uitleg.
Drie endpoints geven de actuele stand van de LNG Radar: welke tankers in Gate en Eemshaven liggen, welke zijn aangemeld en wat de komende dagen binnenkomt, met per schip de verwachte lading, vulling, herkomst, positie en aankomsttijd. Alles wat de radar toont, behalve de waarde van de lading.
Hiervoor heb je een gratis sleutel nodig. Log in met je e-mailadres (je krijgt een link en een code, geen wachtwoord) en maak een sleutel aan. Stuur hem mee in de header:
curl https://www.gaspeil.nl/api/v1/lng/havens \
-H "Authorization: Bearer gp_live_..."X-API-Key: gp_live_... werkt ook. Een sleutel in de URL accepteren we niet: die belandt in logs.
Drie lijsten in één antwoord: inDeHaven (aan de steiger of in de haven), aangemeld (in de havenlijst van Rotterdam of Eemshaven, elke aankomsttijd) en verwacht (alles wat binnen het venster aankomt, ook schepen die alleen via AIS Nederland als bestemming opgeven). Parameters: terminal=gate|eems en dagen=1..30 (standaard 14).
{
"ok": true,
"dataStand": "2026-09-23T10:20:00.000Z",
"samenvatting": { "inDeHaven": 3, "aangemeld": 5, "verwachtBinnenVenster": 9, "verwachteLadingBinnenVensterGwh": 8444 },
"verwacht": [
{
"naam": "ENERGY ATLANTIC", "imo": "9649328", "mmsi": "256647000", "vlag": "MT",
"lengteM": 290, "capaciteitM3": 174000, "terminal": "eems",
"status": "aanloop", "statusOmschrijving": "komt binnen 24 uur aan", "bron": "havenlijst",
"verwachteAankomst": "2026-09-23T22:00:00.000Z", "urenTotAankomst": 11.7,
"lading": { "verwachtGwh": 963, "vulling": 1, "vullingOmschrijving": "vol", "basis": "..." },
"herkomst": { "land": "Verenigde Staten", "iso": "US", "vermoeden": true, "basis": "..." },
"positie": { "lat": 53.95, "lon": 5.79, "bron": "ais", "snelheidKn": 11.3, "bestemmingAis": "NLEEM" },
"links": { "radar": "https://www.gaspeil.nl/radar?ship=9649328" }
}
],
"inDeHaven": [ ... ],
"aangemeld": [ ... ],
"bronnenMetStoring": []
}De aanvoer in cijfers: gelost in de afgelopen 14 dagen (gemeten in de tanks), verwacht in de komende 14 dagen (aangemeld plus statistisch), de uitstroom, de tankstand per terminal, de verwachting per gasdag en de CO2 van de aangekomen schepen. Energie in GWh.
Eén schip op IMO-nummer: de huidige stand (als het in beeld is), het logboek (aanmeldingen, lossingen, satelliet-havenbezoeken) en elke lossing in Nederland met geschatte, gemeten en bevestigde lading. Onbekend schip: 404.
Je eigen verbruik: aanroepen vandaag, per dag en per endpoint over de laatste 30 dagen.
Gratis: 60 aanroepen per minuut en 1.000 per dag (UTC). Elk antwoord heeft X-RateLimit-Limit, X-RateLimit-Remaining en X-RateLimit-Reset. Boven de limiet volgt 429 met Retry-After. Geen of een ingetrokken sleutel geeft 401. De data ververst elke twee minuten, dus vaker vragen levert niets nieuws op. Zie je in bronnenMetStoring een bron staan, dan draait die op de laatste goede stand.
Licentie CC BY 4.0: vermeld "Gaspeil.nl" als bron. We tellen per sleutel hoe vaak en welk endpoint je aanroept, om misbruik te zien en de API te verbeteren. Meer nodig dan het gratis plan? Laat het weten via gaspeil.nl/bug-melden.
Het pad bevat een version-prefix (/v1/). Bij een breaking change in de response-vorm krijgt het endpoint een nieuwe versie en blijft v1 minimaal 12 maanden bereikbaar. Niet-breaking toevoegingen (nieuwe velden) gebeuren binnen v1.
Meld het via gaspeil.nl/bug-melden. Of bouw iets leuks en stuur een link, we zijn benieuwd.
Laatst bijgewerkt: 19 oktober 2026