Files
diarization-ui/doc/api.md

3.6 KiB

HTTP-API

Alle Endpunkte werden von app.py bereitgestellt. HTML-Seiten geben text/html zurück; Daten-Endpunkte geben JSON zurück.

PWA / System

Methode Pfad Beschreibung
GET / Upload-Seite
GET /manifest.webmanifest PWA-Manifest
GET /icon.svg App-Icon
GET /sw.js Service Worker
GET /healthz Statuscheck (JSON): API_BASE, OLLAMA_BASE_URL, Modell, DB-Pfad

Einstellungen

Methode Pfad Beschreibung
GET /settings Einstellungsseite
POST /settings Einstellungen speichern
GET /settings/models Verfügbare Ollama-Modelle laden (JSON)

GET /settings/models Response

{ "ok": true, "models": ["llama3.2:3b", "qwen3.5:9b", ...] }
{ "ok": false, "error": "...", "models": [] }

Projekte

Methode Pfad Beschreibung
POST /projects Projekt anlegen (Form: name)
POST /projects/update Projekt umbenennen (Form: id, name)
POST /projects/{id}/delete Projekt löschen (Dokumente → Default)
POST /projects/create-api Projekt anlegen, gibt JSON zurück (für JS-Upload-Flow)

Upload

Methode Pfad Beschreibung
POST /upload Audio-/Videodatei hochladen (Form: project_id, file); legt Upload-Job an

Library / Dokumente

Methode Pfad Beschreibung
GET /library Dokumentenliste (Query: project_id, q_title, q_content)
GET /document/{id} Dokument anzeigen
GET /document/{id}/download.md Dokument als Markdown herunterladen
POST /document/{id}/edit Inhalt bearbeiten (Form: content_md)
POST /document/{id}/rename Umbenennen (Form: title)
POST /document/{id}/move Projekt wechseln (Form: project_id)
POST /document/{id}/delete Dokument löschen
POST /documents/bulk-move Mehrere Dokumente verschieben (Form: ids[], project_id)
POST /documents/bulk-delete Mehrere Dokumente löschen (Form: ids[])

Prompts & Projekte

Methode Pfad Beschreibung
GET /prompts Prompts- und Projektverwaltung
GET /prompts/{id}/preview Prompt-Vorschau (JSON: {html})
POST /prompts/add Prompt anlegen (Form: name, prompt)
POST /prompts/update Prompt speichern inkl. KI-Einstellungen (siehe unten)
POST /prompts/{id}/delete Prompt löschen

POST /prompts/update Felder

Feld Typ Beschreibung
id int Prompt-ID
name str Name
prompt str Prompttext
llm_use_default int 1 = globale KI-Einstellungen, 0 = promptspezifisch
llm_model str? Modellname
llm_think str? "true" / "false"
llm_num_ctx str? Kontextgröße oder "auto"
llm_num_predict str? Max. Tokens
llm_repeat_penalty str?
llm_repeat_last_n str?

Hintergrundjobs

Methode Pfad Beschreibung
GET /jobs Job-Übersicht (HTML)
GET /jobs/data Job-Liste als JSON (Query: limit=200)
GET /jobs/{id}/debug-data Detail-Daten eines Jobs (JSON)
POST /jobs/{id}/cancel Job abbrechen (JSON-Response)
POST /jobs/{id}/cancel-form Job abbrechen (Redirect)
POST /jobs/{id}/delete Job löschen (JSON-Response)
POST /jobs/{id}/delete-form Job löschen (Redirect)

Prompt ausführen

Methode Pfad Beschreibung
GET /run Formular: Prompt auf Dokument(e) anwenden
POST /run Analyse-Job(s) starten
POST /run/project Analyse-Job für alle Transkripte eines Projekts starten