{"openapi":"3.1.0","info":{"title":"Electricity Market API","version":"1.0.0","description":"Live European wholesale (day-ahead) electricity prices and the live power-generation mix, from the Fraunhofer ISE Energy-Charts public data. Electricity is one of Europe's largest traded commodities: each bidding zone (Germany, France, the Nordics, Iberia, Italy …) clears a day-ahead auction priced in EUR/MWh, and the resulting curve drives industrial costs and energy-stock moves. The price endpoint returns a zone's day-ahead price right now plus the day's min/max/average; the prices endpoint returns the full hourly day-ahead curve; the zones endpoint lists the supported bidding zones; the power endpoint returns a country's current generation mix by source with the renewable share. Read live, nothing stored. This is Europe's own wholesale-electricity price and generation layer — distinct from fuel/metal commodity feeds and from FX or equity APIs.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/electricity-api","description":"oanor gateway"}],"tags":[{"name":"Price"},{"name":"Prices"},{"name":"Zones"},{"name":"Power"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/price":{"get":{"operationId":"get_v1_price","tags":["Price"],"summary":"A zone's day-ahead price now + day stats","description":"","parameters":[{"name":"zone","in":"query","required":false,"description":"Bidding zone (DE-LU, FR, NO2 …)","schema":{"type":"string"},"example":"DE-LU"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"unit":"EUR / MWh","zone":"DE-LU","points":96,"source":"Energy-Charts (Fraunhofer ISE)","day_avg":122.51,"day_max":239.68,"day_min":64,"zone_name":"Germany / Luxembourg","current_time":"2026-06-10T21:45:00.000Z","current_price":140.56},"meta":{"timestamp":"2026-06-10T22:57:04.346Z","request_id":"b059dd27-a31a-4d99-895b-4c294cc8e087"},"status":"ok","message":"Price retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/prices":{"get":{"operationId":"get_v1_prices","tags":["Prices"],"summary":"Full hourly day-ahead price curve for a zone","description":"","parameters":[{"name":"zone","in":"query","required":false,"description":"Bidding zone","schema":{"type":"string"},"example":"FR"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"unit":"EUR / MWh","zone":"FR","count":96,"prices":[{"time":"2026-06-09T22:00:00.000Z","price":85.28},{"time":"2026-06-09T22:15:00.000Z","price":83.7},{"time":"2026-06-09T22:30:00.000Z","price":76.92},{"time":"2026-06-09T22:45:00.000Z","price":61.39},{"time":"2026-06-09T23:00:00.000Z","price":77.64},{"time":"2026-06-09T23:15:00.000Z","price":76.44},{"time":"2026-06-09T23:30:00.000Z","price":76.2},{"time":"2026-06-09T23:45:00.000Z","price":74.2},{"time":"2026-06-10T00:00:00.000Z","price":70},{"time":"2026-06-10T00:15:00.000Z","price":65.03},{"time":"2026-06-10T00:30:00.000Z","price":56.63},{"time":"2026-06-10T00:45:00.000Z","price":42.7},{"time":"2026-06-10T01:00:00.000Z","price":31.89},{"time":"2026-06-10T01:15:00.000Z","price":40.34},{"time":"2026-06-10T01:30:00.000Z","price":40.99},{"time":"2026-06-10T01:45:00.000Z","price":35.56},{"time":"2026-06-10T02:00:00.000Z","price":36.33},{"time":"2026-06-10T02:15:00.000Z","price":34.44},{"time":"2026-06-10T02:30:00.000Z","price":42.5},{"time":"2026-06-10T02:45:00.000Z","price":32},{"time":"2026-06-10T03:00:00.000Z","price":49.55},{"time":"2026-06-10T03:15:00.000Z","price":58.91},{"time":"2026-06-10T03:30:00.000Z","price":51.86},{"time":"2026-06-10T03:45:00.000Z","price":39.1},{"time":"2026-06-10T04:00:00.000Z","price":36.47},{"time":"2026-06-10T04:15:00.000Z","price":50.08},{"time":"2026-06-10T04:30:00.000Z","price":55.79},{"time":"2026-06-10T04:45:00.000Z","price":63.59},{"time":"2026-06-10T05:00:00.000Z","price":65},{"time":"2026-06-10T05:15:00.000Z","price":70.7},{"time":"2026-06-10T05:30:00.000Z","price":75.99},{"time":"2026-06-10T05:45:00.000Z","price":62.3},{"time":"2026-06-10T06:00:00.000Z","price":77.16},{"time":"2026-06-10T06:15:00.000Z","price":50.01},{"time":"2026-06-10T06:30:00.000Z","price":39.48},{"time":"2026-06-10T06:45:00.000Z","price":15.23},{"time":"2026-06-10T07:00:00.000Z","price":14.94},{"time":"2026-06-10T07:15:00.000Z","price":2.21},{"time":"2026-06-10T07:30:00.000Z","price":0.84},{"time":"2026-06-10T07:45:00.000Z","price":0},{"time":"2026-06-10T08:00:00.000Z","price":0},{"time":"2026-06-10T08:15:00.000Z","price":0},{"time":"2026-06-10T08:30:00.000Z","price":0},{"time":"2026-06-10T08:45:00.000Z","price":-0.01},{"time":"2026-06-10T09:00:00.000Z","price":-0.01},{"time":"2026-06-10T09:15:00.000Z","price":-0.01},{"time":"2026-06-10T09:30:00.000Z","price":-0.01},{"time":"2026-06-10T09:45:00.000Z","price":-0.01},{"time":"2026-06-10T10:00:00.000Z","price":-0.01},{"time":"2026-06-10T10:15:00.000Z","price":-0.01},{"time":"2026-06-10T10:30:00.000Z","price":-0.01},{"time":"2026-06-10T10:45:00.000Z","price":-0.01},{"time":"2026-06-10T11:00:00.000Z","price":-0.01},{"time":"2026-06-10T11:15:00.000Z","price":-0.01},{"time":"2026-06-10T11:30:00.000Z","price":-0.02},{"time":"2026-06-10T11:45:00.000Z","price":-0.02},{"time":"2026-06-10T12:00:00.000Z","price":-0.01},{"time":"2026-06-10T12:15:00.000Z","price":-0.02},{"time":"2026-06-10T12:30:00.000Z","price":-0.02},{"time":"2026-06-10T12:45:00.000Z","price":-0.05},{"time":"2026-06-10T13:00:00.000Z","price":-0.07},{"time":"2026-06-10T13:15:00.000Z","price":-0.1},{"time":"2026-06-10T13:30:00.000Z","price":-0.11},{"time":"2026-06-10T13:45:00.000Z","price":-0.11},{"time":"2026-06-10T14:00:00.000Z","price":-0.11},{"time":"2026-06-10T14:15:00.000Z","price":-0.11},{"time":"2026-06-10T14:30:00.000Z","price":-0.11},{"time":"2026-06-10T14:45:00.000Z","price":-0.11},{"time":"2026-06-10T15:00:00.000Z","price":-0.05},{"time":"2026-06-10T15:15:00.000Z","price":-0.01},{"time":"2026-06-10T15:30:00.000Z","price":-0.01},{"time":"2026-06-10T15:45:00.000Z","price":-0.01},{"time":"2026-06-10T16:00:00.000Z","price":0},{"time":"2026-06-10T16:15:00.000Z","price":0},{"time":"2026-06-10T16:30:00.000Z","price":0},{"time":"2026-06-10T16:45:00.000Z","price":0.84},{"time":"2026-06-10T17:00:00.000Z","price":16.99},{"time":"2026-06-10T17:15:00.000Z","price":1.5},{"time":"2026-06-10T17:30:00.000Z","price":8.73},{"time":"2026-06-10T17:45:00.000Z","price":38.03},{"time":"2026-06-10T18:00:00.000Z","price":20},{"time":"2026-06-10T18:15:00.000Z","price":46.68},{"time":"2026-06-10T18:30:00.000Z","price":67.43},{"time":"2026-06-10T18:45:00.000Z","price":84.93},{"time":"2026-06-10T19:00:00.000Z","price":85.28},{"time":"2026-06-10T19:15:00.000Z","price":70.12},{"time":"2026-06-10T19:30:00.000Z","price":68.02},{"time":"2026-06-10T19:45:00.000Z","price":67.76},{"time":"2026-06-10T20:00:00.000Z","price":73.01},{"time":"2026-06-10T20:15:00.000Z","price":84.7},{"time":"2026-06-10T20:30:00.000Z","price":88.44},{"time":"2026-06-10T20:45:00.000Z","price":79.85},{"time":"2026-06-10T21:00:00.000Z","price":81.8},{"time":"2026-06-10T21:15:00.000Z","price":76.44},{"time":"2026-06-10T21:30:00.000Z","price":75.66},{"time":"2026-06-10T21:45:00.000Z","price":60.2}],"source":"Energy-Charts (Fraunhofer ISE)","zone_name":"France"},"meta":{"timestamp":"2026-06-10T22:57:04.681Z","request_id":"0b3c8834-3a0a-443d-94a7-2080a51cf398"},"status":"ok","message":"Prices retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/zones":{"get":{"operationId":"get_v1_zones","tags":["Zones"],"summary":"All supported bidding zones","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"count":32,"zones":[{"code":"DE-LU","name":"Germany / Luxembourg"},{"code":"AT","name":"Austria"},{"code":"BE","name":"Belgium"},{"code":"CH","name":"Switzerland"},{"code":"CZ","name":"Czech Republic"},{"code":"DK1","name":"Denmark West"},{"code":"DK2","name":"Denmark East"},{"code":"ES","name":"Spain"},{"code":"FI","name":"Finland"},{"code":"FR","name":"France"},{"code":"GR","name":"Greece"},{"code":"HU","name":"Hungary"},{"code":"IT-North","name":"Italy North"},{"code":"IT-Centre-North","name":"Italy Centre-North"},{"code":"IT-South","name":"Italy South"},{"code":"IT-Sicily","name":"Italy Sicily"},{"code":"IT-Sardinia","name":"Italy Sardinia"},{"code":"NL","name":"Netherlands"},{"code":"NO1","name":"Norway Oslo"},{"code":"NO2","name":"Norway Kristiansand"},{"code":"NO3","name":"Norway Trondheim"},{"code":"NO4","name":"Norway Tromso"},{"code":"NO5","name":"Norway Bergen"},{"code":"PL","name":"Poland"},{"code":"PT","name":"Portugal"},{"code":"RO","name":"Romania"},{"code":"SE1","name":"Sweden Lulea"},{"code":"SE2","name":"Sweden Sundsvall"},{"code":"SE3","name":"Sweden Stockholm"},{"code":"SE4","name":"Sweden Malmo"},{"code":"SI","name":"Slovenia"},{"code":"SK","name":"Slovakia"}],"source":"Energy-Charts (Fraunhofer ISE)"},"meta":{"timestamp":"2026-06-10T22:57:04.790Z","request_id":"77b920e1-8f54-48cb-8f3a-09e0543ad3e3"},"status":"ok","message":"Zones retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/power":{"get":{"operationId":"get_v1_power","tags":["Power"],"summary":"Country generation mix by source + renewable share","description":"","parameters":[{"name":"country","in":"query","required":false,"description":"2-letter country code","schema":{"type":"string"},"example":"de"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK"},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Service metadata","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Prices in EUR/MWh (day-ahead auction); power in MW. Data: Bundesnetzagentur | SMARD.de, CC BY 4.0.","source":"Energy-Charts (api.energy-charts.info, Fraunhofer ISE, live)","service":"electricity-api","endpoints":{"GET /v1/meta":"This document.","GET /v1/power":"A country's current generation mix by source with renewable share (country=de).","GET /v1/price":"A zone's day-ahead price now plus day min/max/average (zone=DE-LU).","GET /v1/zones":"All supported bidding zones.","GET /v1/prices":"The full hourly day-ahead price curve for a zone (zone=FR)."},"description":"Live European wholesale (day-ahead) electricity prices and the live power-generation mix, from the Fraunhofer ISE Energy-Charts public data. Electricity is one of Europe's largest traded commodities: each bidding zone (Germany, France, the Nordics, Iberia, Italy …) clears a day-ahead auction priced in EUR/MWh. The price endpoint returns a zone's day-ahead price right now plus the day's min/max/average; the prices endpoint returns the full hourly day-ahead curve; the zones endpoint lists the supported bidding zones; the power endpoint returns a country's current generation mix by source with the renewable share. Live, no key, nothing stored. Distinct from fuel/metal commodity feeds and from FX or equity APIs — this is Europe's own wholesale-electricity price and generation layer.","upstream_status":"ok","de_lu_price_eur_mwh":140.56},"meta":{"timestamp":"2026-06-10T22:57:05.543Z","request_id":"7c2a68c5-69d4-4a95-9ceb-6312c37bbe1f"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":3200,"rps_limit":3,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":750,"monthly_call_quota":85000,"rps_limit":12,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2300,"monthly_call_quota":420000,"rps_limit":35,"hard_limit":true},{"slug":"scale","name":"Scale","price_cents_month":5300,"monthly_call_quota":2600000,"rps_limit":110,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/electricity-api"}