API für gesicherten automatisierten Datei-Upload

Eine robuste und gesicherte API für den Datei-Upload ist ein zentraler Baustein, um einen AI Bot kontinuierlich und automatisiert mit neuen Inhalten zu versorgen. Diese Schnittstelle ermöglicht es, Dokumente (z.B. PDFs, Textdateien, CSVs) direkt in das Backend hochzuladen, wo sie anschließend automatisch verarbeitet und in die Wissensdatenbank des Chatbots importiert werden.

Absicherung durch JSON Web Token (JWT)

Um sicherzustellen, dass nur autorisierte und authentifizierte Systeme oder Benutzer Inhalte hochladen können, wird die API durch JSON Web Token (JWT) abgesichert.

  • Authentifizierung: Bevor ein Upload stattfinden kann, muss der Client ein gültiges JWT im Header der Anfrage (üblicherweise im Authorization: Bearer <token>-Feld) mitsenden.
  • Autorisierung: Die API validiert das erhaltene Token (Prüfung der Signatur, des Ablaufsdatums und der Claims). Nur wenn das Token gültig ist und die erforderlichen Berechtigungen (Scopes) für den Upload besitzt, wird die Anfrage akzeptiert.
  • Vorteile: JWTs bieten eine zustandslose (stateless) und skalierbare Lösung, da die Autorisierungsinformationen direkt im Token enthalten sind und keine serverseitige Session-Prüfung bei jeder Anfrage notwendig ist.
     

Funktionalität des automatisierten Imports. 

Nach dem erfolgreichen und gesicherten Upload der Datei übernimmt die Backend-Logik den weiteren Prozess:

  • Speicherung und Validierung: Die Datei wird temporär gespeichert und auf Dateityp, Größe und Integrität geprüft.
  • Parsing und Extraktion: Die Inhalte der hochgeladenen Dokumente werden strukturiert ausgelesen (z.B. Text aus einer PDF extrahiert, Zeilen und Spalten aus einer CSV analysiert).
  • Transformation: Die rohen Daten werden in ein RAG Format transformiert. Dies umfasst die Umwandlung der Information in kleinere Blöcke (Chunks), die Normalisierung von Metadaten und die Erstellung von Vektordarstellungen (Embeddings).
  • Datenbank-Import: Die aufbereiteten Daten werden in die RAG Datenbank des AI Bots  eingefügt.
     

Dieser automatisierte Workflow stellt sicher, dass der AI Bot stets mit den aktuellsten Informationen arbeitet, ohne dass ein manueller Eingriff zur Datenpflege erforderlich ist. Die JWT-Absicherung garantiert dabei die notwendige Sicherheit und Vertrauenswürdigkeit der Datenquelle.