Knowledge API
Fügen Sie Ihren Minds Wissen über Dateien, Keywords oder Links hinzu.
Fügen Sie Ihren Minds Wissen über drei Methoden hinzu: Datei, Keyword oder Link. Wissen wird verarbeitet, eingebettet und während Konversationen automatisch abgerufen.
Hinweis: Auflisten, Hinzufügen und Löschen sind über die v1-API verfügbar. Knowledge-Anreicherung per Keyword-Suche wird ebenfalls über denselben Add-Endpoint unterstützt.
Antworten auf Knowledge-Listen und Statusabfragen sind privat (Cache-Control: private, no-store). GET /api/v1/minds/{mindId}/knowledge/{itemId}/status liefert die maßgeblichen mindId und itemId, öffentliche Verarbeitungsfelder, Embedding-/Pattern-Zähler und readyForRetrieval. Worker-Diagnosen und beliebige gespeicherte Metadaten werden ausgelassen; fehlgeschlagene Verarbeitung meldet allgemein Knowledge processing failed. Ungültige gespeicherte Zustände werden zu unknown. Bei älteren Einträgen ohne Verarbeitungsmetadaten bedeuten vorhandene Embeddings completed, sonst gilt unknown. Fehlende oder gesperrte Zugangsdaten ergeben 401, nicht zugängliche Minds oder Einträge 404 und unerwartete Speicherfehler ein allgemeines 500.
Knowledge-Einträge auflisten
Ruft eine Seite der Knowledge-Einträge eines Minds ab.
Verwenden Sie limit (1–100, Standard 100) und offset (nicht negative Ganzzahl, Standard 0). Einträge sind nach createdAt und anschließend nach ID absteigend sortiert. data.total zählt alle Einträge; data.pagination enthält limit, offset und hasMore. Solange hasMore wahr ist, rufen Sie die nächste Seite mit offset + items.length ab. Die Seiten bilden keinen Snapshot: Hinzufügen oder Löschen zwischen Anfragen kann die Positionen verschieben. Ungültige oder wiederholte Paginierungswerte führen zu 400.
Endpoint: GET /api/v1/minds/{mindId}/knowledge
Headers:
Authorization: Bearer minds_your_api_key
Beispiel:
curl -X GET "https://getminds.ai/api/v1/minds/{mindId}/knowledge?limit=100&offset=0" \
-H "Authorization: Bearer minds_your_api_key"
Response:
{
"success": true,
"data": {
"items": [
{
"id": "660e8400-e29b-41d4-a716-446655440001",
"description": "Company Employee Handbook 2025",
"link": null,
"filePath": "portfolio/user-id/1234567890_handbook.pdf",
"isWatched": false,
"createdAt": "2025-12-10T12:00:00.000Z",
"updatedAt": "2025-12-10T12:00:00.000Z"
}
],
"total": 1,
"pagination": { "limit": 100, "offset": 0, "hasMore": false }
}
}
| Feld | Typ | Beschreibung |
|---|---|---|
data.items | array | Array von Knowledge-Eintragsobjekten |
data.total | number | Gesamtzahl der Knowledge-Einträge für diesen Mind |
Datei-Upload
Laden Sie Dokumente oder Bilder direkt zu einem Mind hoch.
Endpoint: POST /api/v1/minds/{mindId}/knowledge
Content-Type: multipart/form-data
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
file | file | Ja | Hochzuladende Datei (max. 50 MB) |
description | string | Ja | Beschreibung des Inhalts |
Unterstützte Formate:
- Dokumente: PDF, DOCX, DOC, TXT, MD, RTF, CSV, JSON, XML
- Bilder: JPG, JPEG, PNG, GIF, WEBP
Beispiel:
curl -X POST "https://getminds.ai/api/v1/minds/{mindId}/knowledge" \
-H "Authorization: Bearer minds_your_api_key" \
-F "file=@./handbook.pdf" \
-F "description=Company Employee Handbook 2025"
Für Workspace-Upload-URLs brauchst du unabhängig vom Bearbeitungsrecht am Mind Zugriff auf die Datei: einen eigenen Upload, eine Chat-Datei-URL mit gültiger Signatur oder eine Kontextdatei, die über die Study des Uploaders geteilt wurde. Andernfalls antwortet die Anfrage mit 403 Upload access denied. Die Kenntnis eines Objektpfads gewährt keinen Zugriff.
Response: 201 Created
{
"success": true,
"data": {
"id": "660e8400-e29b-41d4-a716-446655440001",
"description": "Company Employee Handbook 2025",
"filePath": "portfolio/user-id/1234567890_handbook.pdf",
"createdAt": "2025-12-10T12:00:00.000Z"
}
}
Keyword-Suche
Fügen Sie Wissen hinzu, indem Sie das Web nach Keywords durchsuchen. Durchsucht Exa und YouTube, extrahiert Inhalte und fügt sie der Wissensbasis des Minds hinzu.
Endpoint: POST /api/v1/minds/{mindId}/knowledge
Content-Type: application/json
Senden Sie einen JSON-Body mit einem keywords-Array (statt link/file), um die Web-Suche-Anreicherung auszulösen.
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
keywords | string | Ja | Zu suchende Keywords (max. 35) |
regeneratePrompt | boolean | Nein | System Prompt danach neu generieren (Standard: true) |
Beispiel:
curl -X POST "https://getminds.ai/api/v1/minds/{mindId}/knowledge" \
-H "Authorization: Bearer minds_your_api_key" \
-H "Content-Type: application/json" \
-d '{"keywords": ["solar panel efficiency", "photovoltaic trends"]}'
Response: 202 Accepted
{
"success": true,
"data": {
"sparkId": "660e8400-e29b-41d4-a716-446655440000",
"keywords": ["solar panel efficiency", "photovoltaic trends"],
"queued": true,
"regeneratePrompt": true,
"message": "Knowledge enrichment queued with 2 keyword(s)."
}
}
Hinweis: Dies läuft asynchron. Die Verarbeitung findet im Hintergrund statt und kann mehrere Minuten dauern.
Link
Fügen Sie Wissen aus einer URL hinzu. Unterstützt Webseiten, YouTube-Videos und Forschungsarbeiten.
Endpoint: POST /api/v1/minds/{mindId}/knowledge
Content-Type: application/json
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
link | string | Ja | URL zu Web-Inhalt |
description | string | Ja | Beschreibung des Inhalts |
Beispiel:
curl -X POST "https://getminds.ai/api/v1/minds/{mindId}/knowledge" \
-H "Authorization: Bearer minds_your_api_key" \
-H "Content-Type: application/json" \
-d '{"link": "https://example.com/article", "description": "Industry trends article"}'
Response: 201 Created
{
"success": true,
"data": {
"id": "660e8400-e29b-41d4-a716-446655440001",
"link": "https://example.com/article",
"description": "Industry trends article",
"createdAt": "2025-12-10T12:00:00.000Z"
}
}
Unterstützte Link-Typen:
- Webseiten (Inhalt wird per Scraping extrahiert)
- YouTube-Videos (Transkripte werden automatisch extrahiert)
- Forschungsarbeiten (arxiv usw.)
Watch (Auto-Update)
Link-basierte Knowledge-Einträge können per "Watch" automatisch wöchentlich auf Inhaltsänderungen geprüft werden. Wenn Änderungen erkannt werden, wird das Wissen neu verarbeitet und neu eingebettet.
Watch wird über die Produkt-UI verwaltet. Der Watch-Status ist beim Auflisten von Knowledge-Einträgen über die API sichtbar (Feld isWatched).
Hinweis: Watch ist nur für link-basiertes Wissen verfügbar, nicht für Dateien oder Keyword-Suchen.
Knowledge-Eintrag aktualisieren
Aktualisiert die Beschreibung eines bestehenden Knowledge-Eintrags.
Endpoint: PUT /api/v1/minds/{mindId}/knowledge/{itemId}
Headers:
Authorization: Bearer minds_your_api_key
Content-Type: application/json
Request Body:
{
"description": "Updated description for this knowledge item"
}
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
description | string | Ja | Aktualisierte Beschreibung (darf nicht leer sein) |
Beispiel:
curl -X PUT "https://getminds.ai/api/v1/minds/{mindId}/knowledge/{itemId}" \
-H "Authorization: Bearer minds_your_api_key" \
-H "Content-Type: application/json" \
-d '{"description": "Updated handbook description"}'
Response:
{
"success": true,
"data": {
"id": "660e8400-e29b-41d4-a716-446655440001",
"description": "Updated handbook description",
"link": null,
"filePath": "portfolio/user-id/1234567890_handbook.pdf",
"isWatched": false,
"createdAt": "2025-12-10T12:00:00.000Z",
"updatedAt": "2025-12-15T08:30:00.000Z"
}
}
Error Responses
400 Bad Request - Keine gültigen Felder zum Aktualisieren oder leere Beschreibung
401 Unauthorized - Ungültiger oder fehlender API key
404 Not Found - Knowledge-Eintrag oder Mind nicht gefunden
Anreicherung per Keywords (Convenience)
Convenience-Alias für die keyword-basierte Knowledge-Anreicherung.
Endpoint: POST /api/v1/minds/{mindId}/knowledge/enrich
Dies ist gleichbedeutend mit POST /api/v1/minds/{mindId}/knowledge mit einem keywords-Body. Siehe Keyword-Suche für alle Details.
Beispiel:
curl -X POST "https://getminds.ai/api/v1/minds/{mindId}/knowledge/enrich" \
-H "Authorization: Bearer minds_your_api_key" \
-H "Content-Type: application/json" \
-d '{"keywords": ["solar panel efficiency", "photovoltaic trends"]}'
Knowledge-Eintrag löschen
Löscht einen Knowledge-Eintrag und alle zugehörigen Daten (Embeddings, Patterns, Dateien) dauerhaft.
Endpoint: DELETE /api/v1/minds/{mindId}/knowledge/{itemId}
Headers:
Authorization: Bearer minds_your_api_key
Beispiel:
curl -X DELETE "https://getminds.ai/api/v1/minds/{mindId}/knowledge/{itemId}" \
-H "Authorization: Bearer minds_your_api_key"
Response: 204 No Content (leerer Body bei Erfolg)
Was wird gelöscht
- Der Knowledge-Eintrags-Datensatz
- Alle zugehörigen Vektor-Embeddings
- Alle zugehörigen Patterns
- Hochgeladene Datei aus dem Storage (wenn dateibasiert)
Warnung: Diese Aktion kann nicht rückgängig gemacht werden.
So funktioniert die Verarbeitung
- Upload - Inhalt wird gespeichert und die API gibt Erfolg zurück
- Extraktion - Hintergrundverarbeitung extrahiert Text (Scraping, Transkripte, OCR, Vision)
- Embedding - Inhalt wird in Vektor-Embeddings umgewandelt
- Retrieval - Während des Chats wird relevantes Wissen automatisch per semantischer Suche abgerufen
Errors
| Code | Meldung | Ursache |
|---|---|---|
| 400 | Link and description are required | Pflichtfelder fehlen |
| 400 | Keywords array is required | Leeres oder fehlendes keywords |
| 400 | File too large | Datei überschreitet das 50-MB-Limit |
| 400 | Can only watch link-based knowledge | Versuch, eine Datei zu beobachten |
| 404 | Mind not found or access denied | Ungültige Mind-ID oder kein Zugriff |
| 415 | Unsupported Content-Type | Falscher Content-Type-Header |


