A Home Energy Management System (HEMS) decides when flexible loads (heat pumps, EV chargers, batteries, thermal storage) should run. To do that well, it needs the customer’s actual electricity price, interval-by-interval. With a Nomos dynamic plan that’s straightforward: pull the customer’s prices, schedule loads against the cheap intervals, and after the fact compare against the realized consumption.Documentation Index
Fetch the complete documentation index at: https://docs.nomos.energy/llms.txt
Use this file to discover all available pages before exploring further.
1. Find the customer’s subscription
A customer can have one or more subscriptions, but most have exactly one. List them and pick the active one:subscription is undefined, the customer hasn’t been activated yet; show them a “we’re still setting up your contract” state in your HEMS. You can subscribe to the subscription.activated webhook to know the moment that changes.
2. Pull the day-ahead price time series
Each day, the EPEX day-ahead auction clears in the early afternoon and publishes the next 24 hours of prices in 15-minute intervals. The Nomos price endpoint exposes the customer-specific all-in price (energy + taxes + levies + grid fees) for those intervals.timestamp (the start of the interval, in UTC) and an amount — the all-in working price for that interval in cents per kWh, including taxes, levies, and grid fees. A components breakdown is included if you want to separate energy from grid fees and levies:
Intervals are 15 minutes long. Since the EPEX day-ahead auction switched to
quarter-hourly products on 1 October 2025, that’s the native resolution of the
underlying market and what we expose. See Price time
series for the full
schema.
3. Shift load to the cheap intervals
Once you have the price series, picking when to run a load is straightforward. The simplest version:4. Verify against actual consumption
After the load has run, pull the customer’s 15-minute consumption from/subscriptions/{id}/consumption and overlay it on the price series to compute realized cost or savings:
data has a start (interval start, ISO 8601), a usage in kWh, and a type of final or preliminary (preliminary values can still change). Aligned with the price intervals from step 2, usage * amount gives you the cost per interval in cents.
Smart-meter consumption appears from ~16:00 on D+1, once the metering operator
forwards the previous day’s values. Preliminary readings may be replaced by
final ones up to the 8th working day of the following month. Don’t expect
same-day verification.
What’s next
Listen for plan changes
Subscribe to subscription events to know when delivery starts, ends, or is
paused.
Price time series API
All query parameters and response fields for price data.