Zum Inhalt springen

API

Zuletzt bearbeitet:

Quickchat AI bietet eine REST-API fuer den programmatischen Zugriff auf die Wissensbasis, Konversationen, KI-Aktionen und mehr Ihres KI-Assistenten.

Alle API-Endpunkte verwenden Bearer-Token-Authentifizierung. Fuegen Sie Ihren API-Token im Authorization-Header jeder Anfrage ein:

Authorization: Bearer <API_TOKEN>

Tokens werden im Quickchat Dashboard unter Integrations > API erstellt. Jeder Token ist ein JWT, das Ihre scenario_id enthaelt, sodass kein zusaetzlicher Identifier-Header erforderlich ist.

  • Token-Gueltigkeit: 52 Wochen ab Erstellung
  • Tokens koennen jederzeit ueber das Dashboard widerrufen werden
  • Jeder Token ist auf einen einzelnen KI-Assistenten (Szenario) beschraenkt
Endpoint GroupBase URL
Knowledge Base, AI Actions, File Upload, Importhttps://app.quickchat.ai/v1/api/
Conversationshttps://app.quickchat.ai/v1/api_core/
Chat (Legacy)https://chat.quickchat.ai/

Rate-Limits werden pro Token und pro Endpunkt angewendet.

TierLimitApplies To
READ120 Anfragen/MinGET- und List-Operationen
WRITE60 Anfragen/MinPOST, PATCH, PUT, DELETE
HEAVY20 Anfragen/MinDatei-Uploads, Importe, Scraping

Wenn ein Rate-Limit ueberschritten wird, gibt die API HTTP 429 Too Many Requests zurueck.

Listen-Endpunkte unterstuetzen Paginierung ueber Query-Parameter:

ParameterTypeDescription
limitintegerAnzahl der Elemente pro Seite
offsetintegerAnzahl der zu ueberspringenden Elemente

Paginierte Antworten folgen dieser Struktur:

{
"items": [],
"offset": 0,
"count": 100
}

Alle Fehler werden als JSON im folgenden Format zurueckgegeben:

{
"errors": {
"root": [
{
"message": "Description of the error",
"code": "ERROR_CODE"
}
]
}
}
StatusCodeDescription
400BAD_REQUESTUngueltige Eingabe oder fehlende Pflichtfelder
401PERMISSION_DENIEDUngueltiger, abgelaufener oder widerrufener Token
402PAYMENT_REQUIREDAktives Abonnement erforderlich
404NOT_FOUNDRessource nicht gefunden
409CONFLICTKonflikt bei der Operation (z. B. gleichzeitige Aenderung)
422VALIDATION_ERRORRequest-Body hat die Schema-Validierung nicht bestanden
429TOO_MANY_REQUESTSRate-Limit ueberschritten
500UNKNOWNInterner Serverfehler
503SERVICE_UNAVAILABLEVoruebergehende Nichtverfuegbarkeit

Der Chat-Endpunkt verwendet eine aeltere Authentifizierung mit api_key und scenario_id im Request-Body. Er verwendet keine Bearer-Tokens.

POST https://chat.quickchat.ai/chat

Request-Body

ParameterTypeRequiredDescription
api_keystringYesIhr API-Schluessel aus dem Dashboard
scenario_idstringYesID Ihres KI-Assistenten
textstringYesEingabenachricht des Nutzers
conv_idstringNoKonversations-ID. Weglassen, um eine neue Konversation zu starten
message_contextstringNoZusaetzlicher Pro-Nachricht-Kontext, der an die KI uebergeben wird
client_metadataobjectNoBenutzerdefinierte Schluessel-Wert-Paare (max. 5 Schluessel), die Nachrichten angehaengt werden
Terminal-Fenster
curl -X POST https://chat.quickchat.ai/chat \
-H 'Content-Type: application/json' \
-d '{
"api_key": "<API_KEY>",
"scenario_id": "<SCENARIO_ID>",
"text": "Hello!",
"conv_id": "abcd1234"
}'

Antwort 200 OK

