Files
harheimertc/ANDROID_REPO_ENDPOINTS.md
Torsten Schulz (local) 8e318b0b52
Some checks failed
Code Analysis and Production Deploy / analyze (push) Failing after 3m13s
Code Analysis and Production Deploy / deploy-production (push) Has been skipped
Code Analysis and Production Deploy / deploy-test (push) Has been skipped
feat(android): initial project setup with Gradle, AndroidManifest, and MainActivity
2026-05-26 16:39:10 +02:00

58 lines
2.4 KiB
Markdown

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.js` verwendet `/api/auth/status` to check login state and `passkeyLogin()` which calls `/api/auth/passkeys/*`.
- Passkeys-Flow verwendet `@simplewebauthn/browser` on 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).