In diesem Abschnitt werden die neuen FAQ-CRUD-Operationen beschrieben, die über den GenericInterface-Webservice in OTRS verfügbar sind. Diese Operationen ermöglichen es externen Systemen, FAQ-Artikel mit REST-API-Endpunkten zu erstellen, zu lesen, zu aktualisieren, zu löschen und zu durchsuchen.
Übersicht
Der FAQ GenericInterface Connector bietet die folgenden Funktionen:
-
FAQCreate: Neuen FAQ-Artikel erstellen
-
FAQGet: Details eines bestimmten FAQ-Artikels abrufen
-
FAQUpdate: Aktualisieren eines vorhandenen FAQ-Artikels
-
FAQLöschen: Löschen Sie einen FAQ-Artikel
-
FAQSuche: Suche nach FAQ-Artikeln
Jeder Vorgang ist über REST-Endpunkte verfügbar und kann in externe Systeme für ein automatisiertes Wissensdatenbank-Management integriert werden.
FAQCreate Operation
Verwenden Sie die Operation FAQCreate, um einen neuen FAQ-Artikel zu erstellen.
Pflichtfelder: – Titel – CategoryID – LanguageID – StateID – Feld1 (Hauptinhalt)
Optionale Felder: – Schlüsselwörter – ValidID – Benutzerdefinierte Felder
Beispielanfrage (JSON, mit Inline-Bild in HTML und Authentifizierung):
{
"UserLogin": "apiuser",
"Password": "apipassword",
"FAQ": {
"Title": "How to reset password?",
"CategoryID": 1,
"LanguageID": 2,
"StateID": 3,
"Field1": "<p>To reset your password, click <b>Forgot Password</b>.<br><img src=\"cid:reset-password-image\" alt=\"Reset Password Screenshot\"></p>",
"Keywords": "password,reset,login"
},
"Attachment": [
{
"Content": "<base64-encoded-image-data>",
"ContentType": "image/png",
"Filename": "reset-password.png",
"Inline": 1,
"ContentID": "reset-password-image"
}
]
}
Beispielantwort:
{
"Success": 1,
"ErrorMessage": "",
"Data": {
"ItemID": 42,
"Number": 100042
}
}
FAQGet Operation
Verwenden Sie die Operation FAQGet, um Details zu einem bestimmten FAQ-Artikel per FAQID abzurufen.
Beispielanfrage (mit Authentifizierung):
{
"UserLogin": "apiuser",
"Password": "apipassword",
"ItemID": "42"
}
Beispielantwort:
{
"Success": 1,
"ErrorMessage": "",
"Data": {
"FAQ": [
{
"ItemID": 42,
"FAQID": 42,
"Number": 100042,
"CategoryID": 1,
"CategoryName": "General",
"LanguageID": 2,
"Language": "en",
"Title": "How to reset password?",
"Field1": "<p>To reset your password, click <b>Forgot Password</b>.<br><img src=\"cid:reset-password-image\"></p>",
"Keywords": "password,reset,login",
"Attachment": [
{
"ContentType": "image/png",
"Filename": "reset-password.png",
"FilesizeRaw": 12345,
"Content": "<base64-encoded-image-data>",
"Inline": 1
}
],
"DynamicField": [
{
"Name": "Priority",
"Value": "High"
}
]
}
]
}
}
FAQUpdate Operation
Verwenden Sie die Operation FAQUpdate, um einen bestehenden FAQ-Artikel zu aktualisieren.
Pflichtfelder: – FAQID – Alle zu aktualisierenden Felder (z. B. Titel, Feld1 usw.)
Beispielanfrage (Aktualisierung von HTML und Inline-Bild, mit Authentifizierung):
{
"UserLogin": "apiuser",
"Password": "apipassword",
"ItemID": 42,
"FAQ": {
"Title": "How to reset your password?",
"Field1": "<p>Updated instructions.<br><img src=\"cid:new-image\" alt=\"New Screenshot\"></p>"
},
"Attachment": [
{
"Content": "<base64-encoded-image-data>",
"ContentType": "image/png",
"Filename": "new-screenshot.png",
"Inline": 1,
"ContentID": "new-image"
}
]
}
Beispielantwort:
{
"Success": 1,
"ErrorMessage": "",
"Data": {
"ItemID": 42,
"Number": 100042
}
}
FAQDelete Operation
Verwenden Sie die Operation FAQDelete, um einen FAQ-Artikel nach FAQID zu löschen.
Beispielanfrage (mit Authentifizierung):
{
"UserLogin": "apiuser",
"Password": "apipassword",
"ItemID": 42
}
Beispielantwort:
{
"Success": 1,
"ErrorMessage": "",
"Data": {
"ItemID": 42
}
}
FAQSearch Operation
Verwenden Sie die FAQSearch-Operation, um nach FAQ-Artikeln nach Schlüsselwörtern, Kategorie, Sprache oder anderen Kriterien zu suchen.
Beispielanfrage (mit Authentifizierung):
{
"UserLogin": "apiuser",
"Password": "apipassword",
"Keywords": "password",
"CategoryID": 1
}
Beispielantwort:
{
"Success": 1,
"ErrorMessage": "",
"Data": {
"ItemIDs": [42, 43, 44]
}
}
Konfiguration
Um den FAQ GenericInterface Connector zu aktivieren, importieren Sie die mitgelieferte YAML-Konfigurationsdatei (siehe GenericFAQConnectorREST_CRUD.yml).
Prüfung
Beispielhafte Postman-Sammlungen werden im Entwicklungsordner zum Testen aller FAQ-CRUD-Vorgänge bereitgestellt. Siehe GenericFAQConnector.postman_collection.json für gebrauchsfertige API-Anfragen.
Siehe auch
-
FAQ-Kategorie
-
FAQ-Sprache
-
Import/Export
-
Systemkonfiguration
Weitere Details finden Sie in der OTRS-Administrationsdokumentation und in den Anleitungen zur Webservice-Konfiguration.
