BadWord API

Übersicht

Die BadWord API dient zur Verwaltung von verbotenen Wörtern (Bad Words) in Fess. Diese Wörter werden aus Suchvorschlägen ausgeschlossen.

Basis-URL

/api/admin/badword

Endpunktliste

Methode Pfad Beschreibung
GET /settings Bad Word Liste abrufen
GET /setting/{id} Bad Word abrufen
POST /setting Bad Word erstellen
PUT /setting Bad Word aktualisieren
DELETE /setting/{id} Bad Word löschen
POST /upload Bad Word CSV hochladen
GET /download Bad Word CSV herunterladen

Bad Word Liste abrufen

Request

GET /api/admin/badword/settings

Parameter

Parameter Typ Erforderlich Beschreibung
size Integer Nein Anzahl der Einträge pro Seite (Standard: 25; änderbar über paging.page.size in fess_config.properties)
page Integer Nein Seitennummer (beginnt bei 1, Standard: 1)
id String Nein Auf das Bad Word mit der angegebenen ID einschränken

Diese Parameter werden im JSON-Anfragekörper angegeben (z. B. {"size": 50, "page": 1}). Werte in der URL-Query-String (z. B. ?size=50) werden ignoriert; ohne Angabe im Anfragekörper werden daher immer die ersten 25 Einträge zurückgegeben.

Response

{
  "response": {
    "status": 0,
    "settings": [
      {
        "id": "badword_id_1",
        "suggest_word": "inappropriate_word"
      }
    ],
    "total": 5
  }
}

Bad Word abrufen

Request

GET /api/admin/badword/setting/{id}

Response

{
  "response": {
    "status": 0,
    "setting": {
      "id": "badword_id_1",
      "suggest_word": "inappropriate_word"
    }
  }
}

Bad Word erstellen

Request

POST /api/admin/badword/setting
Content-Type: application/json

Request-Body

{
  "suggest_word": "spam_keyword"
}

Feldbeschreibungen

Feld Erforderlich Beschreibung
suggest_word Ja Das auszuschließende Schlüsselwort (darf keine Leerzeichen enthalten)

Response

{
  "response": {
    "status": 0,
    "id": "new_badword_id",
    "created": true
  }
}

Bad Word aktualisieren

Request

PUT /api/admin/badword/setting
Content-Type: application/json

Request-Body

{
  "id": "existing_badword_id",
  "suggest_word": "updated_spam_keyword",
  "version_no": 1
}

Response

{
  "response": {
    "status": 0,
    "id": "existing_badword_id",
    "created": false
  }
}

Bad Word löschen

Request

DELETE /api/admin/badword/setting/{id}

Response

{
  "response": {
    "status": 0,
    "id": "deleted_badword_id",
    "created": false
  }
}

Bad Word CSV hochladen

Registriert Bad Words gesammelt aus einer CSV-Datei. Die Datei wird als multipart/form-data gesendet. Der Import wird serverseitig asynchron ausgeführt.

Request

POST /api/admin/badword/upload
Content-Type: multipart/form-data

Parameter

Parameter Erforderlich Beschreibung
badWordFile Ja Hochzuladende Bad-Word-CSV-Datei

CSV-Format

  • Die erste Zeile wird als Kopfzeile übersprungen (der Spaltenname ist beliebig; beim Herunterladen wird BadWord ausgegeben).

  • Ab der zweiten Zeile wird pro Zeile ein Bad Word als suggest_word angegeben.

  • Zeilen, deren Wert nur aus Leerzeichen besteht, werden ignoriert.

  • Stellen Sie einem Wort -- voran, um es zu löschen (z. B. löscht --spam das Wort spam).

  • Die Angabe eines bereits registrierten Worts wird als Aktualisierung behandelt (der Bearbeiter und der Aktualisierungszeitpunkt werden zurückgesetzt).

Bemerkung

Da der Import serverseitig asynchron ausgeführt wird, zeigt eine Antwort mit status: 0 an, dass die Anfrage angenommen wurde, nicht dass der Import abgeschlossen ist.

Response

{
  "response": {
    "status": 0
  }
}

Bad Word CSV herunterladen

Lädt die registrierten Bad Words als CSV-Datei (badword.csv) herunter. Die Antwort ist ein Stream vom Typ application/octet-stream. Die CSV-Datei enthält in der ersten Zeile eine BadWord-Kopfzeile, gefolgt von einem registrierten Bad Word pro Zeile.

Request

GET /api/admin/badword/download

Verwendungsbeispiele

Liste der Bad Words abrufen

curl -X GET "http://localhost:8080/api/admin/badword/settings" \
     -H "Authorization: Bearer YOUR_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"size": 50, "page": 1}'

Spam-Schlüsselwörter ausschließen

curl -X POST "http://localhost:8080/api/admin/badword/setting" \
     -H "Authorization: Bearer YOUR_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
       "suggest_word": "spam"
     }'

CSV-Datei hochladen

curl -X POST "http://localhost:8080/api/admin/badword/upload" \
     -H "Authorization: Bearer YOUR_TOKEN" \
     -F "badWordFile=@badword.csv"

CSV-Datei herunterladen

curl -X GET "http://localhost:8080/api/admin/badword/download" \
     -H "Authorization: Bearer YOUR_TOKEN" \
     -o badword.csv

Referenzinformationen