2.4 KiB
2.4 KiB
Repo API Endpoints — Übersicht
Hinweis: Viele Frontend-Requests verwenden relative Pfade (/api/...) und Nuxt's NUXT_PUBLIC_BASE_URL.
Öffentliche/Frontend-Endpunkte (häufig genutzt):
- GET /api/config
- GET /api/news-public
- GET /api/news
- GET /api/termine
- GET /api/spielplaene
- GET /api/spielplan
- GET /api/mannschaften
- GET /api/galerie
- GET /api/media/galerie/{id}
- GET /api/personen/{filename}?width=...&height=...
- POST /api/contact
- POST /api/news (CMS)
Galerie / Media:
- POST /api/galerie/upload
- GET /api/galerie/list
- GET /api/galerie/[id]
- DELETE /api/galerie/[id]
Authentifizierung:
- POST /api/auth/login
- POST /api/auth/logout
- POST /api/auth/register
- POST /api/auth/reset-password
- GET /api/auth/status
- POST /api/auth/passkeys/authentication-options (Passkeys start: server returns WebAuthn options)
- POST /api/auth/passkeys/login (Passkeys finish: credential verification)
CMS / geschützte Endpunkte (erfordern Auth):
- GET /api/cms/* (z.B. /api/cms/users/list, /api/cms/contact-requests)
- POST /api/cms/save-csv
- POST /api/cms/upload-spielplan-pdf
- POST /api/cms/satzung-upload
- POST /api/members, DELETE /api/members, POST /api/members/bulk
- POST /api/membership/update-status
- POST /api/termine-manage, DELETE /api/termine-manage, GET /api/termine-manage
Weitere (Datei-Uploads, Personen):
- POST /api/personen/upload
- GET /api/app/version
- Various CMS-specific routes under /api/cms
Auth-Anforderungen & Hinweise:
- Frontend nutzt
$fetch('/api/...')(Nuxt) — serverseitig vermutlich Session-Cookie oder JWT. stores/auth.jsverwendet/api/auth/statusto check login state andpasskeyLogin()which calls/api/auth/passkeys/*.- Passkeys-Flow verwendet
@simplewebauthn/browseron web; Android port should support FIDO2 / Passkeys (Google Passkeys API) or provide password fallback. - CMS- und Manage-Endpunkte require authentication and role checks (admin/vorstand etc.).
Empfehlung für Android-Client:
- Nutze Retrofit/OkHttp mit anpassbarem Auth-Interceptor (Cookie-jar or token storage). Prüfe, ob Server bevorzugt Cookies (then use CookieJar) or JWT Authorization header.
- Implementiere Passkeys via Android FIDO2 / Passkeys APIs as optional fast-login path; for servers expecting WebAuthn payloads adapt encoding accordingly.
Datei automatisch erzeugt — wenn du möchtest, kann ich nun alle Dateien in public/ und assets/ auflisten und exportieren (Bilder, Fonts, PDFs).