Skip to content

Metadata

Measurement Locations

Stored in the config/locations.json file, or in a GitHub repository.

Reference

root (array)

Key Schema:

# (object)

location_id * (string)

Your internal location ID identifying a specific location. Allowed values: letters, numbers, dashes, underscores.

Regex Pattern: "^[a-zA-Z0-9_-]+$"

Min. Length: 1

Max. Length: 128

details (string)

Min. Length: 0

Default: ""

lon * (number)

Minimum: -180

Maximum: 180

lat * (number)

Minimum: -90

Maximum: 90

alt * (number)

Minimum: -20

Maximum: 10000

Example

[
{
"location_id": "lid1",
"details": "description of location 1",
"lon": 10.5,
"lat": 48.1,
"alt": 500.0
},
{
"location_id": "lid2",
"details": "description of location 2",
"lon": 11.3,
"lat": 48.0,
"alt": 600.0
}
]

Sensor Deployments

Stored in the config/sensors.json file, or in a GitHub repository.

Reference

root (array)

Key Schema:

# (object)

Metadata for a single sensor.

sensor_id * (string)

Your internal sensor ID identifying a specific EM27/SUN (system). Allowed characters: letters, numbers, dashes, underscores.

Regex Pattern: "^[a-zA-Z0-9_-]+$"

Min. Length: 1

Max. Length: 128

serial_number * (integer)

Serial number of the EM27/SUN

Minimum: 1

setups * (array)

Min. Items: 0

Key Schema:

# (object)

An element in the `sensor.setups` list

from_datetime * (string)

to_datetime * (string)

value * (object)

location_id * (string)

Location ID referring to a location named in `locations.json`

Min. Length: 1

pressure_data_source (union)

Pressure data source, if not set, using the pressure of the sensor

Default: null

Options:

#1 (string)

Min. Length: 1

#2 (null)

utc_offset (number)

UTC offset of the location, if not set, using an offset of 0

Default: 0

atmospheric_profile_location_id (union)

Location ID referring to a location named in `locations.json`. This location's coordinates are used for the atmospheric profiles in the retrieval.

Default: null

Options:

#1 (string)

Min. Length: 1

#2 (null)

calibration_factors (array)

Default: []

Key Schema:

Example

[
{
"sensor_id": "sid1",
"serial_number": 50,
"setups": [
{
"from_datetime": "2020-08-22T00:00:00+00:00",
"to_datetime": "2020-08-25T23:59:59+00:00",
"value": {
"location_id": "lid1",
"pressure_data_source": "LMU-MIM01-height-adjusted",
"utc_offset": 2.0,
"atmospheric_profile_location_id": "lid2"
}
},
{
"from_datetime": "2020-08-26T00:00:00+00:00",
"to_datetime": "2020-08-30T23:59:59+00:00",
"value": {
"location_id": "lid1",
"pressure_data_source": "LMU-MIM01-height-adjusted",
"utc_offset": 2.0,
"atmospheric_profile_location_id": null
}
},
{
"from_datetime": "2020-08-31T00:00:00+00:00",
"to_datetime": "2020-09-26T23:59:59+00:00",
"value": {
"location_id": "lid1",
"pressure_data_source": null,
"utc_offset": 2.0,
"atmospheric_profile_location_id": null
}
},
{
"from_datetime": "2020-09-27T00:00:00+00:00",
"to_datetime": "2020-10-01T23:59:59+00:00",
"value": {
"location_id": "lid2",
"pressure_data_source": null,
"utc_offset": 0.0,
"atmospheric_profile_location_id": null
}
}
]
},
{
"sensor_id": "sid2",
"serial_number": 51,
"setups": [
{
"from_datetime": "2020-08-26T00:00:00+00:00",
"to_datetime": "2020-10-01T23:59:59+00:00",
"value": {
"location_id": "lid1",
"pressure_data_source": null,
"utc_offset": 0.0,
"atmospheric_profile_location_id": null
}
}
]
}
]

Measurement Campaigns

Can be used to group measurements together, e.g. “Hamburg Campaign”. The campaigns will be included in the dataset bundles in the column campaign_ids.

Stored in the config/campaigns.json file, or in a GitHub repository.

Reference

root (array)

Default: []

Key Schema:

# (object)

from_datetime * (string)

to_datetime * (string)

campaign_id * (string)

Your internal sensor ID identifying a specific campaign. Allowed values: letters, numbers, dashes, underscores.

Regex Pattern: "^[a-zA-Z0-9_-]+$"

Min. Length: 1

Max. Length: 128

sensor_ids * (array)

Key Schema:

# (string)

location_ids * (array)

Key Schema:

# (string)

Example

[
{
"from_datetime": "2019-09-13T00:00:00+00:00",
"to_datetime": "2100-01-01T23:59:59+00:00",
"campaign_id": "cid1",
"sensor_ids": [
"sid1",
"sid2"
],
"location_ids": [
"lid1",
"lid2"
]
}
]

Events

Can be used to mark special events during measurements, e.g. “Testing New Solar Tracker”. You can mark that the data during an event should not be used in downstream tasks. The dataset bundles will include the columns event_description and event_data_quality_flag (0 = good data, 1 = should not be used because of an event).

Stored in the config/events.json file, or in a GitHub repository.

Reference

root (array)

Key Schema:

# (object)

from_datetime * (string)

to_datetime * (string)

sensor_ids * (array)

List of sensor IDs involved in the event

Min. Items: 1

Key Schema:

# (string)

description * (string)

Description of the event

Min. Length: 1

data_is_usable * (boolean)

Indicates if the data recorded during the event is usable for downstream analysis

Example

[
{
"from_datetime": "2024-06-24T10:30:00+00:00",
"to_datetime": "2024-06-24T11:29:59+00:00",
"sensor_ids": [
"sid1",
"sid2"
],
"description": "Mirror Change - Sensors have to be recalibrated",
"data_is_usable": false
},
{
"from_datetime": "2025-08-24T10:30:00+00:00",
"to_datetime": "2025-08-24T17:29:59+00:00",
"sensor_ids": [
"sid1"
],
"description": "ILS Measurements",
"data_is_usable": false
}
]