ChatbotProfile
Liefert eine Liste aller ChatbotProfiles-Objekte.
GET/api/chat/chatbot_profile
Query-Parameter
idstring | , SCOPE_LIST |
namestring | , SCOPE_LIST |
modestring | admin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums). | Erforderliches Zugriffsrecht: SCOPE, SCOPE_LIST |
activestring | , SCOPE_LIST |
deletedboolean | Diese Eigenschaft markiert eine Entität als gelöscht / archiviert | Benötigtes Zugriffsrecht: SCOPE, SCOPE_LIST | Mehrere Standardwerte: false, false, |
replyModestring | always | mention | question – siehe REPLY_MODE_*-Konstanten. | Erforderliches Zugriffsrecht: SCOPE, SCOPE_LIST |
createdstring | , SCOPE_LIST |
updatedstring | , SCOPE_LIST |
searchStringstring | Text, nach dem in der Liste gesucht wird |
orderFieldNamestring | Name des Bestellfelds |
orderFieldSortstring | SortiermodusErlaubt: DESCASC |
pageinteger | Seite der Liste |
pageSizeinteger | Anzahl der Einträge je Seite |
withMaxPageNumberstring | gibt die Anzahl verfügbarer Seiten als Header zurück, wenn dies gesetzt ist |
Antworten
200Liefert eine Liste aller ChatbotProfiles-Objekte.array<ChatbotProfile>
Felder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
curl --request GET \
--url https://eure-instanz.iw-erp.de/api/chat/chatbot_profile \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/chatbot_profile_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatbotProfileController.getAll();
if (result.success) {
print(result.data);
}[
{
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string",
"mode": "string",
"system_prompt": "string",
"model": "string",
"max_tokens": 1
}
]ChatbotProfile neu anlegen
POST/api/chat/chatbot_profile
Request-Body application/json
dataChatbotProfileFelder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
Antworten
200ChatbotProfile neu anlegenChatbotProfile
Felder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
curl --request POST \
--url https://eure-instanz.iw-erp.de/api/chat/chatbot_profile \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
}
}
'const options = {
method: 'POST',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
disclaimer_text: 'Text',
name: 'Beispiel',
image_url: 'https://vynst.de',
token: 'string',
preferred_color_hex: 'string'
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile"
payload = { "data": {
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile', [
'body' => '{"data":{"id":42,"disclaimer_text":"Text","name":"Beispiel","image_url":"https://vynst.de","token":"string","preferred_color_hex":"string"}}',
'headers' => [
'content-type' => 'application/json',
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile")
.post(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile"
payload := strings.NewReader("{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/chatbot_profile_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/chatbot_profile.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatbotProfileController.post(ChatbotProfile.fromJson({
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
}));
if (result.success) {
print(result.data);
}{
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string",
"mode": "string",
"system_prompt": "string",
"model": "string",
"max_tokens": 1
}Die MCP-Tools, die ein Profil im angegebenen Modus auswählen kann - Titel und Beschreibung kommen aus dem eingebauten MCP-Server.
GET/api/chat/chatbot_profile_tools
Query-Parameter
modePflichtstring | admin, member oder public |
Antworten
200Liste der MCP-Tools, die ein Chatbot-Profil des Modus verwenden darfarray<object>
Felder anzeigen (6)
namestringtitlestringdescriptionstringpublicbooleanread_onlybooleanavailablebooleanin dieser Installation aktiviert; deaktivierte Tools können ausgewählt werden und funktionieren, sobald ihre Einstellung aktiviert ist
curl --request GET \
--url 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile_tools?mode=string' \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile_tools?mode=string', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile_tools?mode=string"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile_tools?mode=string', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile_tools?mode=string"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile_tools?mode=string")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile_tools?mode=string"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/chatbot_profile_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatbotProfileController.getTools('string');
if (result.success) {
print(result.data);
}[
{
"name": "Beispiel",
"title": "Beispiel",
"description": "Text",
"public": true,
"read_only": true,
"available": true
}
]Liefert einen einzelnen ChatbotProfile-Eintrag.
GET/api/chat/chatbot_profile/{identifier}
Pfad-Parameter
identifierPflichtstring |
Antworten
200Gibt ein einzelnes ChatbotProfile-Objekt zurück.ChatbotProfile
Felder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
curl --request GET \
--url https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/chatbot_profile_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatbotProfileController.get('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string",
"mode": "string",
"system_prompt": "string",
"model": "string",
"max_tokens": 1
}Aktualisiert einen vorhandenen ChatbotProfile-Eintrag.
PUT/api/chat/chatbot_profile/{identifier}
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
dataChatbotProfileFelder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
Antworten
200ChatbotProfile einzeln aktualisierenChatbotProfile
Felder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
curl --request PUT \
--url https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
}
}
'const options = {
method: 'PUT',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
disclaimer_text: 'Text',
name: 'Beispiel',
image_url: 'https://vynst.de',
token: 'string',
preferred_color_hex: 'string'
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
payload = { "data": {
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('PUT', 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', [
'body' => '{"data":{"id":42,"disclaimer_text":"Text","name":"Beispiel","image_url":"https://vynst.de","token":"string","preferred_color_hex":"string"}}',
'headers' => [
'content-type' => 'application/json',
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Put,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42")
.put(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
payload := strings.NewReader("{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/chatbot_profile_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/chatbot_profile.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatbotProfileController.put(ChatbotProfile.fromJson({
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
}));
if (result.success) {
print(result.data);
}{
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string",
"mode": "string",
"system_prompt": "string",
"model": "string",
"max_tokens": 1
}Aktualisiert einen vorhandenen ChatbotProfile-Eintrag.
PATCH/api/chat/chatbot_profile/{identifier}
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
dataChatbotProfileFelder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
Antworten
200ChatbotProfile einzeln aktualisierenChatbotProfile
Felder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
curl --request PATCH \
--url https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
}
}
'const options = {
method: 'PATCH',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
disclaimer_text: 'Text',
name: 'Beispiel',
image_url: 'https://vynst.de',
token: 'string',
preferred_color_hex: 'string'
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
payload = { "data": {
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
} }
headers = {
"x-iw-jwt-token": "<TOKEN>",
"content-type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('PATCH', 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', [
'body' => '{"data":{"id":42,"disclaimer_text":"Text","name":"Beispiel","image_url":"https://vynst.de","token":"string","preferred_color_hex":"string"}}',
'headers' => [
'content-type' => 'application/json',
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Patch,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42")
.patch(body)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
payload := strings.NewReader("{\"data\":{\"id\":42,\"disclaimer_text\":\"Text\",\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"token\":\"string\",\"preferred_color_hex\":\"string\"}}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit package:http (kein Controller im Package iw_erp_api)
import 'dart:convert';
import 'package:http/http.dart' as http;
final response = await http.patch(
Uri.parse('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42'),
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: jsonEncode({
"data": {
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string"
}
}),
);
print(response.body);{
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string",
"mode": "string",
"system_prompt": "string",
"model": "string",
"max_tokens": 1
}Ein einzelnes ChatbotProfile löschen
DELETE/api/chat/chatbot_profile/{identifier}
Pfad-Parameter
identifierPflichtstring |
Antworten
200Gibt ein einzelnes ChatbotProfile-Objekt zurück.ChatbotProfile
Felder anzeigen (18)
idintegerPrimärschlüssel des Chatbot-Profils. Interne ID.
tokenstringToken, das das Chatbot-Profil identifiziert.
preferred_color_hexstringBevorzugte Farbe des Chatbots als Hexwert.
modestringadmin | member | public – siehe MODE_*-Konstanten. Der Modus bestimmt, in welchen Räumen das Profil überhaupt eingesetzt werden darf (Bot-Modus <= Vertrauensstufe des Raums).
system_promptstringSystem-Prompt mit Platzhaltern ([[PERSON_INFO]], [[BASIC_PRINCIPLES]], [[ROOM_INFO]], [[TODAY]], [[TOOL_HINTS]], ...).
modelstringModell-ID in LiteLLM-Notation. Leer heisst: Setting chatbot_default_model.
max_tokensintegerMaximale Anzahl Tokens pro Antwort.
max_tool_iterationsintegerObergrenze Tool-Aufrufe pro Turn. Leer heisst: Setting chatbot_tool_max_iterations.
max_context_messagesintegerWie viele abgeschlossene Nachrichten als Kontext an das Modell gehen.
reply_modestringalways | mention | question – siehe REPLY_MODE_*-Konstanten.
requires_opt_inbooleanMuss die Person vor der Nutzung einwilligen? Bei mode=member erzwungen true.
disclaimer_textstringWird beim Beitritt als erste internal_system-Nachricht im Raum gepostet.
activebooleanOb das Chatbot-Profil aktiv ist.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
namestringName der Einheit.
image_urlstringURL des Bildes des Datensatzes.
curl --request DELETE \
--url https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42 \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'DELETE', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.delete(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('DELETE', 'https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Delete,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42")
.delete(null)
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/chat/chatbot_profile/42"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/chatbot_profile_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatbotProfileController.delete('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"disclaimer_text": "Text",
"name": "Beispiel",
"image_url": "https://vynst.de",
"token": "string",
"preferred_color_hex": "string",
"mode": "string",
"system_prompt": "string",
"model": "string",
"max_tokens": 1
}