API Reference

Documentation

Everything you need to integrate European electricity prices into your application.

🔑 Sign in to try the API live from this page Sign In

Quickstart

Get your first response in under a minute.

# 1. Get an API key (free during beta) # Sign up at sparkrate.io → copy your key # 2. Make your first request curl -H "Authorization: Bearer YOUR_API_KEY" \ https://api.sparkrate.io/v1/prices/DK1/today?currency=DKK # 3. That's it. You get 24 hourly prices + stats in clean JSON.

Base URL

https://sparkrate.io/v1

All endpoints require an API key via Authorization: Bearer {'{'}key{'}'} header.

Endpoints

GET /zones

List all 43 bidding zones with metadata.

GET Sign in & select key ↑
GET /prices/{zone}/today

24 hourly day-ahead prices for today with statistics.

ParameterTypeDescription
zone path Zone code, e.g. DK1, DE-LU, SE3
currency query EUR, DKK, SEK, NOK, etc. Default: EUR
GET Sign in & select key ↑
GET /prices/{zone}/current

Current hour price + next 3 hours + daily comparison.

ParameterTypeDescription
zone path Zone code
currency query Default: EUR
GET Sign in & select key ↑
GET /prices/{zone}/tomorrow

Tomorrow's day-ahead prices. Available after ~13:00 CET. Returns 404 before.

ParameterTypeDescription
zone path Zone code
currency query Default: EUR
GET Sign in & select key ↑
GET /prices/{zone}/{date}

Historical prices for a specific date.

ParameterTypeDescription
zone path Zone code
date path YYYY-MM-DD
currency query Default: EUR
GET Sign in & select key ↑
GET /prices/{zone}/cheapest

Find the cheapest consecutive hours. Ideal for EV charging, heat pumps.

ParameterTypeDescription
zone path Zone code
hours query Number of consecutive hours needed
include_tomorrow query true/false. Default: true
currency query Default: EUR
GET Sign in & select key ↑
GET /prices/compare

Compare prices across multiple zones side-by-side.

ParameterTypeDescription
zones query Comma-separated zone codes
date query YYYY-MM-DD or 'today'
currency query Default: EUR
GET Sign in & select key ↑
GET /currencies

List supported currencies.

GET Sign in & select key ↑
GET /currencies/rates

ECB exchange rates for any date. 30 currencies, daily updates, historical back to 1999.

ParameterTypeDescription
date query YYYY-MM-DD. Default: today
symbols query Comma-separated filter, e.g. USD,GBP,DKK
GET Sign in & select key ↑

Supported Zones

43 European bidding zones across 31 countries — from the Nordics to the Balkans to Ukraine.

DK1 Denmark West2014
DK2 Denmark East2014
SE1 Sweden Luleå2014
SE2 Sweden Sundsvall2014
SE3 Sweden Stockholm2014
SE4 Sweden Malmö2014
NO1 Norway Oslo2014
NO2 Norway Kristiansand2014
NO3 Norway Trondheim2014
NO4 Norway Tromsø2014
NO5 Norway Bergen2014
FI Finland2014
DE-LU Germany/Luxembourg2018
NL Netherlands2015
BE Belgium2015
FR France2015
AT Austria2014
CH Switzerland2014
PL Poland2015
CZ Czech Republic2014
SK Slovakia2014
HU Hungary2014
SI Slovenia2014
EE Estonia2014
LV Latvia2014
LT Lithuania2014
ES Spain2014
PT Portugal2014
IT-North Italy North2015
IT-Centre-North Italy C. North2015
IT-Centre-South Italy C. South2015
IT-South Italy South2015
IT-Sardinia Italy Sardinia2015
IT-Sicily Italy Sicily2015
GR Greece2014
HR Croatia2017
RO Romania2014
BG Bulgaria2016
RS Serbia2016
ME Montenegro2014
MK North Macedonia2023
UA-IPS Ukraine2020
IE Ireland2015

Supported Currencies

All 30 ECB currencies available for price conversion and the exchange rate API.

EUR DKKSEKNOKCHF PLNCZKHUFRON
USDGBPJPYCADAUD CNYINRBRLMXNTRY ISKNZDZARSGDHKD KRWIDRMYRPHPTHBILS

Zone currencies (top row) are used as defaults for each bidding zone. All currencies work with ?currency= on price endpoints. ECB rates updated daily, historical back to 1999.

MCP Server (AI Assistants)

Give Claude, ChatGPT, Copilot, and Home Assistant real-time electricity price tools via the Model Context Protocol.

Configuration

Add to your MCP client config (Claude Desktop, VS Code, etc.):

// claude_desktop_config.json { "mcpServers": { "sparkrate-energy": { "type": "streamable-http", "url": "https://sparkrate.dk/mcp" } } }

Available Tools

ToolDescriptionKey parameters
list_zones List all available bidding zones with country and currency country (optional filter)
get_current_price Current electricity price for a zone zone (required), currency
get_prices_for_date Hourly prices for a specific historical date zone + date (required), currency
get_tomorrow_prices Tomorrow's 24 hourly prices (after ~13:00 CET) zone (required), currency
find_cheapest_charging_window Cheapest consecutive hours for EV charging, heat pump, etc. zone (required), hours (1-12), currency
get_daily_price_forecast All 24 hourly prices for today or tomorrow with chart zone (required), day (today/tomorrow), currency
estimate_cost Cost estimate: run now vs cheapest window zone + kwh (required), hours, currency
compare_zones Compare prices across multiple zones, sorted cheapest first zones (required, comma-separated), date, currency
get_exchange_rates ECB exchange rates (EUR base) date, symbols (optional filter)

Example prompts

💬 "What's the electricity price right now in Denmark West?" 💬 "When's the cheapest 4-hour window tonight to charge my EV in NO1?" 💬 "Show me tomorrow's prices for SE3 in SEK" 💬 "How much would it cost to run my washing machine (1.5 kWh) now vs at the cheapest time in DK1?"

Rate Limits

TierRequests/dayPrice
Free (Beta)1,000€0/mo
Developer10,000€19/mo (coming soon)
Pro100,000€49/mo (coming soon)

Rate limit headers: X-RateLimit-Remaining, X-RateLimit-Reset

Reconnecting...