Live half-hourly UK grid data from Elexon BMRS.
Weather regressors from Open-Meteo.
Gradient Boosting model. R² = 0.9701.
48-hour demand forecasts via REST API.
Elexon BMRS · Open-Meteo · Supabase · Updated every 30 mins
Half-hourly UK national demand and transmission system demand ingested via automated n8n pipeline. Every 30 minutes. Zero manual intervention.
Temperature, wind speed, and shortwave radiation from Open-Meteo — joined to demand data at the model layer to improve forecast accuracy significantly.
Trained on lag features, rolling statistics, calendar signals, and weather regressors. R² = 0.9701. 48-hour forecast window with 95% confidence bands.
JSON endpoints for current demand, 48h forecast, weather inputs, and model metadata. Authenticated via API key. Rate-limited by plan tier.
All data stored in structured PostgreSQL tables with unique constraints. Full historical access for Pro/Enterprise. Real-time subscriptions coming soon.
Download historical demand and weather data as CSV. Configurable date ranges. Available on Professional and Enterprise tiers.
GridSense exposes a RESTful JSON API hosted on Hetzner VPS infrastructure. All endpoints return structured responses with timestamps, units, and model metadata included.
import requests # Authenticate with your API key headers = { "Authorization": "Bearer gs_your_api_key", "Content-Type": "application/json" } # Get 48h demand forecast r = requests.get( "https://api.gridsense.evervia.co.uk/v1/forecast", headers=headers ) data = r.json() # Response structure: # { # "model": "GradientBoostingRegressor", # "r2_score": 0.9701, # "forecast": [ # { # "timestamp": "2026-05-07T12:00:00Z", # "predicted_mw": 24183, # "ci_lower": 23100, # "ci_upper": 25266 # }, # ... # ] # } print(f"Forecast points: {len(data['forecast'])}") print(f"R² score: {data['r2_score']}")
GridSense is in active development. Early access members get priority API keys, discounted rates, and direct input on the roadmap. No spam — just a single email when you're in.