Interaktive API-Dokumentation
Alle Python-Dienste bieten eine Swagger-UI zum Erkunden und Testen:| Dienst | Swagger-UI-URL | OpenAPI-JSON |
|---|---|---|
| RAG | http://localhost:8001/docs | http://localhost:8001/openapi.json |
| Crawler | http://localhost:8002/docs | http://localhost:8002/openapi.json |
RAG-API
Die RAG-API übernimmt Dokumenten-Indizierung und -Suche. Sie ist die Engine hinter der Wissensdatenbank.Ein Dokument hochladen
sync=true, um auf ihren Abschluss zu warten, bevor die Antwort zurückkehrt.
Dokumenten-Status prüfen
queued, running, completed, failed.
In der Wissensdatenbank suchen
file_ids ist Pflicht und beschränkt die Suche auf bestimmte Dokumente.
Ein Dokument löschen
Dokument-Inhalt lesen
Dokumente vergleichen
Crawler-API
Eine Website zum Crawling registrieren
scan_interval ist in Sekunden. Minimum: 60.
Seiteninhalt abrufen
Website-Info
Website deregistrieren
Website-URLs auflisten
Platform-API
Der Platform-Dienst bietet eine öffentliche API unter/api/v1/* für programmatischen Zugriff auf deine Daten. Authentifiziere dich mit einem API-Schlüssel aus Einstellungen > API-Schlüssel.
OpenAI-kompatible Chat-Completions
Die Plattform bietet ein Interface, das vollständig kompatibel mit der OpenAI Chat Completions API ist. Jeder Client oder jedes SDK, das OpenAI unterstützt (Python, Node, curl, LiteLLM etc.), kann perbase_url auf deine Tale-Instanz zeigen.
Quick Start
Authentifizierung
Alle Requests brauchen ein Bearer-Token imAuthorization-Header:
Header
| Header | Pflicht | Beschreibung |
|---|---|---|
Authorization | Ja | Bearer <api-key>. |
X-Organization-Slug | Nein | Organisations-Slug. Wird automatisch aufgelöst, wenn der Nutzer nur in einer Organisation ist. |
X-Thread-Id | Nein | Einen Konversations-Thread über Requests hinweg wiederverwenden. |
Endpoints
POST /api/v1/chat/completions
Sendet eine Chat-Nachricht und erhält eine Antwort. Unterstützt Streaming und Tool-Calling. Request-Body:| Feld | Typ | Beschreibung |
|---|---|---|
model | string | Pflicht. Agent-Slug (z. B. chat-agent). |
messages | array | Pflicht. Konversations-Nachrichten mit role und content. |
stream | boolean | SSE-Streaming aktivieren. Standard: false. |
temperature | number | Sampling-Temperatur (0–2). |
max_tokens | number | maximale Tokens zum Erzeugen. |
top_p | number | Nucleus-Sampling-Parameter. |
frequency_penalty | number | wiederholte Tokens bestrafen. |
presence_penalty | number | bereits vorhandene Tokens bestrafen. |
stop | string oder array | Stopp-Sequenzen. |
response_format | object | {"type": "json_object"} für JSON-Modus. |
tools | array | Tool-Definitionen für Client-seitiges Tool-Calling. |
tool_choice | string oder object | "auto", "required", "none" oder {"type":"function","function":{"name":"..."}}. |
- Agent-Modus (ohne
tools): Der Agent nutzt seine vorkonfigurierten Server-Tools (RAG, Web-Suche etc.) und führt sie automatisch aus. Die Antwort enthält den Finaltext. - Client-Tool-Modus (
toolsübergeben): Nur die client-definierten Tools sind verfügbar. Das Modell lieferttool_callszur Ausführung durch den Client. Die Ergebnisse sendest du perrole: "tool"-Nachrichten zurück.