Home App-Wiki API-Wiki News Über uns Video-Demo Savings Hebel Preise Login Registrieren

Alice API-Dokumentation

Welcome to the current Alice API documentation. Only actively supported endpoints are documented here for this release.

Authentifizierung

Alle API-Anfragen müssen mit den API-Zugangsdaten Ihrer Organisation authentifiziert werden. Sie können diese Keys im Organisations-Admin-Panel generieren.

Header

Fügen Sie jeder Anfrage die folgenden Header bei:

Header Beschreibung Beispiel
X-API-KEY Ihr öffentlicher Access Key ak_a1b2c3d4...
X-API-SECRET Ihr privater Secret Key sk_9z8y7x6w...

GET /api/external/test/

Testen Sie Ihre Authentifizierungsdaten und rufen Sie Basis-Organisationsinfos ab.

Antwort-Beispiel
{
  "message": "Authentication successful",
  "organization": "Acme Corp",
  "tier": "Enterprise"
}

GET /api/v1/rows/

Rufen Sie eine paginierte Liste aller gespeicherten Zeilen (Insights) Ihrer Organisation ab.

Parameter
Parameter Typ Beschreibung
page integer Seitennummer (Standard: 1)
q string Suchanfrage (filtert Anbieter, Thema, Inhalt, Bewertung, Quelle etc.)
Antwort-Beispiel
{
  "rows": [
    {
      "id": 123,
      "anbieter": "Microsoft",
      "thema": "Licensing Update",
      "date": "2025-10-15",
      "created_by": "john.doe"
    }
  ],
  "count": 50,
  "has_next": true,
  "next_page": 2
}

GET /api/v1/rows/<id>/

Rufen Sie vollständige Details ab, einschließlich KI-Analyse und spezifischer Felder wie kommerzieller Bewertung und Quellenpassagen.

Antwort-Beispiel
{
  "id": 123,
  "anbieter": "Microsoft",
  "thema": "Licensing Update",
  "eindeutige_id": "MSG-2025-001",
  "bewertung_kommerziell": "High Impact",
  "vorteil_nachteil_detail": "Price increase of 15% effective next year.",
  "datum_kommunikation": "2025-10-01",
  "datum_inkrafttretens": "2026-01-01",
  "quellenpassus": "Source: Official Blog Post...",
  "details_markdown": "## Detailed Analysis...",
  "enhanced_information": "## AI Summary...",
  "created_at": "2025-10-15T10:30:00Z",
  "created_by": "john.doe"
}

PUT / PATCH /api/v1/rows/<id>/

Aktualisieren Sie den Inhalt einer Zeile. Alle Felder sind optional (Partial Update).

Payload (JSON)
Feld Typ Beschreibung
anbieter string Provider name (e.g. "SAP")
thema string Kurzes Thema oder Betreff
eindeutige_id string Unique Identifier (e.g. "ID-123")
bewertung_kommerziell string Commercial rating (e.g. "Neutral", "Critical")
vorteil_nachteil_detail string Detaillierte Beschreibung von Vor-/Nachteilen
datum_kommunikation string Datum der Kommunikation
datum_inkrafttretens string Datum des Inkrafttretens
quellenpassus string Quelltext oder Auszug
details_markdown string Vollständiger Inhalt im Markdown-Format
Antwort-Beispiel
{
  "message": "Row updated",
  "id": 123
}

DELETE /api/v1/rows/<id>/

Eine spezifische Zeile dauerhaft löschen.

Antwort-Beispiel
{
  "message": "Row deleted successfully"
}

POST /api/request/

Starten Sie eine Chat-Anfrage asynchron. Der Endpunkt antwortet sofort mit Konversations- und Chat-Sitzungs-IDs. Nutzen Sie den Status-Endpunkt für das Polling, bis die Antwort fertiggestellt ist.

Payload
Feld Typ Beschreibung
prompt string Erforderlich. Die Anweisung oder Frage des Benutzers.
context_row_ids array[int] Liste von Zeilen-IDs, die der KI als Kontext mitgegeben werden sollen.
model_type string 'standard' oder 'pro' (Standard: 'standard')
chat_session_id int Optional. Vorhandene Chat-Sitzung wiederverwenden. Wenn nicht angegeben, erstellt ALICE eine neue Sitzung.
Antwort-Beispiel
{
    "status": "started",
    "conversation_id": 731,
    "chat_session_id": 88,
    "estimated_duration_seconds": 65,
    "message": "Analyse läuft im Hintergrund..."
}
Polling-Endpunkt

GET /api/task_status/<conversation_id>/

Beispiel für abgeschlossene Antwort
{
    "status": "completed",
    "id": 731,
    "chat_session_id": 88,
    "response": "Hier ist die Analyse...",
    "sources": [],
    "new_rows": [],
    "token_balance": 120,
    "tokens_used": 5,
    "is_question": false
}

GET /api/chats/list/

Gibt eine kompakte Liste der letzten Chat-Sitzungen des aktuellen Benutzers zurück.

Antwort-Beispiel
{
    "sessions": [
        {
            "id": 88,
            "title": "Lieferantenrisiken Q1",
            "updated_at": "2026-03-09T09:40:00Z",
            "messages_count": 6,
            "latest_prompt": "Welche Risiken siehst du ..."
        }
    ]
}

GET /api/chats/<session_id>/

Lädt den vollständigen Nachrichtenverlauf für eine Chat-Sitzung.

Antwort-Beispiel
{
    "ok": true,
    "session": {"id": 88, "title": "Lieferantenrisiken Q1"},
    "messages": [
        {"role": "user", "content": "Frage 1", "id": 731},
        {"role": "assistant", "content": "Antwort 1", "id": 731, "sources": []}
    ]
}

POST /api/sentinel/create/

Creates a new "Sentinel" routine based on an existing row. This sets up a recurring automated check (monthly) for the supplier or topic in the specified row.

Payload (JSON)
Feld Typ Beschreibung
row_id int Erforderlich. Die ID der Zeile, auf der der Sentinel basieren soll.
Antwort-Beispiel
{
  "status": "ok",
  "routine_id": 42
}

SESSION AUTH Workflow-API

Workflow-Endpunkte sind für angemeldete Benutzer über die Browser-Sitzung verfügbar (nicht über X-API-KEY/X-API-SECRET).

Methode Endpunkt Beschreibung
GET /api/workflows/list/ Gibt die Workflow-Liste zurück, einschließlich KPIs und Kartendaten.
GET /api/workflows/create/context/ Gibt den Erstellungskontext zurück (Mitgliedschaften, Standards, Hilfsmetadaten).
POST /api/workflows/create/ Erstellt eine neue Workflow-Definition aus dem API-Payload.
GET /api/workflows/<workflow_id>/payload/ Gibt Details für einen Workflow zurück (Karten, Durchläufe, Metadaten).
POST /workflows/<workflow_id>/start/ Startet einen Workflow-Durchlauf (tokenbasiert; nutzt konfigurierte Deep-Dive-Kosten).
GET /api/workflows/runs/<run_id>/status/ Gibt den Live-Status des Durchlaufs für das Polling zurück.
GET /api/workflows/runs/<run_id>/payload/ Gibt den vollständigen Durchlauf-Payload zurück, inklusive Karten und Berichtsdaten.