Authentifizierung & API-Key
Jeder Request an die Mähbarkeitsindex (MFI) API erfordert einen gültigen API-Key. Der Key wird entweder als Bearer Token im Authorization-Header oder als URL-Parameter übergeben.
API-Key beantragen
Die MFI API ist nicht öffentlich zugänglich. Für die Nutzung ist ein persönlicher API-Key erforderlich, der nach manueller Prüfung vergeben wird. Dieses Verfahren dient dazu, missbräuchliche Nutzung zu verhindern und einen stabilen Betrieb für alle Nutzer zu gewährleisten.
Um Zugang zu beantragen, genügt eine Registrierung über das Formular. Nach erfolgreicher Prüfung wird ein individueller API-Key bereitgestellt. Für Privatpersonen ist die Nutzung grundsätzlich kostenfrei.
Kostenlos für Privatpersonen · Manuelle Prüfung · Kein automatischer Zugang
Wichtig
API-Keys sind nicht übertragbar und dürfen nicht in öffentlich einsehbarem Code (z. B. clientseitigem JavaScript, öffentlichen GitHub-Repositories) hinterlegt werden. Jeder Key ist an einen spezifischen Nutzer gebunden.
Drei Wege, den API-Key zu übermitteln
Der API-Key kann auf drei Arten mit dem Request mitgesendet werden. Die empfohlene Methode ist der Authorization-Header.
Authorization-Header (empfohlen)
Empfohlen
Den API-Key als Bearer Token im Authorization-Header übermitteln. Dies ist die sicherste Methode, da der Key nicht in der URL erscheint.
Authorization: Bearer DEIN_API_KEY
GET-Parameter
Nur auf Anfrage
Den API-Key als URL-Parameter api_key anhängen. Diese Methode setzt voraus, dass der API-Key explizit für GET-Zugriff freigeschaltet ist. Standardmäßig sind Keys auf POST beschränkt!
GET /v1/calculate?temperature=18.5&precipitation_rate=0.0&api_key=DEIN_API_KEY
POST-Body-Parameter
Bei form-encoded POST-Requests kann der API-Key als Feld api_key im Request-Body übermittelt werden.
temperature=18.5&precipitation_rate=0.0&api_key=DEIN_API_KEY
Authentifizierung in der Praxis
Authentifizierter Request mit Bearer Token in verschiedenen Sprachen und Werkzeugen.
curl
curl -X POST https://api.maehbarkeitsindex.de/v1/calculate \
-H "Authorization: Bearer DEIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"temperature": 18.5,
"precipitation_rate": 0.0
}'
PHP (cURL)
$apiKey = 'DEIN_API_KEY';
$payload = json_encode([
'temperature' => 18.5,
'precipitation_rate'=> 0.0,
]);
$ch = curl_init('https://api.maehbarkeitsindex.de/v1/calculate');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $payload,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json',
],
]);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
echo $data['mfi']['main_status']; // OK, WARNING oder BLOCK
JavaScript (fetch)
const apiKey = 'DEIN_API_KEY';
const response = await fetch('https://api.maehbarkeitsindex.de/v1/calculate', {
method: 'POST',
headers: {
'Authorization': `Bearer ${apiKey}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
temperature: 18.5,
precipitation_rate: 0.0,
}),
});
const data = await response.json();
console.log(data.mfi.main_status); // OK, WARNING oder BLOCK
Python (requests)
import requests
api_key = 'DEIN_API_KEY'
response = requests.post(
'https://api.maehbarkeitsindex.de/v1/calculate',
headers={'Authorization': f'Bearer {api_key}'},
json={
'temperature': 18.5,
'precipitation_rate': 0.0,
}
)
data = response.json()
print(data['mfi']['main_status']) # OK, WARNING oder BLOCK
Authentifizierungsfehler
Bei fehlerhafter oder fehlender Authentifizierung antwortet die API mit einem der folgenden HTTP-Statuscodes.
| HTTP-Status | message | Ursache |
|---|---|---|
| 401 | No API key provided. | Kein API-Key im Request |
| 401 | Invalid API key. | Key existiert nicht in der Datenbank |
| 403 | API key is disabled. | Key ist gesperrt |
| 403 | Access denied. | IP-Adresse ist gesperrt |
| 405 | HTTP method not allowed. | Verwendete HTTP-Methode für diesen Key nicht erlaubt |
{
"status": "error",
"mfi": null,
"message": "Invalid API key."
}
Weiter in der Dokumentation
Implementierungstipps →
Wartungsmodus, Mähsaison und Darstellung des MFI
Endpoint /calculate →
MFI berechnen und Ergebnisdaten abrufen
Endpoint /health →
API-Status und Verfügbarkeit prüfen
Regeln & Rate Limits →
Limits, Fehlercodes und API-Richtlinien
API Changelog →
Änderungen, Releases und Breaking Changes
MFI API Tester →
API direkt im Browser testen
API FAQ & Begriffe →
Erklärung von Datenfeldern, Statuswerten, Checks und Modellkennzahlen
Fragen, Probleme oder Feedback?
Bei Fragen zur API, technischen Problemen, gefundenen Fehlern oder Verbesserungsvorschlägen – einfach Kontakt aufnehmen.
Kontakt aufnehmen →