{
"ord_number": 236,
"conv_id": "abcd1234",
"reply": "Hey there!"
}
FieldTypeDescription
ord_numberintegerFortlaufende Nachrichtennummer in der Konversation
conv_idstringKonversations-Identifier (verwenden, um die Konversation fortzusetzen)
replystringAntwort des KI-Assistenten

Rufen Sie die Konfiguration Ihrer Wissensbasis ab.

GET https://app.quickchat.ai/v1/api/knowledge_base/

Terminal-Fenster
curl https://app.quickchat.ai/v1/api/knowledge_base/ \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"one_word_description": "Support Agent",
"short_description": "A helpful customer support assistant.",
"ai_commands": ["Be polite", "Stay on topic"],
"retrain_state": null
}
FieldTypeDescription
one_word_descriptionstringKurzbezeichnung fuer die Wissensbasis
short_descriptionstringBeschreibung des Zwecks des KI-Assistenten
ai_commandsarray of stringsBenutzerdefinierte Anweisungen fuer die KI
retrain_statestring or nullAktueller Trainingsstatus

PATCH https://app.quickchat.ai/v1/api/knowledge_base/

Request-Body

ParameterTypeRequiredDescription
one_word_descriptionstringNoKurzbezeichnung fuer die Wissensbasis
short_descriptionstringNoBeschreibung des Zwecks des KI-Assistenten
ai_commandsarray of stringsNoBenutzerdefinierte Anweisungen fuer die KI
Terminal-Fenster
curl -X PATCH https://app.quickchat.ai/v1/api/knowledge_base/ \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"one_word_description": "Sales Bot"
}'

Antwort 200 OK — Gibt die aktualisierten Wissensbasis-Einstellungen zurueck (gleiches Schema wie Einstellungen abrufen).


POST https://app.quickchat.ai/v1/api/knowledge_base/articles/

Request-Body

ParameterTypeRequiredDescription
contentstringYesArtikelinhalt
typestringNo"Article" (Standard) oder "Paragraph"
titlestringNoArtikeltitel
Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/articles/ \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"content": "Our return policy allows returns within 30 days.",
"title": "Return Policy"
}'

Antwort 201 Created

{
"id": 1234,
"article_id": "abc-123",
"type": "Article",
"title": "Return Policy",
"description": "",
"content": "Our return policy allows returns within 30 days.",
"state": "draft",
"url": null,
"parent_id": null,
"parent_type": null,
"shortened": false,
"tags": [],
"created_timestamp": "2026-01-15",
"last_modified_timestamp": "2026-01-15"
}

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/

Query-Parameter

ParameterTypeRequiredDescription
limitintegerNoElemente pro Seite
offsetintegerNoZu ueberspringende Elemente
typesstringNoNach Typ filtern: Article, Paragraph
tagsstringNoNach Tag filtern
urlstringNoNach URL filtern
titlestringNoNach Titel filtern
querystringNoNach Inhalt suchen
Terminal-Fenster
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/?limit=10&offset=0' \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"items": [
{
"id": 1234,
"article_id": "abc-123",
"type": "Article",
"title": "Return Policy",
"description": "",
"state": "published",
"url": null,
"parent_id": null,
"parent_type": null,
"shortened": false,
"tags": ["policies"],
"created_timestamp": "2026-01-15",
"last_modified_timestamp": "2026-01-15"
}
],
"offset": 0,
"count": 1
}

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}

Terminal-Fenster
curl https://app.quickchat.ai/v1/api/knowledge_base/articles/1234 \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK — Gibt das vollstaendige Artikelobjekt zurueck (gleiches Schema wie die Antwort von Artikel erstellen).

PATCH https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}

Request-Body

ParameterTypeRequiredDescription
contentstringNoAktualisierter Artikelinhalt
titlestringNoAktualisierter Titel
tagsarray of stringsNoAktualisierte Tags
save_modestringNo"draft" (Standard) oder "publish"
Terminal-Fenster
curl -X PATCH https://app.quickchat.ai/v1/api/knowledge_base/articles/1234 \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"title": "Updated Return Policy",
"content": "Returns accepted within 60 days.",
"save_mode": "publish"
}'

