Übersicht
Die Documents API dient zur Verwaltung von Dokumenten im Index von Fess. Sie können Operationen wie Massenlöschung, Aktualisierung und Suche von Dokumenten durchführen.
Basis-URL
/api/admin/documents
Endpunktliste
| Methode | Pfad | Beschreibung |
|---|---|---|
| DELETE | / | Dokumente löschen (Query-basiert) |
| DELETE | /{id} | Dokument löschen (ID-basiert) |
Dokumente per Query löschen
Löscht alle Dokumente, die der Suchabfrage entsprechen.
Request
DELETE /api/admin/documents
Parameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
q | String | Ja | Suchabfrage für zu löschende Dokumente |
Response
{
"response": {
"status": 0,
"deleted": 150
}
}
Beispiele
# Dokumente einer bestimmten Website löschen
curl -X DELETE "http://localhost:8080/api/admin/documents?q=url:example.com" \
-H "Authorization: Bearer YOUR_TOKEN"
# Alte Dokumente löschen
curl -X DELETE "http://localhost:8080/api/admin/documents?q=lastModified:[* TO 2023-01-01]" \
-H "Authorization: Bearer YOUR_TOKEN"
# Dokumente mit bestimmtem Label löschen
curl -X DELETE "http://localhost:8080/api/admin/documents?q=label:old_label" \
-H "Authorization: Bearer YOUR_TOKEN"
Dokument per ID löschen
Löscht ein Dokument anhand seiner ID.
Request
DELETE /api/admin/documents/{id}
Parameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
id | String | Ja | Dokument-ID (Pfadparameter) |
Response
{
"response": {
"status": 0
}
}
Beispiel
curl -X DELETE "http://localhost:8080/api/admin/documents/doc_id_12345" \
-H "Authorization: Bearer YOUR_TOKEN"
Query-Syntax
Für Löschabfragen kann die Standard-Suchsyntax von Fess verwendet werden.
Grundlegende Abfragen
| Abfragebeispiel | Beschreibung |
|---|---|
url:example.com | Dokumente mit „example.com“ in der URL |
url:https://example.com/* | URLs mit bestimmtem Präfix |
host:example.com | Dokumente eines bestimmten Hosts |
title:keyword | Dokumente mit Schlüsselwort im Titel |
content:keyword | Dokumente mit Schlüsselwort im Inhalt |
label:mylabel | Dokumente mit bestimmtem Label |
Datumsbereichsabfragen
| Abfragebeispiel | Beschreibung |
|---|---|
lastModified:[2023-01-01 TO 2023-12-31] | Im angegebenen Zeitraum aktualisierte Dokumente |
lastModified:[* TO 2023-01-01] | Vor dem angegebenen Datum aktualisierte Dokumente |
created:[2024-01-01 TO *] | Nach dem angegebenen Datum erstellte Dokumente |
Kombinierte Abfragen
| Abfragebeispiel | Beschreibung |
|---|---|
url:example.com AND label:blog | UND-Bedingung |
url:example.com OR url:sample.com | ODER-Bedingung |
NOT url:example.com | NICHT-Bedingung |
(url:example.com OR url:sample.com) AND label:news | Gruppierung |
Hinweise
Vorsichtsmaßnahmen bei Löschoperationen
Warnung
Löschoperationen können nicht rückgängig gemacht werden. Testen Sie vor der Ausführung in einer Produktionsumgebung unbedingt in einer Testumgebung.
Bei der Löschung großer Dokumentmengen kann die Verarbeitung einige Zeit in Anspruch nehmen
Während der Löschung kann die Index-Performance beeinträchtigt werden
Nach der Löschung kann es etwas dauern, bis die Suchergebnisse aktualisiert sind
Empfohlene Praktiken
Vor dem Löschen bestätigen: Verwenden Sie dieselbe Abfrage mit der Such-API, um die Löschziele zu überprüfen
Schrittweises Löschen: Führen Sie Massenlöschungen in mehreren Schritten durch
Backup: Sichern Sie wichtige Daten vorher
Verwendungsbeispiele
Vorbereitung für Neuindexierung einer Website
# Alte Dokumente einer bestimmten Website löschen
curl -X DELETE "http://localhost:8080/api/admin/documents?q=host:example.com" \
-H "Authorization: Bearer YOUR_TOKEN"
# Crawl-Job starten
curl -X PUT "http://localhost:8080/api/admin/scheduler/{job_id}/start" \
-H "Authorization: Bearer YOUR_TOKEN"
Bereinigung alter Dokumente
# Dokumente löschen, die seit über einem Jahr nicht aktualisiert wurden
curl -X DELETE "http://localhost:8080/api/admin/documents?q=lastModified:[* TO now-1y]" \
-H "Authorization: Bearer YOUR_TOKEN"
Referenzinformationen
Admin API Übersicht - Admin API Übersicht
CrawlingInfo API - Crawl-Informationen API
Suche - Suchlistenverwaltungsanleitung