Select your language

Documentation: performance_results

This table saves how a subject performed against a target, on one metric, over one period (e.g. the daily and quarterly KPIs of a SOLEIL service contract). A row keeps the value scored, the target it was judged against and whether it met it, so any program scoring its own subjects writes here rather than bringing a table of its own. Populated by data processors.
To import data in this format you can use our API. -> Api Documentation
Rate limit: 300 requests per minute. Once the limit is exceeded, any further requests will result in a 429 (Too Many Requests) response.
You can also supply us with files in xlsx, csv or json format. -> Example CSV
Row Name Type Example

uid

subject_origin + subject_uid + period_label + metric; Unique identifier of a single result. A result is updated in place when its period is scored again, until it is frozen; its earlier values are kept in the history.

  • auto-generated
string

installations_ts_123_victron_VRM12345_2026-06-14_ec

subject_origin

The table the subject was scored from, so a uid can be followed back to what it names.

  • auto-generated
string

installations_ts

subject_uid

The subject scored, named as the table given in subject_origin names it.

  • auto-generated
string

123_victron_VRM12345

period_type

The kind of period scored, e.g. day or quarter. A period is given by its type and the moment it starts, so that periods of different lengths sit in the one table.

  • auto-generated
enum: day, week, month, quarter, year

day

period_start

The moment the period scored starts, in UTC (a period cut on a local clock starts at that clock's midnight).

  • auto-generated
datetime

2026-06-13T22:00:00+00:00

period_label

The period scored as a person would name it. For example, it could be built from period_start and period_type via the dataworker's build_period_label utility, on the clock the period was cut on.

  • auto-generated
string

2026-Q2

is_frozen

Whether the result is final. A frozen result is no longer updated when its period is scored again, so updated_at says when it was frozen.

  • auto-generated
boolean

false

metric

The metric scored, as the program reporting it names it.

  • auto-generated
string

ec

value

What the subject scored on the metric, in unit_of_measurement.

Only period (.) decimal delimiters are supported. Do not use commas (,) — they will cause an error.

  • auto-generated
float

38400.0

increments_count

How many increments the value was counted from, where it is a count rather than a measurement. A period sums these alongside the value to score it, so that increments the subject reported nothing for are left out rather than counted as failures.

Only period (.) decimal delimiters are supported. Do not use commas (,) — they will cause an error.

  • auto-generated
integer

48

target_value

The target the value was judged against, kept as it stood when the result was scored.

Only period (.) decimal delimiters are supported. Do not use commas (,) — they will cause an error.

  • auto-generated
float

42000.0

unit_of_measurement

Unit of measurement for the metric being tracked, such as kWh, number of connections, etc.

  • auto-generated
string

number

target_uid

The uid of the data_targets row the target came from, so a result can be traced to the target in force when it was scored, whatever happened to targets since.

  • auto-generated
string

123_c782c9d4731f26d3d040d6a4a24ebd66

result

Whether the value met its target (ok), nearly did (warn) or did not (fail). Null where the metric is not scored on its own, being assessed over a longer period instead.

  • auto-generated
enum: ok, warn, fail

ok

readings

How many readings the value was taken from, which says how much of the period the subject actually reported for.

Only period (.) decimal delimiters are supported. Do not use commas (,) — they will cause an error.

  • auto-generated
integer

96

created_at

Timestamp when row was inserted

  • auto-generated
datetime

2021-05-03 6:23:55

updated_at

Timestamp when row was updated

  • auto-generated
datetime

2021-05-03 6:23:55

source_id

References Source of data

  • auto-generated
integer

1

import_id

References Import of data

  • auto-generated
integer

1

organization_id

References Organization of data

  • auto-generated
integer

1

custom

Saves additional imported data out of standard structure

  • auto-generated
jsonb

{ "some": "key" }

data_origin

Origin of the data, generic or name of the api

  • auto-generated
string

generic

last_import_id

Id of the last import which updated the record

  • auto-generated
integer

337

last_source_id

Id of the last Source which updated the record

  • auto-generated
integer

33

Progress