Skip to content

Data format

Batch data format is being used with webhook and mqtt if Batch Mode is selected.

v0.2.0

{
  "version": "0.2.0",
  "payload": {
    "timestamp": "2024-09-12T15:06:23+02:00",
    "readouts": {
      "electricity": [
        {
          "uuid": "RDNP3kXyncj8YIt2wS7G8",
          "what": "active",
          "timestamp": "2024-09-12T15:06:23+02:00",
          "value": 1.23
        }
      ],
      "gas": [
        {
          "uuid": "8YIt2wS7G8RDNP3kXyncj",
          "timestamp": "2024-09-12T15:07:23+02:00",
          "value": 2.34
        }
      ],
      "water": [
        {
          "uuid": "Xyncj8YIt2wS7G8RDNP3k",
          "timestamp": "2024-09-12T15:08:23+02:00",
          "value": 3.45
        }
      ],
      "heat": [
        {
          "uuid": "t2wS7G8RDNP3kXyncj8YI",
          "timestamp": "2024-09-12T15:09:23+02:00",
          "value": 4.56
        }
      ]
    }
  }
}

On every scheduled or manual readout all readouts will sent with chosen api, but in order to reduce size they might be split to multiple messages.

fields

Field Description
version Refers to data structure version, can be used for determining how to parse payload.
payload.timestamp Identifies batch creation time. Multiple messages with the same root timestamp can be treated as one (after concatenation).
payload.readouts Contains readouts from different media. payload.readouts.electricity are arrays containing zero or more readouts.
Number of readouts in the array depends on splitting the batch into smaller chunks.
payload.readouts.<medium>.uuid Is actually nanoid.
payload.readouts.<medium>.timestamp Time when the readout was taken.
payload.readouts.<medium>.value Float value.
payload.readouts.electricity.what active or reactive.