Auf dieser SeiteRessourcen für KI
  1. Ressourcen für KI
  2. Das Token eines angemeldeten Nutzers
  3. Was die API abdeckt
  4. Die Form einer Anfrage
  5. Endpunkte
  6. Dokumente importieren
  7. POST /ingest
  8. GET /jobs/{job_id}
  9. Suchen und Fragen
  10. POST /search
  11. POST /ask
  12. Ordner und ihr Inhalt
  13. GET /folders/summary
  14. GET /folders
  15. GET /folders/{id}
  16. GET /documents
  17. Dokumente lesen
  18. GET /documents/{id}
  19. POST /documents/batch
  20. GET /documents/{id}/content
  21. GET /documents/{id}/tags
  22. Wenn ein Aufruf fehlschlägt
  23. Sie möchten frühen Zugang zur API?

API-Referenz

Jeder öffentliche Endpunkt an einem Ort

Die Endpunkte, die die Hippocampus-Web-App für Import, Suche, Antworten und Lesen nutzt, mit ihren Feldern, Streaming, Jobs und Fehlern.

Beta: Felder können sich vor der allgemeinen Verfügbarkeit noch ändern.

Ressourcen für KI

  • Coding-Agent

    Ihr Coding-Agent (Claude, Cursor, Codex oder ein anderer) liest unsere Skill-Datei und richtet Hippocampus selbstständig in Ihrem Projekt ein.

  • API-Clients

    Ihr API-Client (Postman, Insomnia oder Bruno) importiert jede Anfrage mit Beispielantworten; führen Sie zuerst Sign in aus, und das Token wird für Sie gesetzt.

  • OpenAPI 3.1

    Client-Generatoren, Swagger UI und andere API-Tools lesen jeden Endpunkt aus dieser Datei, im Standardformat.

  • Chat-Assistenten

    Ihr Chat-Assistent (ChatGPT, Claude oder Gemini) beantwortet Fragen zur API aus unserer Doku, alles in einer Datei.

Authentifizierung

Das Token eines angemeldeten Nutzers

Jede Anfrage trägt einen Authorization: Bearer <token>-Header. Das Token ist das ID-Token eines angemeldeten Hippocampus-Nutzers und gilt etwa eine Stunde; ein Skript erneuert es also so, wie es jede Anmeldung tut. Ein Aufruf erreicht nur, was dieser Nutzer lesen darf.

Es gibt keine API-Schlüssel: Heute verbinden Sie sich über MCP, das Sie im Browser anmeldet (siehe MCP-Seite). Solange die REST-API im Early Access ist, meldet sich ein Skript als eigener Nutzer an, dem die benötigten Ordner freigegeben sind.

Der Umfang

Was die API abdeckt

Suche und Antworten – search liefert die Passagen, die zu einer Frage passen, mit Seiten und einem Link zum Original; ask liefert eine kurze Antwort.

Dokumente – eine Quelle importieren und verfolgen, wie sie in Abschnitte zerlegt wurde.

Durchsuchen und Lesen – Ordner auflisten, den Text eines Dokuments lesen oder das Original herunterladen.

Jobs – den Status eines Imports prüfen.

Fehler – die Form eines Fehlers aus jedem Dienst.

Beispielhaft

Die Form einer Anfrage

Ein importiertes Dokument und eine Frage, beantwortet aus dem Importierten. Endpunkte und Felder sind nicht endgültig.

curl -X POST /ingest \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN" \
  -F "[email protected]"

Nur zur Veranschaulichung – noch keine verbindliche Spezifikation.

Referenz

Endpunkte

Die API hat zwei Dienste, und beide nehmen dasselbe Token. Der Core importiert, sucht und antwortet; der Vault hält Ordner und Dokumente. Welcher Core und welcher Vault Ihren Workspace bedienen, hängt von seinem Release-Kanal ab. Die Beispiele unten verwenden https://hippocampuscore.thalius.ai für den Core und https://hippocampusvault.thalius.ai für den Vault; antwortet ein Aufruf mit 409 und code: wrong_channel, wird Ihr Workspace von einem anderen Kanal bedient, und core_url in der Antwort nennt den Core, an den Sie ihn senden.

Jeder Endpunkt unten hat eine Anfrage in cURL, Python und JavaScript sowie eine gekürzte Antwort.

IDs in den Beispielen sind gekürzt.

Import

Dokumente importieren

Laden Sie Dateien in den Core hoch. Jede Datei wird gelesen, in Abschnitte zerlegt und zusammengefasst, dann im Ordner abgelegt, den Sie angeben. Ein Job verfolgt die Arbeit.

Core

POST /ingest

Eine oder mehrere Dateien zum Import in einen Ordner hochladen.

Query

  • stream – true streamt den Fortschritt als Server-Sent Events; false (Standard) liefert sofort einen Job.

Formularfelder (multipart)

  • files – eine oder mehrere Dateien: .pdf, .docx, .pptx, .xlsx, .md, .markdown, .txt, .text. Erforderlich.
  • file_metadata – JSON-Array mit einem Objekt pro Datei, in derselben Reihenfolge: folder_name (Ordnerpfad) und tags.