Antwort 200 OK — Gibt das aktualisierte Artikelobjekt zurueck.

Einen oder mehrere Artikel anhand der ID loeschen.

DELETE https://app.quickchat.ai/v1/api/knowledge_base/articles/

Request-Body — JSON-Array mit Artikel-IDs.

Terminal-Fenster
curl -X DELETE https://app.quickchat.ai/v1/api/knowledge_base/articles/ \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '[1234, 5678]'

Antwort 200 OK

Artikelinhalte mit Textabgleich durchsuchen.

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/search

Query-Parameter

ParameterTypeRequiredDescription
querystringYesSuchanfrage
is_case_insensitivebooleanNoGross-/Kleinschreibung ignorieren (Standard: true)
with_title_url_and_tagsbooleanNoTitel/URL/Tags in die Suche einbeziehen (Standard: true)
strict_searchbooleanNoExakte Uebereinstimmung erfordern (Standard: false)
num_of_display_articlesintegerNoAnzahl der anzuzeigenden Artikel (Standard: 5)
num_of_data_articlesintegerNoAnzahl der zu durchsuchenden Artikel (Standard: 15)
Terminal-Fenster
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/search?query=return%20policy' \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"article_snippets": [
{
"article_id": 1234,
"expository_sentence": "Our return policy allows returns within 30 days.",
"query_words_ids": [
{"start_char": 4, "end_char": 10, "text": "return"}
]
}
],
"article_snapshots": {
"items": [],
"offset": 0,
"count": 1
}
}

Alle Absaetze (aufgeteilte Inhalte) in der Wissensbasis auflisten.

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/paragraphs

Query-Parameter

ParameterTypeRequiredDescription
limitintegerNoElemente pro Seite
offsetintegerNoZu ueberspringende Elemente
querystringNoNach Inhalt filtern
Terminal-Fenster
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/paragraphs?limit=10' \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"items": [
{
"id": 1,
"content": "Our return policy allows returns within 30 days."
}
],
"offset": 0,
"count": 1
}

Verwalten Sie sprachspezifische URLs fuer Artikel. Diese URLs ermoeglichen die Verknuepfung von Artikeln mit lokalisierten Versionen des Inhalts.

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}/lang_urls/{language}

Terminal-Fenster
curl https://app.quickchat.ai/v1/api/knowledge_base/articles/1234/lang_urls/en \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"url": "https://example.com/en/return-policy"
}

POST https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}/lang_urls/{language}

Request-Body

ParameterTypeRequiredDescription
urlstringYesURL fuer die sprachspezifische Version
Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/articles/1234/lang_urls/en \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{"url": "https://example.com/en/return-policy"}'

Antwort 200 OK

{
"url": "https://example.com/en/return-policy"
}

PATCH https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}/lang_urls/{language}

Request-Body

ParameterTypeRequiredDescription
urlstringYesAktualisierte URL

Antwort 200 OK — Gibt das aktualisierte URL-Objekt zurueck.

DELETE https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}/lang_urls/{language}

Terminal-Fenster
curl -X DELETE https://app.quickchat.ai/v1/api/knowledge_base/articles/1234/lang_urls/en \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK


Alle in den Wissensbasis-Artikeln verwendeten Tags abrufen.

GET https://app.quickchat.ai/v1/api/knowledge_base/tags/

Terminal-Fenster
curl https://app.quickchat.ai/v1/api/knowledge_base/tags/ \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

["policies", "faq", "product-info"]

Dateien hochladen, die verarbeitet und als Artikel zur Wissensbasis hinzugefuegt werden.

POST https://app.quickchat.ai/v1/api/knowledge_base/file_upload_api/pdf

Eine PDF-Datei hochladen. Der Inhalt wird extrahiert und als Artikel hinzugefuegt.

Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/file_upload_api/pdf \
-H 'Authorization: Bearer <API_TOKEN>' \
-F 'pdf_file=@document.pdf'

