Alice API-Dokumentation
Welcome to the current Alice API documentation. Only actively supported endpoints are documented here for this release.
https://<your-domain>/alice/ | Local: http://localhost:8000/alice/
X-API-KEY + X-API-SECRET. Einige Produkt-Endpunkte (z. B. Workflows, Sentinel-Erstellung) sind sitzungsauthentifiziert und erfordern einen angemeldeten Benutzer.
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.
{
"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.) |
{
"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.
{
"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 |
{
"message": "Row updated",
"id": 123
}
DELETE
/api/v1/rows/<id>/
Eine spezifische Zeile dauerhaft löschen.
{
"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. |
{
"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>/
{
"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.
{
"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.
{
"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.
login_required) und derzeit nicht Teil der API-Key-geschützten externen API v1.
Payload (JSON)
| Feld | Typ | Beschreibung |
|---|---|---|
| row_id | int | Erforderlich. Die ID der Zeile, auf der der Sentinel basieren soll. |
{
"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. |