Bugfixes (Dark Mode, Dropdown-Kontrast, IP-Suche), Lesezeichen-Ausbau (Farbe, Beschreibung, Favicon), Zuletzt-besucht, Spaeter-lesen, kombinierter Import-Export, Scanner-Reconciliation, Admin-Ueberarbeitung

This commit is contained in:
2026-07-20 07:52:38 +02:00
parent dc91a9aba9
commit 96cf29fef4
37 changed files with 1988 additions and 494 deletions

View File

@@ -199,32 +199,49 @@ POST /api/services erfordert existierende deviceId
PATCH /api/services/reorder Body: [{ id, order }, ...]
PATCH /api/services/:id
DELETE /api/services/:id
GET /api/services/export ?format=csv|xlsx|json (Default csv)
POST /api/services/import Body: { format, content: base64 }. Legt nur
neue Dienste an (Abgleich über Gerät+Port),
überschreibt/dupliziert nie Bestehendes.
GET /api/bookmarks
POST /api/bookmarks Titel/Favicon werden automatisch geladen,
falls kein displayName angegeben ist
POST /api/bookmarks Titel/Favicon/Beschreibung werden automatisch
geladen, falls nicht angegeben
PATCH /api/bookmarks/reorder Body: [{ id, order }, ...]
PATCH /api/bookmarks/:id
DELETE /api/bookmarks/:id
GET /api/categories
POST /api/categories
POST /api/categories optional color (Hex, z. B. "#3b82f6")
PATCH /api/categories/reorder Body: [{ id, order }, ...]
PATCH /api/categories/:id Umbenennen (aktualisiert automatisch alle Dienste mit altem Namen)
DELETE /api/categories/:id Dienste behalten ihre category nicht mehr (null),
werden aber nicht gelöscht
POST /api/scan/devices/:id Netzwerk-Scan für ein Gerät (DNS, Ports, Titel,
Favicon, Softwareerkennung); legt/aktualisiert Dienste
POST /api/scan/fritzbox Liest Geräteliste der FritzBox per TR-064
(erfordert FRITZBOX_HOST/USERNAME/PASSWORD)
POST /api/scan/devices/:id Netzwerk-Scan für ein Gerät; Antwort enthält
zusätzlich staleServices (nicht mehr gefundene
Dienste, werden NICHT automatisch gelöscht)
POST /api/scan/fritzbox Liest Geräteliste der FritzBox per TR-064;
Antwort enthält zusätzlich staleDevices
GET /api/logs optional ?limit= (Default 100, Max 500)
GET /api/transfer/export ?format=csv|xlsx|json (Default csv). Geräte
UND Dienste in einer Datei, Spalte "type"
unterscheidet die Zeilen.
POST /api/transfer/import Body: { format, content: base64 }. Legt nur
neue Geräte/Dienste an, überschreibt/
dupliziert nie Bestehendes.
GET /api/recent-visits optional ?limit=
POST /api/recent-visits Body: { itemType: "service"|"bookmark", itemId }
DELETE /api/recent-visits
GET /api/settings
PATCH /api/settings Body: { recentVisitsLimit }
GET /api/read-later
POST /api/read-later Titel/Favicon werden automatisch geladen
PATCH /api/read-later/:id
DELETE /api/read-later/:id
POST /api/read-later/:id/promote verschiebt zu Lesezeichen (als Favorit)
POST /api/reset Löscht ALLE Geräte + Dienste (Cascade). Erfordert
Body { "confirm": true }, sonst 400.