Antwort 200 OK

{
"status": "success",
"message": "File processed successfully.",
"article": {
"id": 1234,
"title": "document.pdf"
}
}
FieldTypeDescription
statusstringVerarbeitungsstatus
messagestringLesbare Ergebnisnachricht
articleobjectDer erstellte Artikel

POST https://app.quickchat.ai/v1/api/knowledge_base/file_upload_api/

Eine unterstuetzte Datei (PDF, DOCX) hochladen. Der Inhalt wird extrahiert und als Artikel hinzugefuegt.

Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/file_upload_api/ \
-H 'Authorization: Bearer <API_TOKEN>' \
-F 'file=@document.docx'

Antwort 200 OK — Gleiches Schema wie PDF hochladen.


Inhalte aus externen Quellen in die Wissensbasis importieren. Diese Endpunkte verarbeiten Inhalte asynchron.

Eine einzelne Webseite oder eine gesamte Website scrapen und den Inhalt importieren.

POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/website

Request-Body

ParameterTypeRequiredDescription
urlstringYesZu scrapende URL
modestringNo"individual" (Standard), "site_wide" oder "individual_with_summary"
phrasesarray of stringsNoZu extrahierende Schluesselphrasen
html_selectorstringNoCSS-Selektor fuer bestimmte Inhalte
Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/website \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"url": "https://example.com/docs",
"mode": "individual"
}'

Antwort 200 OK

{
"status": "success",
"url": "https://example.com/docs",
"article": {}
}

Das Transkript eines YouTube-Videos importieren.

POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/youtube

Request-Body

ParameterTypeRequiredDescription
urlstringYesYouTube-Video-URL
toast_process_uuidstringYesUUID v4 zur Nachverfolgung des Importvorgangs
Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/youtube \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"toast_process_uuid": "550e8400-e29b-41d4-a716-446655440000"
}'

Antwort 202 Accepted — Das Transkript wird asynchron verarbeitet.

Inhalte von allen Links in einer XML-Sitemap importieren.

POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/site-map

Request-Body

ParameterTypeRequiredDescription
site_mapstringYesURL einer XML-Sitemap
link_filter_regexstringNoRegex zum Filtern der zu importierenden Links (Standard: ".*")
html_selectorstringNoCSS-Selektor fuer bestimmte Inhalte
summarizebooleanNoOb importierte Inhalte zusammengefasst werden sollen (Standard: false)
Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/site-map \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"site_map": "https://example.com/sitemap.xml"
}'

Antwort 200 OK

{
"status": "success",
"links": ["https://example.com/page1", "https://example.com/page2"]
}

Inhalte von einer bestimmten Liste von URLs importieren.

POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/scrape-list

Request-Body

ParameterTypeRequiredDescription
linksarray of stringsYesListe der zu scrapenden URLs (nicht leer)
tagsarray of stringsNoTags, die importierten Artikeln zugewiesen werden
html_selectorstringNoCSS-Selektor fuer bestimmte Inhalte
summarizebooleanNoOb importierte Inhalte zusammengefasst werden sollen (Standard: false)
Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/import_external/scrape-list \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"links": ["https://example.com/page1", "https://example.com/page2"],
"tags": ["imported"]
}'

Antwort 200 OK

{
"status": "success",
"links": ["https://example.com/page1", "https://example.com/page2"]
}

Externe Inhaltsquellen (z. B. Intercom, Shopify) verwalten, die Artikel mit Ihrer Wissensbasis synchronisieren.

Der Pfadparameter {source} akzeptiert Werte wie "intercom", "shopify" usw.

POST https://app.quickchat.ai/v1/api/knowledge_base/sources/{source}/import

Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/sources/intercom/import \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{}'

Antwort 200 OK — Gibt eine Liste importierter Artikel-Snapshots zurueck.

POST https://app.quickchat.ai/v1/api/knowledge_base/sources/{source}/delete

Entfernt alle von der angegebenen Quelle importierten Artikel.

