# Korpora

Ein Korpus fasst die Dokumente einer Datenquelle zusammen, z. B. alle Seiten eines Website-Crawls oder alle Dateien eines Datei-Imports. Grundbegriffe (Hierarchie, source, ignore) und die gemeinsame Pagination finden Sie im Datenimport-Überblick . Voraussetzungen für alle Anfragen (Basis-URL, Authorization- und kauz-chatbot-Header) finden Sie im Überblick .

# GET /partner/v1/corpora

Listet die Korpora auf, optional gefiltert und sortiert.

# Anfrage

Parameter Typ Pflicht Beschreibung
source string nein Filtert nach Herkunft, siehe source-Werte .
sortBy string nein createdAt, updatedAt, name, numberOfWords oder source. Standardwert createdAt.
sortOrder string nein asc oder desc. Standardwert asc.
limit number nein 1–200, Standardwert 50.
offset number nein ≥ 0, Standardwert 0.

# Antwort

Feld Typ Beschreibung
corpora[] array Die Korpora dieser Seite, siehe Felder unten.
total number Gesamtzahl der Treffer.
limit number Angewandtes limit.
offset number Angewandtes offset.

Felder je Korpus:

Feld Typ Beschreibung
id string Eindeutige ID des Korpus.
name string Name des Korpus.
ignore boolean Ob das Korpus von der Antwortgenerierung ausgeschlossen ist.
source string Herkunft, siehe source-Werte .
seedUrl string Start-URL des Crawls (bei gecrawlten Korpora).
embeddingModel string Für die Vektorisierung verwendetes Embedding-Modell. Fehlt bei Korpora mit veralteter Konfiguration.
embeddingProvider string Anbieter des Embedding-Modells. Fehlt bei Korpora mit veralteter Konfiguration.
embeddingVectorLength number Länge der erzeugten Embedding-Vektoren. Fehlt bei Korpora mit veralteter Konfiguration.
createdAt string Anlagezeitpunkt (ISO 8601).
updatedAt string Zeitpunkt der letzten Änderung (ISO 8601).

Zusätzlich enthält jedes Korpus aggregierte Zählwerte, jeweils als Gesamtzahl, bereits vektorisiert und aktiv (nicht ignoriert):

Kennzahl Gesamt Vektorisiert Aktiv
Dokumente numberOfDocuments numberOfVectorizedDocuments numberOfActiveDocuments
Chunks numberOfChunks numberOfVectorizedChunks numberOfActiveChunks
Wörter numberOfWords numberOfVectorizedWords numberOfActiveWords
Tokens numberOfTokens numberOfVectorizedTokens numberOfActiveTokens
curl --location "https://example.kauz.ai/partner/v1/corpora?source=file&sortBy=createdAt&sortOrder=desc&limit=20" \
--header "Authorization: Bearer eyJhbGciOiJSUzI1NiIs..." \
--header "kauz-chatbot: helpdesk"
{
  "corpora": [
    {
      "id": "b3e2c1de-5f0b-4c1e-9d33-1b8a1f0c4e77",
      "name": "Produktdokumentation",
      "ignore": false,
      "source": "file",
      "numberOfDocuments": 12,
      "numberOfVectorizedDocuments": 12,
      "numberOfActiveDocuments": 12,
      "numberOfChunks": 340,
      "numberOfVectorizedChunks": 340,
      "numberOfActiveChunks": 338,
      "createdAt": "2026-07-24T16:21:22.720Z",
      "updatedAt": "2026-07-24T16:21:22.720Z"
    }
  ],
  "total": 1,
  "limit": 20,
  "offset": 0
}

# POST /partner/v1/corpora

Legt ein Korpus direkt an, ohne Crawl oder Datei-Import. Das Korpus ist danach leer – fügen Sie Dokumente über POST /documents hinzu.

# Anfrage

Feld Typ Pflicht Beschreibung
source string ja chat, cms, email, file, sharepoint oder website.
name string nein Name des Korpus.
description string nein Beschreibung.
author string nein Urheber*in.
seedUrl string nein Start-URL, sofern das Korpus einen Crawl repräsentiert.
domain string nein Registrierte Domain.
precedingCorpusId string nein ID des Korpus, hinter dem das neue Korpus einsortiert werden soll.
previousCorpusId string nein ID einer vorherigen Version dieses Korpus.
ignore boolean nein Standardwert false.
share boolean nein Standardwert false.
userGroup array<string> nein Nutzergruppen, denen das Korpus zugeordnet ist.
createdAt string nein ISO 8601. Standardwert ist der Anfragezeitpunkt.
updatedAt string nein ISO 8601. Standardwert ist der Anfragezeitpunkt.

# Antwort

Enthält die gesendeten Felder sowie id.

{
  "source": "manual",
  "name": "string",
  "description": "string",
  "author": "string",
  "ignore": false,
  "share": false
}
curl --location --request POST "https://example.kauz.ai/partner/v1/corpora" \
--header "Authorization: Bearer eyJhbGciOiJSUzI1NiIs..." \
--header "kauz-chatbot: helpdesk" \
--header "Content-Type: application/json" \
--data-raw "{
   \"source\":\"manual\",
   \"name\":\"Produktdokumentation\"
}"

# GET `/partner/v1/corpora/

Enthält zusätzlich zu den Listenfeldern:

Feld Typ Beschreibung
description string Beschreibung des Korpus.
author string Urheber*in.
configuration object Konfiguration mit den Unterobjekten recrawlable, crawling und textExtraction.
crawlStatistics object Nur bei gecrawlten Korpora vorhanden.
recrawlSummary object Nur bei durch Recrawling entstandenen Korpora vorhanden.
curl --location "https://example.kauz.ai/partner/v1/corpora/b3e2c1de-5f0b-4c1e-9d33-1b8a1f0c4e77" \
--header "Authorization: Bearer eyJhbGciOiJSUzI1NiIs..." \
--header "kauz-chatbot: helpdesk"

# PATCH `/partner/v1/corpora/

Aktualisiert einzelne Felder eines bestehenden Korpus.

# Anfrage

Feld Typ Pflicht Beschreibung
name string nein Name des Korpus.
description string nein Beschreibung.
author string nein Urheber*in.
ignore boolean nein Ob das Korpus von der Antwortgenerierung ausgeschlossen wird.

# Antwort

id, name, description, author, ignore.

curl --location --request PATCH "https://example.kauz.ai/partner/v1/corpora/b3e2c1de-5f0b-4c1e-9d33-1b8a1f0c4e77" \
--header "Authorization: Bearer eyJhbGciOiJSUzI1NiIs..." \
--header "kauz-chatbot: helpdesk" \
--header "Content-Type: application/json" \
--data-raw "{ \"ignore\": true }"

# DELETE `/partner/v1/corpora/

Löscht das Korpus mitsamt seiner Dokumente und Chunks unwiderruflich. Antwort: 200 ohne Inhalt.

curl --location --request DELETE "https://example.kauz.ai/partner/v1/corpora/b3e2c1de-5f0b-4c1e-9d33-1b8a1f0c4e77" \
--header "Authorization: Bearer eyJhbGciOiJSUzI1NiIs..." \
--header "kauz-chatbot: helpdesk"