Flugring Austria Wiener Neustadt
Logbuch-System · OGN/FLARM · Seit 1950
🔒 Authentifizierung: JWT-Bearer-Token in Authorization: Bearer <token>.
Chrome Extension: X-API-Key: FRA-EXT-2024-k8mP9xQvL3nR7wY2
Basis-URL: https://frakladde.shcp.at/api
POST/api/auth/loginAnmelden → JWT
Request:
{"username":"admin","password":"FlugringAdmin2024!"}
Response:
→ {"ok":true,"data":{"token":"eyJ...","user":{...}}}
POST/api/auth/logoutAbmelden
POST/api/auth/change-passwordPasswort ändern
Request:
{"old_password":"...","new_password":"..."}
GET/api/auth/usersAlle Benutzer (nur Admin)
POST/api/auth/usersNeuen Benutzer anlegen (Admin)
Request:
{"username":"max","password":"Sicher123!","role":"editor"}
GET/api/fluege?datum=2026-03-22Tagesflüge laden
Response:
→ [{"id":1,"kz":"D-3321","startzeit":"17:04:00","schueler":"Max Muster",...}]
POST/api/fluegeEinzelflug speichern (Upsert)
Request:
{"datum":"2026-03-22","kz":"D-3321","startzeit":"17:04","landezeit":"17:10","schueler":"Max Muster"}
POST/api/fluege/bulkBulk-Import (Extension)
Request:
{"datum":"...","fluege":[{"kz":"D-3321","startzeit":"17:04",...}]}
X-API-Key: FRA-EXT-2024-k8mP9xQvL3nR7wY2
PUT/api/fluege/{id}Flug aktualisieren
Request:
{"schueler":"Anna Muster","lehrer":"M. Schima"}
DELETE/api/fluege/{id}Flug löschen (Editor+)
GET/api/personalStammdaten laden
Response:
→ [{"id":1,"typ":"fluglehrer","name":"Martin Schima",...}]
POST/api/personalStammdaten speichern
Request:
{"typ":"pilot","name":"Max Muster"}
DELETE/api/personal/{id}Stammdaten löschen
GET/api/stats?datum=2026-03-22Tagesauswertung
Response:
→ {"by_verein":[...],"by_kz":[...],"by_pilot":[...]}
GET/api/statusAPI-Status prüfen
Response:
→ {"status":"ok","version":"13","time":"..."}

📋 Changelog

v1330.03.2026Architektur-Fix: Alle Web-Seiten = reines HTML/JS (kein PHP im Web-Root). PHP nur in /api/. Login via JWT statt PHP-Session. Löst PHP-Quellcode-Problem auf Easyname Shared Hosting.
v1229.03.2026Extension vereinfacht (nur KTrax→DB), API-Key + API-Pfad-Fix.