Antwort 204 No Content

Lokale Artikel mit der externen Quelle vergleichen, um Aenderungen zu erkennen.

POST https://app.quickchat.ai/v1/api/knowledge_base/sources/{source}/articles_diff

Antwort 200 OK

[
{
"internal_article_diff": "CHANGED",
"external_article_diff": "UNCHANGED",
"article_snapshot": {}
}
]
FieldTypeDescription
internal_article_diffstring"CHANGED" oder "UNCHANGED"
external_article_diffstring"CHANGED", "UNCHANGED" oder "REMOVED"
article_snapshotobjectArtikel-Snapshot-Daten

Dedizierte Endpunkte zur Verwaltung der Intercom-Wissensbasis-Integration.

Inhalte bestehender Artikel erneut von Intercom abrufen.

POST https://app.quickchat.ai/v1/api/knowledge_base/intercom/refresh_articles

Request-Body

ParameterTypeRequiredDescription
article_idsarray of integersNoBestimmte Artikel-IDs zum Aktualisieren (Standard: alle)
fetch_new_articlesbooleanNoOb neue Artikel abgerufen werden sollen (Standard: true)

Antwort 204 No Content

Alle Artikel von Intercom importieren.

POST https://app.quickchat.ai/v1/api/knowledge_base/intercom/import

Antwort 200 OK — Gibt eine Liste importierter Artikel-Snapshots zurueck.

Alle von Intercom stammenden Artikel aus der Wissensbasis entfernen.

POST https://app.quickchat.ai/v1/api/knowledge_base/intercom/delete

Antwort 204 No Content

Lokale Artikel mit Intercom vergleichen, um Aenderungen zu erkennen.

GET https://app.quickchat.ai/v1/api/knowledge_base/intercom/articles_diff

Terminal-Fenster
curl https://app.quickchat.ai/v1/api/knowledge_base/intercom/articles_diff \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK — Gibt eine Liste von Artikel-Diff-Objekten zurueck (gleiches Schema wie Quell-Artikel vergleichen).


GET https://app.quickchat.ai/v1/api_core/conversations

Query-Parameter

ParameterTypeRequiredDescription
limitintegerNoElemente pro Seite
offsetintegerNoZu ueberspringende Elemente
querystringNoNach Ordnungsnummer, UUID oder Nachrichtentext suchen
assignee_typestringNo"ai_assistant", "human_operator" oder "unassigned"
sourcestringNo"widget", "slack", "telegram", "whatsapp" usw.
resolution_statusstringNo"open" oder "resolved"
created_timestamp_start_datedatetimeNoNach Erstellungsdatum filtern (Beginn)
created_timestamp_end_datedatetimeNoNach Erstellungsdatum filtern (Ende)
last_message_at_start_datedatetimeNoNach Datum der letzten Nachricht filtern (Beginn)
last_message_at_end_datedatetimeNoNach Datum der letzten Nachricht filtern (Ende)
most_frequent_languagestringNoNach erkannter Sprache filtern
Terminal-Fenster
curl 'https://app.quickchat.ai/v1/api_core/conversations?limit=10&resolution_status=open' \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"items": [
{
"id": "conv-uuid-1234",
"ord": 42,
"created_at": "2026-01-15T10:30:00Z",
"last_message_at": "2026-01-15T10:35:00Z",
"title": "Return policy question",
"source": "widget",
"terminated": false,
"resolution_status": "open",
"has_unread_messages": true,
"assignee": {
"type": "ai_assistant"
},
"visitor_name": "John",
"visitor_email": "john@example.com",
"visitor_phone_number": null,
"visitor_label": null
}
],
"offset": 0,
"count": 42
}

GET https://app.quickchat.ai/v1/api_core/conversations/{conversation_id}/