Liefert einen Job: job_id, status (processing, complete oder error), total_files, done. Eine bereits importierte Datei kommt mit duplicate: true zurück.

curl -sS -X POST "https://hippocampuscore.thalius.ai/ingest" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN" \
  -F "[email protected]" \
  -F 'file_metadata=[{"folder_name":"contracts/master-agreements","tags":["msa"]}]'
{
  "job_id": "c0a9f6d2-…",
  "status": "processing",
  "message": "Queued 1 file",
  "total_files": 1,
  "done": false
}

Core

GET /jobs/{job_id}

Einen ohne Streaming gestarteten Import prüfen. Abfragen, bis done auf true steht.

Pfad

  • job_id – aus der Antwort von POST /ingest.

Liefert status, successful, failed und einen Eintrag in results pro Datei, mit ihrer document_id.

curl -sS "https://hippocampuscore.thalius.ai/jobs/c0a9f6d2-…" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"
{
  "job_id": "c0a9f6d2-…",
  "status": "complete",
  "successful": 1,
  "failed": 0,
  "results": [
    {
      "filename": "MSA-2025.pdf",
      "success": true,
      "document_id": "8c1f0e4a-…",
      "folder_name": "contracts/master-agreements",
      "duplicate": false
    }
  ],
  "done": true
}

Suche und Antworten

Suchen und Fragen

Search liefert die Passagen, die zu einer Frage passen, jede mit ihren Seiten und einem Link zum Original. Ask liefert eine kurze, vom Modell geschriebene Antwort.

Core

POST /search

Die Passagen finden, die eine Frage beantworten, als Ranking.

Body (JSON)

  • query – die Frage. Erforderlich.
  • folder_name – die Suche auf einen Ordnerpfad beschränken.
  • tags – auf Dokumente mit diesen Tags beschränken.

Liefert sources: für jede Passage doc_id, document_title, leaf_title (der Abschnitt), start_page, end_page, text, score und deep_link zum Original auf dieser Seite.

curl -sS -X POST "https://hippocampuscore.thalius.ai/search" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"query":"What is the notice period for termination?","folder_name":"contracts/master-agreements"}'
{
  "sources": [
    {
      "doc_id": "8c1f0e4a-…",
      "document_title": "Master Services Agreement 2025",
      "leaf_title": "12. Term and Termination",
      "start_page": 14,
      "end_page": 15,
      "score": 0.91,
      "text": "Either party may terminate this Agreement on ninety (90) days' written notice…",
      "deep_link": "/documents/5b7d2c90-….pdf#page=14"
    }
  ]
}

Core

POST /ask

Eine kurze Antwort auf eine Frage erhalten, geschrieben aus den passenden Passagen.

Body (JSON)

  • query – die Frage. Erforderlich.
  • folder_name, tags – wie bei search.

Liefert answer, reasoning und confidence. Die Passagen werden nicht zurückgegeben; rufen Sie dafür search auf.

curl -sS -X POST "https://hippocampuscore.thalius.ai/ask" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"query":"What is the notice period for termination?","folder_name":"contracts/master-agreements"}'
{
  "answer": "Either party may terminate on 90 days' written notice (section 12.2).",
  "reasoning": "Section 12.2 of the Master Services Agreement states…",
  "confidence": 0.86
}

Durchsuchen

Ordner und ihr Inhalt

Ordnerzusammenfassungen kommen aus dem Core; Ordner und Dokumentlisten kommen aus dem Vault.

Core

GET /folders/summary

Lesen, was ein Ordner enthält, wie beim Import geschrieben, ohne eine Suche auszuführen.

Query

  • folder_name – der Ordnerpfad. Erforderlich.

Liefert status (ok, none oder unavailable) und folder_summary mit title, description und content.

curl -sS "https://hippocampuscore.thalius.ai/folders/summary?folder_name=contracts/master-agreements" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"
{
  "status": "ok",
  "folder_summary": {
    "folder": "contracts/master-agreements",
    "title": "Master agreements",
    "description": "Signed MSAs with customers and suppliers, 2019–2025.",
    "content": "- Master Services Agreement 2025: term, termination, liability caps…",
    "truncated": false
  }
}

Vault

GET /folders

Die obersten Ordner auflisten, oder die Ordner innerhalb eines Ordners.

Query

  • parentFolderId – der aufzulistende Ordner. Weglassen für die oberste Ebene.

Liefert ein Array von Ordnern: id, name, parentFolderId, createdAt, updatedAt.

curl -sS "https://hippocampusvault.thalius.ai/folders?parentFolderId=0c25a285-…" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"
[
  {
    "id": "0144f7ed-…",
    "name": "Onboarding notes",
    "parentFolderId": "0c25a285-…",
    "createdAt": "2026-09-08T09:15:16.000Z",
    "updatedAt": "2026-09-08T09:15:16.000Z"
  }
]

Vault

