API Quick Start
API Root
# API-Wurzel (Server-Info + Entities)
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1'
Projekte abfragen
# Alle öffentlichen Projekte mit zugehörigen Stationen
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Projects?$expand=Things'
Things abfragen
# Alle Sensoren/Stationen ($top begrenzt Ergebnis)
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Things?$top=5'
Datastreams mit Details
# Datastreams + Thing + ObservedProperty via $expand
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Datastreams?$expand=Thing,ObservedProperty&$top=3'
Neueste Observation
# Aktuellste Messung eines Datastreams (DS 14730)
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Datastreams(14730)/Observations?$top=3&$orderby=phenomenonTime desc'
Walkthrough: Rudolf Geiger Klimastation
1. Station abfragen
Die Klimastation auf dem Campus der Ruhr-Universität Bochum erfasst 58 Wetterparameter in stündlicher Auflösung.
# GET /Things(2235)
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Things(2235)'
JSON-Antwort ansehen
{
"@iot.id": 2235,
"name": "Rudolf Geiger Klimastation RUB",
"description": "Rudolf Geiger Klimastation auf dem Campus der Ruhr-Universität Bochum (RUB). 58 Wetterparameter in stündlicher Auflösung.",
"properties": {
"operator": "Geographisches Institut, Ruhr-Universität Bochum",
"elevation_m": 127,
"latitude": 51.433333,
"longitude": 7.266667,
"location_description": "Campus RUB, Gebäude NA, Dach",
"data_repository": "https://gitlab.opencode.de/StadtBochum/open-data/wetter-rudolf-geiger-klimastation",
"station_id": "RUB_BRGS"
}
}
2. Datastreams auflisten
Jeder Datastream repräsentiert einen Messkanal mit Einheit und Metadaten.
# GET /Things(2235)/Datastreams – erste 5
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Things(2235)/Datastreams?$select=name,unitOfMeasurement&$top=5'
JSON-Antwort ansehen
{
"value": [
{"name": "Absolute Luftfeuchtigkeit (Maximum) (abshum_max)", "unitOfMeasurement": {"symbol": "g/m³"}},
{"name": "Absolute Luftfeuchtigkeit (Mittel) (abshum_mean)", "unitOfMeasurement": {"symbol": "g/m³"}},
{"name": "Absolute Luftfeuchtigkeit (Minimum) (abshum_min)", "unitOfMeasurement": {"symbol": "g/m³"}},
{"name": "Albedo (Mittel) (albedo_mean)", "unitOfMeasurement": {"symbol": "-"}},
{"name": "Taupunkttemperatur (Maximum) (dew_point_temp_max)", "unitOfMeasurement": {"symbol": "°C"}}
]
}
Die Station hat insgesamt 58 Datastreams: Lufttemperatur (2m), relative Feuchte, Windgeschwindigkeit, Windrichtung, Globalstrahlung, Niederschlag, Luftdruck, Bodentemperaturen (10/20/50cm), Oberflächentemperatur u.v.m.
3. Live-Messwerte abrufen
Die neuesten stündlichen Messwerte vom 19. Juni 2026, 13:00 Uhr (MESZ):
Lufttemperatur 2m
32,6 °C
Mittelwert (temp_mean)
Relative Feuchte
36,4 %
Mittelwert (relhum_mean)
Windgeschwindigkeit
1,4 m/s
Mittelwert (windspeed_mean)
Windrichtung
230°
Mittelwert (winddirection_mean)
Luftdruck
1000 hPa
Mittelwert (pressure_mean)
Globalstrahlung
840 W/m²
Mittelwert (global_radiation_short_wave_mean)
Bodentemperatur 10cm
23,0 °C
Mittelwert (soil_temp_10_mean)
Taupunkt
15,9 °C
Mittelwert (dew_point_temp_mean)
# Live-Messwert abfragen – Lufttemperatur (DS 14767)
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Datastreams(14767)/Observations?$top=1&$orderby=phenomenonTime desc'
4. Nächste Schritte
Weitere nützliche Abfragen zum Ausprobieren:
# Projekte mit zugehörigen Stationen auflisten
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Projects?$expand=Things'
# Alle Datastreams sortiert nach Name ($orderby)
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Datastreams?$orderby=name&$top=5'
# Bestimmte Station abfragen (über @iot.id)
curl 'https://api.udp.zuber.space/context/sensorthings/public/v1.1/Things(2235)'