Terminal-Fenster
curl https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/ \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"id": "conv-uuid-1234",
"ord": 42,
"created_at": "2026-01-15T10:30:00Z",
"last_message_at": "2026-01-15T10:35:00Z",
"title": "Return policy question",
"source": "widget",
"terminated": false,
"resolution_status": "open",
"has_unread_messages": true,
"assignee": {
"type": "ai_assistant"
},
"url": null,
"client_metadata": {"userId": 12},
"data_gathering": null,
"last_visitor_message_at": "2026-01-15T10:34:00Z",
"visitor_name": "John",
"visitor_email": "john@example.com",
"visitor_phone_number": null,
"visitor_label": null
}

Benutzerdefinierte Metadaten fuer Konversationen speichern und abrufen. Metadaten werden anhand eines JSON-Schemas validiert, sofern eines im Dashboard konfiguriert ist.

GET https://app.quickchat.ai/v1/api_core/conversations/{conv_id}/metadata

Terminal-Fenster
curl https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/metadata \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK

{
"metadata": {
"ticket_id": "T-1234",
"priority": "high"
}
}

Metadaten fuer eine Konversation erstellen oder aktualisieren.

POST https://app.quickchat.ai/v1/api_core/conversations/{conv_id}/metadata

Request-Body

ParameterTypeRequiredDescription
metadataobjectYesSchluessel-Wert-Metadaten zum Speichern
Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/metadata \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"metadata": {
"ticket_id": "T-1234",
"priority": "high"
}
}'

Antwort 200 OK

{
"metadata": {
"ticket_id": "T-1234",
"priority": "high"
}
}

Eine neue Wissensbasis-KI-Aktion erstellen. KB-KI-Aktionen ermoeglichen es der KI, getaggte Teilmengen der Wissensbasis zu durchsuchen, wenn sie ausgeloest werden.

POST https://app.quickchat.ai/v1/api/ai_actions/knowledge_base

Terminal-Fenster
curl -X POST https://app.quickchat.ai/v1/api/ai_actions/knowledge_base \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{}'

Antwort 201 Created

{
"id": 1,
"name": "",
"description": "",
"icon": null,
"icon_color": null,
"is_active": false,
"is_valid": false,
"tag": null,
"parameter_description": "",
"type": "knowledge_base"
}
FieldTypeDescription
idintegerKI-Aktions-Identifier
namestringAnzeigename (max. 100 Zeichen)
descriptionstringBeschreibung, wann die Aktion ausgeloest werden soll (max. 1000 Zeichen)
iconstring or nullIcon-Identifier
icon_colorstring or nullIcon-Farbe
is_activebooleanOb die Aktion aktiviert ist
is_validbooleanOb die Aktion korrekt konfiguriert ist
tagstring or nullWissensbasis-Tag zum Filtern von Artikeln (max. 255 Zeichen)
parameter_descriptionstringBeschreibung des Parameters, den die KI extrahiert (max. 500 Zeichen)
typestringImmer "knowledge_base"

GET https://app.quickchat.ai/v1/api/ai_actions/{action_id}/knowledge_base

Terminal-Fenster
curl https://app.quickchat.ai/v1/api/ai_actions/1/knowledge_base \
-H 'Authorization: Bearer <API_TOKEN>'

Antwort 200 OK — Gibt das KI-Aktions-Objekt zurueck (gleiches Schema wie die Antwort von KB-KI-Aktion erstellen).

PUT https://app.quickchat.ai/v1/api/ai_actions/{action_id}/knowledge_base

Request-Body

ParameterTypeRequiredDescription
namestringYesAnzeigename (max. 100 Zeichen)
descriptionstringYesWann die Aktion ausgeloest werden soll (max. 1000 Zeichen)
parameter_descriptionstringYesParameterbeschreibung (max. 500 Zeichen)
tagstringYesWissensbasis-Tag zum Filtern (max. 255 Zeichen)
Terminal-Fenster
curl -X PUT https://app.quickchat.ai/v1/api/ai_actions/1/knowledge_base \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"name": "Search Returns",
"description": "Search the return policy articles when customer asks about returns.",
"parameter_description": "The return-related query from the customer",
"tag": "returns"
}'

Antwort 200 OK — Gibt das aktualisierte KI-Aktions-Objekt zurueck.