Die auf dieser Website zur Verfügung gestellten API gibt die Daten von einer auf dem B-Bau stehenden Wetterstation weiter. Gesammelt werden die Temperatur, der Luftdruck, die Windgeschwindigkeit und der Niederschlag
Wie die Daten angefordert werden können folgt:
Die API ist über den Endpunkt "/api" erreichbar
Die "reinen" Werte im JSON Format stehen unter /api/raw zur verfügung
Die Temperatur unter: /api/raw/temp
Der Luftdruck unter: /api/raw/pressure
Die Windgeschwindigkeit unter: /api/raw/wind_speed
Der Niederschlag unter: /api/raw/precipitation
Die Werte als Grafik in einer PNG Bilddatei stehen unter /api/graph zur verfügung
Die Temperatur unter: /api/graph/temp
Der Luftdruck unter: /api/graph/pressure
Die Windgeschwindigkeit unter: /api/graph/wind_speed
Der Niederschlag unter: /api/graph/precipitation
Bei Anfragen können Argumente eingebaut werden sie zu verfeinern. Dem ersten Argument wird ein "?" vorrangestellt, allen weiteren ein "&"
Um die Anfrage auf einen bestimmten Zeitraum zu begrenzen gibt es 3 verschiedene Möglichkeiten
Die Anfrage ohne weitere spezifizierung der Zeit, dann werden grundsätzlich die Daten des letzten Tages ausgegeben
Die Anfrage der letzen x Tage mit dem Argument "days=xd", z.B. um die Temperaturwerte der letzten 7 Tage anzufordern dann: /api/raw/temp?days=7d bzw. /api/raw/graph?days=7d
Die Anfrage, die auf einen bestimmten Zeitraum limitiert ist mit dem Argument "start=STARTDATUM&ende=ENDDATUM" mit STARTDATUM und ENDDATUM im ISO Format, z.B.: /api/raw/temp?start=2024-07-01T17:00:00&end=2024-08-01T18:00:00 bzw. /api/graph/temp?start=2024-07-01T17:00:00&end=2024-08-01T18:00:00
Bei Grafiken gibt es zusätzlich zu den unter Allgemein genannten Argumenten noch folgende weitere:
Das Argument "grid", dass die Werte "True" oder "False" (Standardwert: False) annnehmen kann um ein Koordinatengitter anzeigen zu lassen, z.B.: /api/graph/temp?grid=True
Die Argumente "ymin" und "ymax" um die Werte auf der y-Achse zu begrenzen, z.B.: /api/graph/temp?ymin=0
Das Argument "legend", dass die Werte "True" oder "False" (Standardwert: False) annehmen kann um die Legende einzublenden, z.B. /api/graph/temp?legend=True
Das Argument "resolution" (Standardwert: 100, in DPI) um die Auflösung anzugeben, z.B.: /api/graph/temp?resolution=250
Das Argument "width" (Standardwert: 10, in Inch) um die Breite anzugeben, z.B.: /api/graph/temp?width=12
Das Argument "hight" (Standardwert: 6, in Inch) um die Höhe anzugeben, z.B.: /api/graph/temp?hight=10
Das Argument "marker" (Standardwert: True) um anzugeben, ob die einzelnen Messwerte mit einem "x" markiert werden sollen, z.B. /api/graph/temp?marker=False
Natürlich können die Argumente auch miteinander verbunden werden, um z.B. die Temperatur aus dem Zeitraum vom 26.06.2024 um 20:00 Uhr und dem 29.06.2024 um 16:23 Uhr anzufragen, als Grafik ausgegeben haben will aber nur die Werte zwischen 10 und 15°C haben und das noch bei einem eingeschaltenem Gitter und Legende mit einer Auflösung von 250dpi und einer Höhe von 8 und einer Breite von 15 Inch und keinen Markern sieht die Anfrage folgendermaßen aus: /api/graph/temp?start=2024-06-26T20:00&end=2024-06-29T16:23&ymin=10&ymax=15&grid=True&legend=True&resolution=250&hight=8&width=15&marker=False