Chatroom
Liefert eine Liste aller Chatrooms-Objekte.
GET/api/chat/chatroom
Query-Parameter
namestring | _LIST, LOGGED_IN_LIST, C1, C2 |
createdstring | _LIST, LOGGED_IN_LIST, C1, C2 |
companystring | _LIST, LOGGED_IN_LIST, C1, C2 |
eventstring | _LIST, LOGGED_IN_LIST, C1, C2 |
deletedboolean | Diese Eigenschaft markiert eine Entität als gelöscht / archiviert | Benötigtes Zugriffsrecht: SCOPE_LIST, C1 |
trustLevelstring | Berechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper. | _LIST, C1 |
handoverAtstring | Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper. | _LIST, C1 |
personstring | Die Person, deren persönlicher Assistenten-Raum das hier ist. Genau eine Person plus Bot - die Logik dazu folgt, das Feld steht schon. | Erfordert Zugriffs-Tag: SCOPE_LIST, C1 |
mediaQuestionnaireAnswerstring | _LIST, C1 |
idstring | Erfordert Zugriffsrecht: C1, C2 |
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 Chatrooms-Objekte.array<Chatroom3>
Felder anzeigen (20)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom \
--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/chatroom', 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/chatroom"
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/chatroom', [
'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/chatroom"),
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/chatroom")
.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/chatroom"
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/chatroom_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 ChatroomController.getAll();
if (result.success) {
print(result.data);
}[
{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"support_status": "string",
"token": "string",
"notification_token": "string"
}
]Chatroom neu anlegen
POST/api/chat/chatroom
Request-Body application/json
dataChatroom4Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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
200Chatroom neu anlegenChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true
}
}
'const options = {
method: 'POST',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
name: 'Beispiel',
image_url: 'https://vynst.de',
unread_count: 1,
is_unread: true,
chatbot_active: true
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom', 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/chatroom"
payload = { "data": {
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": True,
"chatbot_active": True
} }
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/chatroom', [
'body' => '{"data":{"id":42,"name":"Beispiel","image_url":"https://vynst.de","unread_count":1,"is_unread":true,"chatbot_active":true}}',
'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/chatroom"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}")
{
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,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatroom")
.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/chatroom"
payload := strings.NewReader("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}")
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/chatroom_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/chatroom.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatroomController.post(Chatroom.fromJson({
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true
}));
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Liefert einen einzelnen Chatroom-Eintrag.
GET/api/chat/chatroom/{identifier}
Pfad-Parameter
identifierPflichtstring |
Antworten
200Gibt ein einzelnes Chatroom-Objekt zurück.Chatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom_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 ChatroomController.get('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Aktualisiert einen vorhandenen Chatroom-Eintrag.
PUT/api/chat/chatroom/{identifier}
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
dataChatroom4Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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
200Chatroom einzeln aktualisierenChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true
}
}
'const options = {
method: 'PUT',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
name: 'Beispiel',
image_url: 'https://vynst.de',
unread_count: 1,
is_unread: true,
chatbot_active: true
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom/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/chatroom/42"
payload = { "data": {
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": True,
"chatbot_active": True
} }
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/chatroom/42', [
'body' => '{"data":{"id":42,"name":"Beispiel","image_url":"https://vynst.de","unread_count":1,"is_unread":true,"chatbot_active":true}}',
'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/chatroom/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}")
{
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,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatroom/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/chatroom/42"
payload := strings.NewReader("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}")
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/chatroom_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/chatroom.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await ChatroomController.put(Chatroom.fromJson({
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true
}));
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Aktualisiert einen vorhandenen Chatroom-Eintrag.
PATCH/api/chat/chatroom/{identifier}
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
dataChatroom4Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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
200Chatroom einzeln aktualisierenChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/42 \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true
}
}
'const options = {
method: 'PATCH',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
id: 42,
name: 'Beispiel',
image_url: 'https://vynst.de',
unread_count: 1,
is_unread: true,
chatbot_active: true
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom/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/chatroom/42"
payload = { "data": {
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": True,
"chatbot_active": True
} }
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/chatroom/42', [
'body' => '{"data":{"id":42,"name":"Beispiel","image_url":"https://vynst.de","unread_count":1,"is_unread":true,"chatbot_active":true}}',
'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/chatroom/42"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}")
{
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,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatroom/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/chatroom/42"
payload := strings.NewReader("{\"data\":{\"id\":42,\"name\":\"Beispiel\",\"image_url\":\"https://vynst.de\",\"unread_count\":1,\"is_unread\":true,\"chatbot_active\":true}}")
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/chatroom/42'),
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: jsonEncode({
"data": {
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true
}
}),
);
print(response.body);{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Einen einzelnen Chatroom löschen
DELETE/api/chat/chatroom/{identifier}
Pfad-Parameter
identifierPflichtstring |
Antworten
200Gibt ein einzelnes Chatroom-Objekt zurück.Chatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom/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/chatroom_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 ChatroomController.delete('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Liefert den persoenlichen Assistenten-Raum der eingeloggten Person und legt ihn beim ersten Aufruf an.
POST/api/chat/chatroom/assistant
Read genuegt: der Aufruf beruehrt ausschliesslich die eigene Person, das Profil kommt aus den Einstellungen und ist nicht frei waehlbar.
Antworten
200Der persönliche Assistenten-Raum der eingeloggten PersonChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/assistant \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom/assistant', 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/chatroom/assistant"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, 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/chatroom/assistant', [
'headers' => [
'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/chatroom/assistant"),
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/chatroom/assistant")
.post(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/chatroom/assistant"
req, _ := http.NewRequest("POST", 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/chatroom_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 ChatroomController.getOrCreateAssistant();
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Status und Zuweisung eines Support-Raums setzen (chatroom_support_inbox_enabled, sonst 8618).
PUT/api/chat/chatroom/{identifier}/support
Nur gesendete Felder aendern sich, null leert sie. Fehler: 8625 kein Support-Raum, 8626 unbekannter Status, ungueltiges Datum oder unbekannte Person bzw. Gruppe.
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
statusstringErlaubt:
opensnoozedresolvedsnoozed_untilstring (date-time)Nur für snoozed; leer = bis der Kunde schreibt
assigned_userintegerBenutzer-ID, null = niemand
assigned_groupintegerBenutzergruppen-ID, null = keine
Antworten
200Der Raum mit neuem Status und neuer ZuweisungChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/42/support \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"status": "open",
"snoozed_until": "2026-10-15T09:30:00+02:00",
"assigned_user": 1,
"assigned_group": 1
}
'const options = {
method: 'PUT',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
status: 'open',
snoozed_until: '2026-10-15T09:30:00+02:00',
assigned_user: 1,
assigned_group: 1
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom/42/support', 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/chatroom/42/support"
payload = {
"status": "open",
"snoozed_until": "2026-10-15T09:30:00+02:00",
"assigned_user": 1,
"assigned_group": 1
}
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/chatroom/42/support', [
'body' => '{"status":"open","snoozed_until":"2026-10-15T09:30:00+02:00","assigned_user":1,"assigned_group":1}',
'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/chatroom/42/support"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"status\":\"open\",\"snoozed_until\":\"2026-10-15T09:30:00+02:00\",\"assigned_user\":1,\"assigned_group\":1}")
{
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, "{\"status\":\"open\",\"snoozed_until\":\"2026-10-15T09:30:00+02:00\",\"assigned_user\":1,\"assigned_group\":1}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatroom/42/support")
.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/chatroom/42/support"
payload := strings.NewReader("{\"status\":\"open\",\"snoozed_until\":\"2026-10-15T09:30:00+02:00\",\"assigned_user\":1,\"assigned_group\":1}")
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/chatroom_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 ChatroomController.setSupport('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Status und Zuweisung eines Support-Raums setzen (chatroom_support_inbox_enabled, sonst 8618).
PATCH/api/chat/chatroom/{identifier}/support
Nur gesendete Felder aendern sich, null leert sie. Fehler: 8625 kein Support-Raum, 8626 unbekannter Status, ungueltiges Datum oder unbekannte Person bzw. Gruppe.
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
statusstringErlaubt:
opensnoozedresolvedsnoozed_untilstring (date-time)Nur für snoozed; leer = bis der Kunde schreibt
assigned_userintegerBenutzer-ID, null = niemand
assigned_groupintegerBenutzergruppen-ID, null = keine
Antworten
200Der Raum mit neuem Status und neuer ZuweisungChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/42/support \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"status": "open",
"snoozed_until": "2026-10-15T09:30:00+02:00",
"assigned_user": 1,
"assigned_group": 1
}
'const options = {
method: 'PATCH',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
status: 'open',
snoozed_until: '2026-10-15T09:30:00+02:00',
assigned_user: 1,
assigned_group: 1
})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom/42/support', 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/chatroom/42/support"
payload = {
"status": "open",
"snoozed_until": "2026-10-15T09:30:00+02:00",
"assigned_user": 1,
"assigned_group": 1
}
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/chatroom/42/support', [
'body' => '{"status":"open","snoozed_until":"2026-10-15T09:30:00+02:00","assigned_user":1,"assigned_group":1}',
'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/chatroom/42/support"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"status\":\"open\",\"snoozed_until\":\"2026-10-15T09:30:00+02:00\",\"assigned_user\":1,\"assigned_group\":1}")
{
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, "{\"status\":\"open\",\"snoozed_until\":\"2026-10-15T09:30:00+02:00\",\"assigned_user\":1,\"assigned_group\":1}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatroom/42/support")
.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/chatroom/42/support"
payload := strings.NewReader("{\"status\":\"open\",\"snoozed_until\":\"2026-10-15T09:30:00+02:00\",\"assigned_user\":1,\"assigned_group\":1}")
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/chatroom/42/support'),
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: jsonEncode({
"status": "open",
"snoozed_until": "2026-10-15T09:30:00+02:00",
"assigned_user": 1,
"assigned_group": 1
}),
);
print(response.body);{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Wem ein Support-Raum zugewiesen werden kann: Benutzergruppen mit Leserecht auf den Chat und ihre Benutzer (chatroom_support_inbox_enabled, sonst 8618).
GET/api/chat/chatroom_support_assignees
Antworten
200users (id, name, group_id) und groups (id, name)
curl --request GET \
--url https://eure-instanz.iw-erp.de/api/chat/chatroom_support_assignees \
--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/chatroom_support_assignees', 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/chatroom_support_assignees"
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/chatroom_support_assignees', [
'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/chatroom_support_assignees"),
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/chatroom_support_assignees")
.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/chatroom_support_assignees"
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/chatroom_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 ChatroomController.getSupportAssignees();
if (result.success) {
print(result.data);
}Den Verlauf eines anonymen Besuchers in den Support-Chat des Haushalts der Person uebernehmen (chatroom_support_merge_visitor_enabled, sonst 8618). Der Besucher verliert den Zugang zum alten Raum, der geschlossen wird. Fehler: 8627 kein Besucher im Raum, Person ohne Haushalt.
POST/api/chat/chatroom/{identifier}/merge_visitor
Pfad-Parameter
identifierPflichtstring |
Request-Body application/json
personintegerCRM-Person, der der Besucher entspricht
Antworten
200Der Support-Chat des Haushalts mit dem übernommenen VerlaufChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/42/merge_visitor \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '{"person":1}'const options = {
method: 'POST',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({person: 1})
};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom/42/merge_visitor', 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/chatroom/42/merge_visitor"
payload = { "person": 1 }
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/chatroom/42/merge_visitor', [
'body' => '{"person":1}',
'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/chatroom/42/merge_visitor"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"person\":1}")
{
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, "{\"person\":1}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/chat/chatroom/42/merge_visitor")
.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/chatroom/42/merge_visitor"
payload := strings.NewReader("{\"person\":1}")
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/chatroom_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 ChatroomController.mergeVisitor('42', 42);
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Das Team uebernimmt einen Support-Raum: die KI zieht sich zurueck, ohne dass schon jemand geschrieben hat (Support-Modus, "Uebernehmen").
POST/api/chat/chatroom/{identifier}/handover
Pfad-Parameter
identifierPflichtstring |
Antworten
200Die KI übergibt den Raum an das TeamChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/42/handover \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'POST', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/chat/chatroom/42/handover', 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/chatroom/42/handover"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.post(url, 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/chatroom/42/handover', [
'headers' => [
'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/chatroom/42/handover"),
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/chatroom/42/handover")
.post(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/chatroom/42/handover"
req, _ := http.NewRequest("POST", 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/chatroom_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 ChatroomController.handover('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}Die KI antwortet im Raum wieder.
DELETE/api/chat/chatroom/{identifier}/handover
Pfad-Parameter
identifierPflichtstring |
Antworten
200Die KI antwortet im Raum wiederChatroom4
Felder anzeigen (22)
unread_countintegeris_unreadbooleanchatbot_activebooleanAntwortet hier gerade die KI? Für den Support-Modus der Verwaltung: dort kann das Team den Raum dann übernehmen.
member_managedbooleanEvent- und freie Gruppenraeume verwalten Mitglieder bzw. Raum-Admins mit (verlassen, aufnehmen); Support-, Assistenten- und Fragebogen-Raeume nur die Verwaltung. Die Apps blenden danach die Raum-Optionen ein.
is_support_roombooleanIst das der Haushalts-Chat mit dem Verein (Support-Chat)? Die Kunden-Apps sehen die Firma nicht und zeigen damit den Hinweis auf die Buerozeiten (chatroom_support_office_hours_enabled).
support_statusstringDer Status, wie die Inbox ihn zeigt: ein abgelaufenes Zurückstellen zählt als offen.
idintegerPrimärschlüssel des Chatraums. Interne ID.
tokenstringToken, das den Chatraum identifiziert.
notification_tokenstringToken für Benachrichtigungen des Chatraums.
participantsarray<ChatroomParticipant4>Teilnehmende des Chatraums.
Felder anzeigen (30)
idintegerPrimärschlüssel des Teilnehmers. Interne ID.
participant_typestringArt des Teilnehmers.
public_sessionPublicSession4Öffentliche Sitzung des Teilnehmers.
first_namestringVorname des Teilnehmers.
last_namestringNachname des Teilnehmers.
nicknamestringSpitzname der Teilnehmenden.
preferred_color_hexstringBevorzugte Farbe des Teilnehmers als Hexwert.
avatar_tokenstringToken des Avatarbildes.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch diesen Teilnehmer
message_count_readintegerAnzahl der von der teilnehmenden Person gelesenen Nachrichten.
room_adminbooleanKennzeichen, ob dieser Teilnehmer Nachrichten im Chatraum löschen, den Chatraum umbenennen sowie Teilnehmer hinzufügen oder entfernen kann
can_writebooleanKennzeichen, ob dieser Teilnehmer Nachrichten schreiben kann
is_mutedbooleanKennzeichen, ob dieser Teilnehmer Benachrichtigungen erhalten möchte
auto_createdbooleanKennzeichen, ob dieser Teilnehmer automatisch angelegt wurde, weil er einem Unternehmen oder einer Veranstaltung angehört
reply_modestringÜberschreibung zum Antwortmodus des Profils: always | mention | question. Leer heisst: der Wert aus dem Profil gilt.
ai_auto_close_secret_wordstringEin Wort als letzter Teil einer KI-Antwort, das den Chatraum schließt. Wird für KI-Bots verwendet.
ai_promptstringDer Systemprompt für den KI-Bot. Wird für KI-Bots verwendet.
ai_number_of_context_messagesintegerDie Anzahl der Nachrichten, die dem Kontext des KI-Bots hinzugefügt werden. Wird für KI-Bots verwendet.
messenger_channelstringsms | whatsapp – gesetzt für einen externen Teilnehmer, der den Support per SMS oder WhatsApp kontaktiert; Antworten im Raum gehen über diesen Kanal zurück (MessengerSupportChatHelper).
messenger_phone_numberstringMobilnummer des Messenger-Teilnehmers, E.164-Ziffern ohne +.
messenger_verified_atstring (date-time)Zeitpunkt, zu dem der Messenger verifiziert wurde.
left_atstring (date-time)Wann die Person den Raum verlassen hat bzw. von einem Raum-Admin entfernt wurde. Solange dies gesetzt ist, nimmt der Veranstaltungsabgleich sie nicht wieder auf.
left_reasonstringself | room_admin, siehe LEFT_REASON_*
notify_levelstringWann diese Person eine Push-Benachrichtigung erhält: all | mentions | none, siehe NOTIFY_LEVEL_* (Einstellung chatroom_mute_enabled). Leer bedeutet: is_muted entscheidet (alt, von der Verwaltung gesetzt), sonst alle.
muted_untilstring (date-time)Bis wann der Raum ganz stumm ist („für 8 Stunden aus“), danach gilt wieder notify_level.
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.
last_read_atstring (date-time)Zeitstempel des letzten Lesens des Chatraums durch einen Admin-Teilnehmer
message_count_readintegerAnzahl der gelesenen Nachrichten.
trust_levelstringBerechnete Vertrauensstufe, siehe TRUST_LEVEL_*. Nach außen nur lesbar; gesetzt wird sie ausschließlich vom ChatroomTrustLevelHelper.
member_started_typestringVon Mitgliedern gestartet (Paket D): „direct“ (1:1, chatroom_member_direct_enabled) oder „group“ (Gruppe eines Trainers, chatroom_trainer_groups_enabled); null für alle anderen Räume.
handover_atstring (date-time)Seit wann sich die KI aus dem Raum zurückgezogen hat. Solange das gesetzt ist, antwortet kein Profil-Bot mehr; der Raum wartet auf das Team. Gesetzt und gelöscht nur vom ChatbotHandoverHelper.
handover_reasonstringSiehe HANDOVER_REASON_*.
support_snoozed_untilstring (date-time)Zurückgestellt bis; danach zählt der Raum wieder als offen.
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/chatroom/42/handover \
--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/chatroom/42/handover', 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/chatroom/42/handover"
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/chatroom/42/handover', [
'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/chatroom/42/handover"),
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/chatroom/42/handover")
.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/chatroom/42/handover"
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/chatroom_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 ChatroomController.resumeChatbot('42');
if (result.success) {
print(result.data);
}{
"id": 42,
"name": "Beispiel",
"image_url": "https://vynst.de",
"unread_count": 1,
"is_unread": true,
"chatbot_active": true,
"member_managed": true,
"is_support_room": true,
"support_status": "string",
"token": "string"
}