GnistAI GnistAI
Log in

Hvakosterstrommen (Electricity Prices)

Norwegian electricity spot prices and day-ahead market data.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 7 tools tools 7 7 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Finance

Data source: hvakosterstrommen.no

REST Bridge Endpoint https://context.gnist.ai/rest/hvakosterstrommen/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (7)

get_current_electricity_price

Get the current hour's spot electricity price for a Nordpool price zone.

Args:
zone: Nordpool price zone (e.g. 'NO1' for Oslo/East Norway). Valid zones: NO1, NO2, NO3, NO4, NO5, SE1, SE2, SE3, SE4, DK1, DK2, FI.

Returns:
Dictionary with time_start, time_end, nok_per_kwh, eur_per_kwh, and exchange_rate.

ParameterTypeRequiredDescription
zonestringrequiredNordpool price zone (e.g. 'NO1' for Oslo/East Norway). Valid zones: NO1, NO2, NO3, NO4, NO5, SE1, SE2, SE3, SE4, DK1, DK2, FI.
Request Body
{
  "zone": "example"
}
get_electricity_prices_today

Get all 24 hourly electricity spot prices for today in a Nordpool price zone.

Includes summary statistics: cheapest hour, most expensive hour, min/max/avg prices.

Args:
zone: Nordpool price zone (e.g. 'NO1' for Oslo/East Norway). Valid zones: NO1, NO2, NO3, NO4, NO5, SE1, SE2, SE3, SE4, DK1, DK2, FI.

Returns:
Dictionary with date, count, cheapest_hour, most_expensive_hour, min/max/avg prices, and hourly prices list.

ParameterTypeRequiredDescription
zonestringrequiredNordpool price zone (e.g. 'NO1' for Oslo/East Norway). Valid zones: NO1, NO2, NO3, NO4, NO5, SE1, SE2, SE3, SE4, DK1, DK2, FI.
Request Body
{
  "zone": "example"
}
get_electricity_prices_tomorrow

Get day-ahead electricity spot prices for tomorrow in a Nordpool price zone.

Day-ahead prices are published around 13:00 CET. Returns an error if not yet available.

Args:
zone: Nordpool price zone (e.g. 'NO1' for Oslo/East Norway). Valid zones: NO1, NO2, NO3, NO4, NO5, SE1, SE2, SE3, SE4, DK1, DK2, FI.

Returns:
Dictionary with date, count, cheapest_hour, most_expensive_hour, min/max/avg prices, and hourly prices list.

ParameterTypeRequiredDescription
zonestringrequiredNordpool price zone (e.g. 'NO1' for Oslo/East Norway). Valid zones: NO1, NO2, NO3, NO4, NO5, SE1, SE2, SE3, SE4, DK1, DK2, FI.
Request Body
{
  "zone": "example"
}
get_cheapest_electricity_window

Find the cheapest consecutive block of hours for electricity across today and tomorrow.

Ideal for scheduling EV charging, appliances, or heat pumps to minimize cost.
Tomorrow's prices are included if available (published ~13:00 CET).

Args:
zone: Nordpool price zone (e.g. 'NO1'). Valid zones: NO1–NO5, SE1–SE4, DK1–DK2, FI.
duration_hours: Number of consecutive hours needed (1–24).
not_before: ISO 8601 datetime — only consider hours at or after this time (e.g. '2026-03-13T22:00:00+01:00').
not_after: ISO 8601 datetime — only consider hours ending at or before this time (e.g. '2026-03-14T07:00:00+01:00').

Returns:
Dictionary with window_start, window_end, avg_nok_per_kwh, total_nok_per_kwh, and individual hour prices.

ParameterTypeRequiredDescription
zonestringrequiredNordpool price zone (e.g. 'NO1'). Valid zones: NO1–NO5, SE1–SE4, DK1–DK2, FI.
duration_hoursintegerrequiredNumber of consecutive hours needed (1–24).
not_beforeanyoptionalISO 8601 datetime — only consider hours at or after this time (e.g. '2026-03-13T22:00:00+01:00').
not_afteranyoptionalISO 8601 datetime — only consider hours ending at or before this time (e.g. '2026-03-14T07:00:00+01:00').
Request Body
{
  "zone": "example",
  "duration_hours": 1
}
get_electricity_price_history

Get historical hourly electricity spot prices for the past N days.

Args:
zone: Nordpool price zone (e.g. 'NO1'). Valid zones: NO1–NO5, SE1–SE4, DK1–DK2, FI.
days: Number of past days to include (1–30, default 7).

Returns:
Dictionary with zone, days, count, and a flat list of all hourly prices in chronological order.

ParameterTypeRequiredDescription
zonestringrequiredNordpool price zone (e.g. 'NO1'). Valid zones: NO1–NO5, SE1–SE4, DK1–DK2, FI.
daysintegeroptionalNumber of past days to include (1–30, default 7). (default: 7)
Request Body
{
  "zone": "example"
}
get_electricity_zone_for_location

Resolve geographic coordinates to the nearest Nordpool electricity price zone.

Uses straight-line distance to approximate zone centers. Works for Norway, Sweden, Denmark, and Finland.

Args:
lat: Latitude (decimal degrees).
lon: Longitude (decimal degrees).

Returns:
Dictionary with zone (e.g. 'NO1') and distance_km to the zone center.

ParameterTypeRequiredDescription
latnumberrequiredLatitude (decimal degrees).
lonnumberrequiredLongitude (decimal degrees).
Request Body
{
  "lat": 1.0,
  "lon": 1.0
}
report_feedback

Report a bug, feature request, or general feedback for this data source.

Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.

Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
Request Body
{
  "feedback": "example"
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/rest/hvakosterstrommen/get_current_electricity_price" \
  -H "Content-Type: application/json" \
  -H "Gnist-API-Key: YOUR_API_KEY" \
  -d '{"zone": "example"}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/rest/hvakosterstrommen/get_current_electricity_price",
    headers={"Gnist-API-Key": "YOUR_API_KEY"},
    json={
  "zone": "example"
},
)
print(resp.json())

Related Toolkits (Finance)

Resources