1
API
chinux edited this page 2026-05-30 18:31:16 +00:00
API
Basis-Pfad: /api. Alle Endpunkte (außer /api/health) erfordern einen gültigen OIDC-Bearer-Token
im Authorization-Header.
GET /api/health
Healthcheck. Antwort: {"status":"ok"}.
POST /api/process
Audio hochladen, transkribieren und parsen. Schreibt nichts.
- Body:
multipart/form-datamit Feldfile(Audio: webm/ogg/mp4/mp3/wav). - Antwort:
{ "transcript": "...", "parsed": { ...Item } }
POST /api/parse
Getippten Text parsen (ohne Whisper). Schreibt nichts.
- Body:
{ "text": "Freitag 9 Uhr Backup-Check" } - Antwort:
{ "transcript": "...", "parsed": { ...Item } }
POST /api/confirm
Bestätigtes Item in die Nextcloud schreiben.
- Body:
{ "item": { ...Item } } - Antwort:
{ "uid": "...", "href": "..." }
GET /api/settings
Aktives LLM-Modell. Antwort: { "model": "...", "default": "..." }
PUT /api/settings
Modell setzen. Body: { "model": "meta-llama/llama-3.1-8b-instruct" }. Antwort wie GET.
Item-Struktur
{
"kind": "event | task",
"title": "string",
"description": "string",
"location": "string",
"all_day": true,
"start": "YYYY-MM-DDTHH:MM:SS | null",
"end": "YYYY-MM-DDTHH:MM:SS | null"
}
kind=event→ wird als VEVENT geschrieben,kind=task→ als VTODO.- Bei Aufgaben ist
startdie Fälligkeit (optional).