Option A — portfolio forecast
POST /v1/forecasts, one call per delivery day.
Rules that are enforced:
- Interval count must match the day: 96 normally, 92 on the spring-forward day, 100 on the fall-back day. A 96-value series for a DST day is rejected.
- No gaps — a series must cover the whole day.
- MaLo format — a market location ID is exactly 11 digits; anything else is rejected.
- Multiple series per area and kind are allowed; they are summed.
- A subset of control areas is fine; areas you omit count as zero.
Tagging by market location instead
If your data is per market location rather than per control area, tag the series withmalo and add a malo_mapping:
Option B — master and metered data
When you have no forecast, send what you do have and the bridge builds the consumption forecast per market location:
These correspond to the content of your market communication (UTILMD
master data, MSCONS metered values, network-operator profiles), so they can
be fed directly by your market-communication provider.
Master data changes over time
A market location is not a static record: the annual consumption forecast gets revised, a customer switches from a standard load profile to quarter-hourly metering, the metering grid area changes, supply ends and may resume later. Master data is therefore stored as time slices — each with avalid_from (inclusive) and optional valid_to (exclusive) — and
every delivery day is forecast with the data that was valid on that day.
Send one slice per change; you do not need to resend the history:
valid_from + valid_to) inserts a correction into the
middle of the history and leaves the surrounding periods intact. Sending
the same slices twice changes nothing.
Ending and resuming supply. To end supply, send a slice with
"active": false from the end date. To resume later, send a normal active
slice from the new start date — the gap in between is treated as
“not supplied” and those days are excluded from the forecast:
For a market location with one uninterrupted supply period you can skip
the slice structure and send the flat form —
delivery_start, delivery_end and the attributes directly on the
location. It is shorthand for a single slice.How the forecast is derived
Units and signs
- Production and consumption are both sent as positive values; the bridge computes the net position.
MWvalues are averages over the quarter-hour;MWHvalues are the energy in that quarter-hour. Metered data additionally acceptsKWH.- Forecast values are whole kW, the grid of the schedules:
MWwith at most three decimals,MWHa multiple of0.00025. They go on to the trader and the TSOs unchanged - round them on your side, each quarter-hour on its own to the nearest whole kW. Never move energy from one quarter-hour into another: each one is settled for itself.
Corrections
Re-sending replaces: a new forecast for the same delivery day supersedes the previous one, updated master data overwrites the previous record, and re-sent metered days replace the stored day. Everything downstream re-runs on the new data automatically.Days further ahead
Sending the next day is enough. For the days after it the bridge gives the trader a backup file carried forward from your own forecasts and scaled to the customer ramp-up you report; it never goes to the TSOs as schedules, and it does not appear inGET /v1/forecasts. A forecast you send for such
a day replaces the backup and is processed as usual.