GET /folders/{id}

Ein Ordner. Mit include=true liefert derselbe Aufruf auch die übergeordneten Ordner, seine Dokumente und seine Unterordner.

Pfad

  • id – die Ordner-ID.

Query

  • include – true, um ancestors, documents und subfolders hinzuzufügen.
curl -sS "https://hippocampusvault.thalius.ai/folders/0144f7ed-…?include=true" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"
{
  "id": "0144f7ed-…",
  "name": "Onboarding notes",
  "parentFolderId": "0c25a285-…",
  "ancestors": [
    {
      "id": "0c25a285-…",
      "name": "HR"
    }
  ],
  "documents": [
    {
      "id": "3c76ff09-…",
      "name": "comments.md",
      "contentType": "text/markdown",
      "folderId": "0144f7ed-…",
      "version": 1
    }
  ],
  "subfolders": [
    {
      "id": "9e2a…",
      "name": "_hippocampus"
    }
  ]
}

Vault

GET /documents

Die Dokumente in einem Ordner auflisten, ohne ihren Inhalt.

Query

  • folderId – der Ordner. Weglassen für die oberste Ebene.
  • tag – nur Dokumente mit diesem Tag.

Liefert ein Array: id, name, contentType, folderId, version, createdAt, updatedAt.

curl -sS "https://hippocampusvault.thalius.ai/documents?folderId=0144f7ed-…" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"
[
  {
    "id": "0001b85f-…",
    "name": "Onboarding notes.md",
    "contentType": "text/markdown",
    "folderId": "0144f7ed-…",
    "version": 1,
    "createdAt": "2026-09-08T09:15:17.000Z"
  }
]

Lesen

Dokumente lesen

Der Vault liefert den Text eines Dokuments, seine Tags und die Originaldatei.

Vault

GET /documents/{id}

Die Details eines Dokuments. Ein Textdokument trägt auch seinen content als Markdown.

Pfad

  • id – die Dokument-ID.

Liefert id, name, contentType, size, version, folderId, createdAt und, bei Text, content.

curl -sS "https://hippocampusvault.thalius.ai/documents/0001b85f-…" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"
{
  "id": "0001b85f-…",
  "name": "Onboarding notes.md",
  "contentType": "text/markdown",
  "size": 510,
  "version": 1,
  "folderId": "d3f3ed56-…",
  "createdAt": "2026-09-08T09:15:17.000Z",
  "content": "---
type: document
title: Onboarding notes
---
…"
}

Vault

POST /documents/batch

Bis zu 100 Dokumente, mit Inhalt, in einem Aufruf.

Body (JSON)

  • ids – bis zu 100 Dokument-IDs. Erforderlich.

Liefert ein Array von Dokumenten. IDs, die nicht existieren oder die Sie nicht lesen dürfen, werden ausgelassen.

curl -sS -X POST "https://hippocampusvault.thalius.ai/documents/batch" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"ids":["0001b85f-…","3c76ff09-…"]}'
[
  {
    "id": "0001b85f-…",
    "name": "Onboarding notes.md",
    "contentType": "text/markdown",
    "content": "---
type: document
…"
  },
  {
    "id": "3c76ff09-…",
    "name": "comments.md",
    "contentType": "text/markdown",
    "content": "…"
  }
]

Vault

GET /documents/{id}/content

Die gespeicherte Datei selbst: das Original-PDF, ein Bild oder Markdown, mit eigenem Content-Type.

Pfad

  • id – die Dokument-ID, zum Beispiel die aus dem deep_link eines Suchergebnisses.
curl -sS -o original.pdf "https://hippocampusvault.thalius.ai/documents/5b7d2c90-…/content" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"

Vault

GET /documents/{id}/tags

Die Tags eines Dokuments.

Pfad

  • id – die Dokument-ID.

Liefert tags.

curl -sS "https://hippocampusvault.thalius.ai/documents/0001b85f-…/tags" \
  -H "Authorization: Bearer $HIPPOCAMPUS_TOKEN"
{
  "tags": [
    "onboarding",
    "hr"
  ]
}

Fehler

Wenn ein Aufruf fehlschlägt

Der Core antwortet mit detail. Der Vault antwortet mit message, oder mit error, wenn das Token fehlt oder ungültig ist.

  • 401 – das Token fehlt, ist abgelaufen oder ungültig. Melden Sie sich erneut an.
  • 403 – der Nutzer darf diesen Ordner nicht lesen oder ändern.
  • 404 – nicht gefunden oder für diesen Nutzer nicht lesbar.
  • 409 – das Dokument hat sich geändert, seit Sie es gelesen haben.
  • 422 – ein Feld fehlt oder hat den falschen Typ.
{
  "detail": "Not authenticated"
}

Clients

Derzeit

curl und unser MCP-Server funktionieren heute schon. Offizielle SDKs für Python und TypeScript sind vor der allgemeinen Verfügbarkeit geplant.

Sie möchten frühen Zugang zur API?

Wir nehmen jetzt Design-Partner auf.