{
"external_id": "<string>",
"finality": "final",
"isp_resolution_minutes": 123,
"isp_time": "2026-09-26T22:00:00Z",
"known_at": "2023-11-07T05:31:56Z",
"stated_at": "2023-11-07T05:31:56Z",
"volume_wh": -1250000
}Imbalance record
Sign
volume_wh is signed. On the total, a positive volume means that the balance
group was long: it injected more, or withdrew less, than its trade schedule. A
negative volume means that it was short.
An adjustment has the sign of its effect on the imbalance. A positive adjustment
makes the balance group longer, and a negative adjustment makes it shorter.
Regulation direction
The suffix of an adjustment class tells what the transmission operator did:_up: it activated upward regulation, with more injection or less withdrawal._down: it activated downward regulation, with less injection or more withdrawal._net: one signed series. The market sends the class as one net value, or the class has no regulation direction.
_up volume is usually negative.
For example, in one settlement period the transmission operator activates a
battery in your balance group upward by 2 MWh, and later downward by 0.5 MWh.
The meter shows 1.5 MWh more than the trade schedule. The adjustments take that
energy out again:
component_value | volume_wh |
|---|---|
afrr_up | -2000000 |
afrr_down | 500000 |
More than one record per settlement period
The market sends a new run when it settles a period again, and Engrate keeps every run. To get one value per series and settlement period, use the record with the highestfinality, then the latest stated_at. When records have
the same values in both fields, use the first of them in the response.
Do not add across levels
The total of a balance group includes its adjustments, and the net adjustment (adjustment with the value ALL) includes the adjustment classes. Each
_net class includes the same class with _up and _down. Never add volumes
across these levels. The market does not always send every adjustment class,
thus the sum of the classes can be different from the net adjustment.
The series of one component value in one scheduling area are slices of it, and
their market dimensions tell them apart. To get the value for a settlement
period, add the record that you keep for each slice. For example, the
mfrr_up of a balance group in one scheduling area is the sum of its
mfrr_up series in that area.An imbalance volume for one imbalance series and one Imbalance Settlement Period (ISP).
The identifier of the imbalance series. The market gives it, or Engrate gives it in markets that do not give a stable identifier.
The settlement run of an imbalance. Each market has its own names for its runs, and all of them map to this common ladder. When one settlement period has more than one record, use the record with the highest finality, then the latest stated_at. When records have the same values in both fields, use the first of them in the response.
Available imbalance finalities
-
preliminary — The first run, before the market has all the data.
-
revised — A run that corrects the preliminary data.
-
final — The run used for settlement and invoicing.
-
correction — A run that corrects a wrong final value. A correction replaces the final value.
preliminary, revised, final, correction "final"
The length of the ISP in minutes. This is usually 15, 30 or 60, depending on the market.
The start of the Imbalance Settlement Period (ISP), as an ISO 8601 timestamp in UTC, for example 2026-01-01T00:00:00Z.
"2026-09-26T22:00:00Z"
When Engrate ingested the record, as an ISO 8601 timestamp in UTC. Use it to prevent look-ahead bias when you fit models: leave out the records that Engrate ingested after the time your model runs.
The market's own timestamp for the settlement run of the record, as an ISO 8601 timestamp in UTC.
The signed volume in Wh. On a total, a positive volume means that the balance group was long: it injected more, or withdrew less, than its trade schedule. On an adjustment, the sign is its effect on the imbalance: positive makes the balance group longer.
-1250000
Was this page helpful?