Skip to main content
An imbalance record is one volume of one imbalance series in one settlement period. List Imbalances gives the records, and List Imbalance Series gives the dimensions of each series.

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.
The direction and the sign are different things. Upward regulation adds energy at the meters of the balance group, and the adjustment takes it out of the imbalance again. Thus an _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: Together they are -1.5 MWh, so the activations do not change the imbalance of the balance group.

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 highest finality, 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).

external_id
string
required

The identifier of the imbalance series. The market gives it, or Engrate gives it in markets that do not give a stable identifier.

finality
enum<string>
required

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.

Available options:
preliminary,
revised,
final,
correction
Example:

"final"

isp_resolution_minutes
integer
required

The length of the ISP in minutes. This is usually 15, 30 or 60, depending on the market.

isp_time
string<date-time>
required

The start of the Imbalance Settlement Period (ISP), as an ISO 8601 timestamp in UTC, for example 2026-01-01T00:00:00Z.

Example:

"2026-09-26T22:00:00Z"

known_at
string<date-time>
required

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.

stated_at
string<date-time>
required

The market's own timestamp for the settlement run of the record, as an ISO 8601 timestamp in UTC.

volume_wh
integer
required

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.

Example:

-1250000