Wetter Bad Münder API
Die Service API stellt aktuelle Wetter- und Stationsdaten im JSON-Format bereit. Diese Dokumentation beschreibt die verfügbaren Endpoints, Authentifizierung, Rückgabeformate, Statuswerte und mögliche Meldungen der API.
https://hub.wetter-badmuender.de
Authentifizierung
Für alle geschützten Endpoints wird ein gültiger API-Key benötigt. Der API-Key muss im HTTP Header mitgesendet werden. Ein API-Key kann auf Anfrage vom Administrator ausgegeben werden.
HTTP Header
X-API-KEY: YOUR_API_KEY
Beispiel Request
GET /v1/current HTTP/1.1
Host: hub.wetter-badmuender.de
X-API-KEY: YOUR_API_KEY
API Endpoints
/health
Der Endpoint liefert den aktuellen Status der API und ihrer Dienste zurück. Er dient unter anderem für Monitoring- und Verfügbarkeitsprüfungen.
{
"success": true,
"generated_at": "2026-05-08T18:30:00+02:00",
"data": {
"status": "ok",
"http_status": 200,
"version": "v1",
"environment": "production",
"services": {
"api": {
"status": "ok"
},
"database": {
"status": "ok"
},
"cache": {
"status": "ok"
}
}
}
}
-
success
Gibt an, ob der Request erfolgreich verarbeitet wurde.-
true= Request erfolgreich -
false= Fehler bei der Verarbeitung
-
-
generated_at
Zeitpunkt der API-Generierung im ISO8601-Format. -
status
Gesamtstatus der API. Mögliche Werte:ok,maintenance,degraded -
http_status
HTTP Statuscode der Antwort. -
version
API Versionierung. -
environment
Das derzeitige Umfeld der API. -
services
Status einzelner interner Dienste.
/v1/current
Der Endpoint liefert die aktuellsten verfügbaren Wetterdaten der Wetterstation inklusive Sensordaten und Statusinformationen.
{
"success": true,
"request_id": "f1856b4209b3faba0d02ff54c1af57f8",
"generated_at": "2026-05-08T20:40:13+02:00",
"execution_time_ms": 10.46,
"data": {
"station": {
"name": "Wetter Bad Münder",
"api_version": "v1"
},
"weather": {
"temperature": {
"value": 10.8,
"unit": "°C",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"feelslike": {
"value": 10.8,
"unit": "°C",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"dewpoint": {
"value": 8,
"unit": "°C",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"humidity": {
"value": 83,
"unit": "%",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"wind": {
"speed": {
"value": 0,
"unit": "km/h",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"gust": {
"value": 0,
"unit": "km/h",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
}
},
"rain": {
"event": {
"value": 0,
"unit": "mm",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"rate": {
"value": 0,
"unit": "mm/hr",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"hourly": {
"value": 0,
"unit": "mm",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"daily": {
"value": 0,
"unit": "mm",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"weekly": {
"value": 0,
"unit": "mm",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"monthly": {
"value": 0,
"unit": "mm",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"yearly": {
"value": 0,
"unit": "mm",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
}
},
"pressure": {
"absolute": {
"value": 1005.1,
"unit": "hPa",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"relative": {
"value": 1020.3,
"unit": "hPa",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
}
},
"uvi": {
"value": 0,
"unit": "",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"solar": {
"value": 7.4,
"unit": "W/m2",
"timestamp": "2026-05-08T20:39:04+02:00",
"status": "ok"
},
"soil": {
"temperature": {
"value": 4.3,
"unit": "°C",
"timestamp": "2026-05-08T20:39:44+02:00",
"status": "ok"
},
"moisture": {
"value": 33,
"unit": "%",
"timestamp": "2026-05-08T20:39:44+02:00",
"status": "ok"
}
}
}
}
}
-
success
Gibt an, ob der Request erfolgreich verarbeitet wurde.-
true= Request erfolgreich -
false= Fehler bei der Verarbeitung
-
-
request_id
Eindeutige ID des Requests. Dient zur technischen Nachverfolgung, Analyse und Fehlerdiagnose. -
generated_at
Zeitpunkt der API-Generierung im ISO8601-Format. -
execution_time_ms
Verarbeitungszeit der API in Millisekunden. -
station.name
Name der Wetterstation, von der die Daten stammen. -
station.api_version
Version der verwendeten API. -
temperature
Aktuelle Außentemperatur. -
feelslike
Gefühlte Temperatur. -
dewpoint
Taupunkttemperatur. -
humidity
Relative Luftfeuchtigkeit. -
wind.speed
Aktuelle Windgeschwindigkeit. -
wind.gust
Aktuelle Windböe. -
rain.event
Niederschlagsmenge des aktuell laufenden Regenereignisses. Reset des Events i.d.R. sobald es längere Zeit trocken war und ein Tageswechsel nach Event-Ende erfolgt ist oder die Regenmenge innerhalb von 24h unter 1mm bleibt.-
Einheit:
mm
-
Einheit:
-
rain.rate
Aktuelle Niederschlagsrate. Der Wert gibt an, wie stark es aktuell regnet.-
Einheit:
mm/hr
-
Einheit:
-
rain.hourly
Niederschlagsmenge der vergangenen 60 Minuten.-
Einheit:
mm
-
Einheit:
-
rain.daily
Niederschlagsmenge des aktuellen Kalendertages. Von 00:00 Uhr bis jetzt.-
Einheit:
mm
-
Einheit:
-
rain.weekly
Niederschlagsmenge der aktuellen Kalenderwoche.-
Einheit:
mm
-
Einheit:
-
rain.monthly
Niederschlagsmenge des aktuellen Monats.-
Einheit:
mm
-
Einheit:
-
rain.yearly
Niederschlagsmenge des aktuellen Jahres.-
Einheit:
mm
-
Einheit:
-
pressure.absolute
Absoluter Luftdruckwert. -
pressure.relative
Relativer Luftdruck. -
uvi
Aktueller UV-Index. -
solar
Aktuelle Solarstrahlung. -
soil.temperature
Bodentemperatur. -
soil.moisture
Bodenfeuchtigkeit. -
Untergeordnete Felder
-
value
Gemessener Sensorwert. -
unit
Einheit des jeweiligen Sensorwertes. -
timestamp
Zeitpunkt der Sensorerfassung im ISO8601-Format. -
status
Status des jeweiligen Sensors.-
ok
Sensordaten aktuell und gültig. -
stale
Sensordaten veraltet.
Sensordaten älter als 15 Minuten.
Grund, z.B.: verzögerte Datenübertragung oder Wartungsarbeiten. -
offline
Keine aktuellen Sensordaten verfügbar.
Sensordaten älter als 30 Minuten.
-
-
value
Rate Limits & Berechtigungen
Jeder API-Key verfügt über individuelle Berechtigungen sowie eigene Rate-Limit-Einstellungen.
Berechtigungen definieren, auf welche API-Endpunkte ein Client zugreifen darf. Dadurch können Zugriffe gezielt auf freigegebene Ressourcen und Funktionen beschränkt werden.
Zusätzlich besitzt jeder API-Key ein individuelles Rate Limit. Die erlaubte Anzahl von Requests richtet sich unter anderem nach Nutzungsszenario, Freigabestufe und technischer Anforderung.
Im produktiven Betrieb ist die Anfragefrequenz auf maximal eine Anfrage pro Minute je Endpoint zu begrenzen, sofern keine gesonderte Freigabe oder abweichende technische Vereinbarung besteht. Hintergrund ist das Übertragungsintervall der angebundenen Wetterstationen, welche neue Messdaten standardmäßig im 60-Sekunden-Takt bereitstellen. Höhere Request-Frequenzen führen daher zu keinem zusätzlichen Datenmehrwert.
Fehlermeldungen
{
"success": false,
"error": {
"code": 401,
"message": "API key missing"
}
}
-
API key missing
Es wurde kein API-Key übermittelt. -
Invalid API key
Der API-Key ist ungültig oder existiert nicht. -
Endpoint access denied
Der API-Key besitzt keine Berechtigung für den Endpoint. -
API client blocked
Der API-Zugang wurde gesperrt. -
Endpoint not found
Der aufgerufene Endpoint existiert nicht. -
Rate limit exceeded
Das individuelle Request-Limit wurde überschritten. -
Internal server error
Interner Fehler der API. -
maintenance
Die API befindet sich derzeit im Wartungsmodus.
Fehlerantworten liefern zusätzlich einen entsprechenden HTTP Statuscode.
Support & Kontakt
Bei technischen Problemen, allgemeinen Fragen, Fehlerfällen oder API-Anfragen kann Kontakt aufgenommen werden.
info (at) wetter-badmuender.de