MassNotification
Benachrichtigung / MassNotification
MassUserNotification neu anlegen
POST/api/notification/mass_notification
Request-Body application/json
dataMassUserNotificationFelder anzeigen (16)
send_pushbooleanOb Push-Benachrichtigungen gesendet werden sollen.
send_mailbooleanOb E-Mails gesendet werden sollen.
send_letterbooleanOb Briefe gesendet werden sollen.
send_smsbooleanOb SMS-Nachrichten gesendet werden sollen.
send_whatsappbooleanOb WhatsApp-Nachrichten gesendet werden sollen.
reference_class_namestringKlassenname der Datensätze, auf die sich die Benachrichtigung bezieht.
reference_idsarray<string>IDs der Datensätze, auf die sich die Benachrichtigung bezieht.
textstringDie Überschrift der Benachrichtigung
long_textstringDer Text der Benachrichtigung
html_textstringDer HTML-Text der Benachrichtigung; überschreibt den langen Text
attachmentsarray<Attachment12>Anhänge der Massenbenachrichtigung.
templateFlexibleLatexTemplate3Vorlage für die Massenbenachrichtigung.
save_as_attachmentbooleanOb die Benachrichtigung als Anhang gespeichert wird.
check_for_duplicatesbooleanOb doppelte Empfänger geprüft werden.
create_questionnaire_draftbooleanWenn true, wird für jeden referenzierten BaseEventSignUp-Empfänger ein Entwurf von MediaQuestionnaireAnswer angelegt (oder wiederverwendet), und sein Ausfülllink wird als Vorlagen-Platzhalter bereitgestellt.
questionnaire_draft_questionnaireMediaQuestionnaire3Der Fragebogen für die Ergebnisliste, für den die Entwürfe je Empfänger erstellt werden.
Antworten
200MassUserNotification neu anlegenMassUserNotification2
Felder anzeigen (20)
idintegerPrimärschlüssel der Massenbenachrichtigung. Interne ID.
processedbooleanOb die Massenbenachrichtigung verarbeitet wurde.
send_pushbooleanOb Push-Benachrichtigungen gesendet werden sollen.
send_mailbooleanOb E-Mails gesendet werden sollen.
send_letterbooleanOb Briefe gesendet werden sollen.
send_smsbooleanOb SMS-Nachrichten gesendet werden sollen.
send_whatsappbooleanOb WhatsApp-Nachrichten gesendet werden sollen.
reference_class_namestringKlassenname der Datensätze, auf die sich die Benachrichtigung bezieht.
reference_idsarray<string>IDs der Datensätze, auf die sich die Benachrichtigung bezieht.
textstringDie Überschrift der Benachrichtigung
long_textstringDer Text der Benachrichtigung
html_textstringDer HTML-Text der Benachrichtigung; überschreibt den langen Text
attachmentsarray<Attachment22>Anhänge der Massenbenachrichtigung.
Felder anzeigen (26)
idintegerPrimärschlüssel des Anhangs. Interne ID.
filenamestringUrsprünglicher Dateiname.
filesizestringGröße der Datei in Bytes.
mimetypestringMIME-Typ der Datei.
createdbyusernamestringName des Benutzers, der die Datei hochgeladen hat, als Text.
createdstring (date-time)Zeitpunkt, zu dem der Anhang angelegt wurde.
googleidstringID der Datei in Google Drive.
googledownloadlinkstringDownload-Link der Datei in Google Drive.
scopestringScope, der steuert, wer den Anhang sehen kann.
ocr_document_typestringDokumenttyp, der per OCR erkannt wurde.
ocr_from_namestringPer OCR erkannter Absendername.
ocr_from_companystringPer OCR erkanntes Absenderunternehmen.
ocr_from_addressstringPer OCR erkannte Absenderadresse.
ocr_from_emailstringPer OCR erkannte Absender-E-Mail-Adresse.
ocr_from_phonestringPer OCR erkannte Absender-Telefonnummer.
ocr_to_namestringPer OCR erkannter Name des Empfängers.
ocr_to_companystringPer OCR erkanntes Empfängerunternehmen.
ocr_to_addressstringPer OCR erkannte Empfängeradresse.
ocr_to_emailstringPer OCR erkannte E-Mail-Adresse des Empfängers.
ocr_to_phonestringPer OCR erkannte Telefonnummer des Empfängers.
ocr_summarystringZusammenfassung des per OCR erstellten Dokuments.
ocr_statusstringOCR-Verarbeitungsstatus: null = nicht verarbeitet, pending, processing, done, error
ocr_errorstringGrund des letzten fehlgeschlagenen oder unvollständigen OCR-Laufs, null wenn er erfolgreich war
ocr_processed_atstring (date-time)Zeitpunkt, zu dem die OCR-Verarbeitung abgeschlossen wurde.
virus_checkedboolean1, sobald der Virenscan für diese Datei bestanden ist. Der Scan läuft im Hintergrund (AttachmentVirusScanCommand), daher beginnt eine neu hochgeladene Datei bei 0 und bleibt dort, bis sie tatsächlich geprüft wurde. Eine infizierte Datei erreicht nie 1 – sie wird stattdessen gelöscht. Die Oberflächen nutzen dies, um zu entscheiden, ob eine Datei an einen Benutzer ausgegeben werden darf; daher muss sie bis zum Nachweis des Gegenteils auf false bleiben.
virus_checked_atstring (date-time)Wann der Virenscan bestanden wurde. Null, solange die Datei noch wartet.
templateFlexibleLatexTemplateVorlage für die Massenbenachrichtigung.
Felder anzeigen (35)
predefinedbooleanWahr für Vorlagen, die mit dem servercontrolpanel ausgeliefert werden (PredefinedFlexibleTemplateMap). Ihre IDs werden im Code referenziert, daher bietet die Oberfläche an, sie zu duplizieren ("Vorlage anpassen"), statt sie zu bearbeiten.
data_typestringDatentyp (Referenzklassenschlüssel), mit dem die Vorlage gerendert und geprüft wird. Für vordefinierte Vorlagen (Tag IW_PFLT) ist dies der Datentyp des Codes, der sie verwendet.
data_type_labelstringMenschlich lesbare Bezeichnung des zugewiesenen Datentyps, null bei Tags, die keinem bekannten Datentyp entsprechen.
template_modestringSerialisierter Modus, damit Clients nicht wissen müssen, dass null Standard bedeutet.
last_check_statusstringZusammenfassung der letzten Vorlagenprüfung für Listenansichten; das vollständige Ergebnis ist nur in der Admin-Detailansicht verfügbar.
idstringPrimärschlüssel der Vorlage. Interne ID. Wird als String-Kennung verwendet.
namestringName der Vorlage.
tagstringTag, mit dem Vorlagen gruppiert werden.
mass_messagebooleanOb die Vorlage für Massennachrichten verwendet wird.
default_store_as_pdfbooleanOb das erzeugte Dokument standardmäßig als PDF gespeichert wird.
security_scopestringScope, der steuert, wer die Vorlage verwenden kann.
security_user_access_typeintegerFür die Verwendung der Vorlage erforderlicher Zugriffstyp.
param1stringIn der Vorlage verwendeter Wert von Parameter 1.
param2stringIn der Vorlage verwendeter Wert von Parameter 2.
param3stringIn der Vorlage verwendeter Wert von Parameter 3.
param4stringIn der Vorlage verwendeter Wert von Parameter 4.
param5stringIn der Vorlage verwendeter Wert von Parameter 5.
param6stringIn der Vorlage verwendeter Wert von Parameter 6.
param7stringIn der Vorlage verwendeter Wert von Parameter 7.
param8stringIn der Vorlage verwendeter Wert von Parameter 8.
param9stringIn der Vorlage verwendeter Wert von Parameter 9.
param10stringIn der Vorlage verwendeter Wert von Parameter 10.
default_value_param1stringStandardwert von Parameter 1.
default_value_param2stringStandardwert von Parameter 2.
default_value_param3stringStandardwert von Parameter 3.
default_value_param4stringStandardwert von Parameter 4.
default_value_param5stringStandardwert von Parameter 5.
default_value_param6stringStandardwert von Parameter 6.
default_value_param7stringStandardwert von Parameter 7.
default_value_param8stringStandardwert von Parameter 8.
default_value_param9stringStandardwert von Parameter 9.
default_value_param10stringStandardwert von Parameter 10.
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
save_as_attachmentbooleanOb die Benachrichtigung als Anhang gespeichert wird.
check_for_duplicatesbooleanOb doppelte Empfänger geprüft werden.
create_questionnaire_draftbooleanWenn true, wird für jeden referenzierten BaseEventSignUp-Empfänger ein Entwurf von MediaQuestionnaireAnswer angelegt (oder wiederverwendet), und sein Ausfülllink wird als Vorlagen-Platzhalter bereitgestellt.
questionnaire_draft_questionnaireMediaQuestionnaireDer Fragebogen für die Ergebnisliste, für den die Entwürfe je Empfänger erstellt werden.
Felder anzeigen (34)
idintegerPrimärschlüssel des Fragebogens. Interne ID.
questionnaire_typestringArt des Fragebogens, zum Beispiel Anmeldung oder Umfrage.
tokenstringÖffentlicher Token des Fragebogens. Anstelle der ID verwendet.
public_copyrightstringUrheberrechtstext, der mit dem Fragebogen angezeigt wird.
public_language_codestringSprache des Fragebogens, zum Beispiel de.
complexity_levelintegerKomplexitätsstufe des Fragebogens.
public_authorstringÖffentlich angezeigter Autor.
show_free_textbooleanEin Freitextfeld anzeigen.
show_attachmentbooleanEin Upload-Feld für Anhänge anzeigen.
require_attachmentbooleanEin Anhang muss hochgeladen werden.
with_paginationbooleanDen Fragebogen seitenweise anzeigen.
one_entry_per_personbooleanWenn true, ist nur ein Eintrag pro Person erlaubt - nur für angemeldete Benutzer und Tabellenergebnisse
require_addressbooleanDie Adresse muss eingegeben werden.
require_contactbooleanKontaktdaten müssen eingegeben werden.
require_agebooleanDas Alter muss eingegeben werden.
require_grade_levelbooleanDie Schulklassenstufe muss eingegeben werden.
start_timestring (date-time)Beginn der Verfügbarkeit des Fragebogens.
end_timestring (date-time)Ende der Verfügbarkeit des Fragebogens.
age_groupstringAltersgruppe, für die der Fragebogen gedacht ist.
min_ageintegerMindestalter in Jahren.
max_ageintegerMaximales Alter in Jahren.
min_grade_levelintegerMindestschulstufe.
max_grade_levelintegerMaximale Klassenstufe.
age_toleranceintegerJahre, um die das Alter außerhalb der Spanne liegen darf und dennoch akzeptiert wird.
group_allowedbooleanOb der Fragebogen auf eine Gruppe beschränkt ist.
allow_self_registerbooleanOb sich Personen selbst für die Beantwortung des Fragebogens registrieren können.
allow_self_download_result_templatebooleanOb Antwortende ihr eigenes Ergebnis herunterladen können.
clarification_enabledbooleanZweite Schleife nach dem KI-Vergleich: Antworten, die die KI nicht als erfüllt bewertet, werden zu Klärungspunkten (MediaQuestionnaireClarification), die mit dem Kunden besprochen und entschieden werden, bevor die Ergebnisvorlage angelegt wird. Ohne sie folgt die Ergebnisvorlage direkt dem KI-Vergleich.
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
image_urlstringURL des Bildes des Datensatzes.
namestringName der Einheit.
slug_identifierstringSlug, der in URLs der Entität verwendet wird.
createdstring (date-time)Zeitpunkt, zu dem der Datensatz angelegt wurde.
updatedstring (date-time)Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.
curl --request POST \
--url https://eure-instanz.iw-erp.de/api/notification/mass_notification \
--header 'content-type: application/json' \
--header 'x-iw-jwt-token: <TOKEN>' \
--data '
{
"data": {
"send_mail": true,
"reference_class_name": "Beispiel",
"text": "Text",
"long_text": "Text",
"html_text": "Text",
"send_push": true
}
}
'const options = {
method: 'POST',
headers: {'x-iw-jwt-token': '<TOKEN>', 'content-type': 'application/json'},
body: JSON.stringify({
data: {
send_mail: true,
reference_class_name: 'Beispiel',
text: 'Text',
long_text: 'Text',
html_text: 'Text',
send_push: true
}
})
};
fetch('https://eure-instanz.iw-erp.de/api/notification/mass_notification', 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/notification/mass_notification"
payload = { "data": {
"send_mail": True,
"reference_class_name": "Beispiel",
"text": "Text",
"long_text": "Text",
"html_text": "Text",
"send_push": 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/notification/mass_notification', [
'body' => '{"data":{"send_mail":true,"reference_class_name":"Beispiel","text":"Text","long_text":"Text","html_text":"Text","send_push":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/notification/mass_notification"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
Content = new StringContent("{\"data\":{\"send_mail\":true,\"reference_class_name\":\"Beispiel\",\"text\":\"Text\",\"long_text\":\"Text\",\"html_text\":\"Text\",\"send_push\":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\":{\"send_mail\":true,\"reference_class_name\":\"Beispiel\",\"text\":\"Text\",\"long_text\":\"Text\",\"html_text\":\"Text\",\"send_push\":true}}");
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/notification/mass_notification")
.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/notification/mass_notification"
payload := strings.NewReader("{\"data\":{\"send_mail\":true,\"reference_class_name\":\"Beispiel\",\"text\":\"Text\",\"long_text\":\"Text\",\"html_text\":\"Text\",\"send_push\":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/mass_notification_controller.dart';
import 'package:iw_erp_api/logic/iw_api_state.dart';
import 'package:iw_erp_api/model/mass_notification.dart';
IwApiState().host = 'eure-instanz.iw-erp.de';
IwApiState().currentJwtApiToken = '<TOKEN>';
final result = await MassNotificationController.post(MassNotification.fromJson({
"send_mail": true,
"reference_class_name": "Beispiel",
"text": "Text",
"long_text": "Text",
"html_text": "Text",
"send_push": true
}));
if (result.success) {
print(result.data);
}{
"id": 42,
"send_mail": true,
"reference_class_name": "Beispiel",
"text": "Text",
"long_text": "Text",
"html_text": "Text",
"processed": true,
"send_push": true,
"send_letter": true,
"send_sms": true
}Liste von SimpleReference abrufen
GET/api/notification/mass_notification/simple_references
Query-Parameter
classNamePflichtstring | Der className, für den die Referenzen ermittelt werden, z. B. person |
Antworten
200Liste von SimpleReference abrufenarray<SimpleReference>
Felder anzeigen (3)
class_namestringidstringnamestring
curl --request GET \
--url 'https://eure-instanz.iw-erp.de/api/notification/mass_notification/simple_references?className=string' \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/notification/mass_notification/simple_references?className=string', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://eure-instanz.iw-erp.de/api/notification/mass_notification/simple_references?className=string"
headers = {"x-iw-jwt-token": "<TOKEN>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://eure-instanz.iw-erp.de/api/notification/mass_notification/simple_references?className=string', [
'headers' => [
'x-iw-jwt-token' => '<TOKEN>',
],
]);
echo $response->getBody();using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("https://eure-instanz.iw-erp.de/api/notification/mass_notification/simple_references?className=string"),
Headers =
{
{ "x-iw-jwt-token", "<TOKEN>" },
},
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://eure-instanz.iw-erp.de/api/notification/mass_notification/simple_references?className=string")
.get()
.addHeader("x-iw-jwt-token", "<TOKEN>")
.build();
Response response = client.newCall(request).execute();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://eure-instanz.iw-erp.de/api/notification/mass_notification/simple_references?className=string"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-iw-jwt-token", "<TOKEN>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}Dart mit dem Package iw_erp_api
import 'package:iw_erp_api/clients/mass_notification_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 MassNotificationController.getSimpleReferences();
if (result.success) {
print(result.data);
}[
{
"class_name": "Beispiel",
"id": "42",
"name": "Beispiel"
}
]Gibt die Liste der Twig-Platzhalter zurück, die für eine bestimmte Referenzklasse oder für eine der einstellungsbasierten E-Mail-Vorlagen verfügbar sind. Wird vom Vorlageneditor / Massenbenachrichtigungs-Editor und von den Einstellungsseiten der E-Mail-Vorlagen verwendet, um Klick-einfügbare Chips bereitzustellen.
GET/api/notification/mass_notification/placeholders
Genau eines von className / templateKey muss angegeben werden.
Query-Parameter
classNamestring | FQCN oder Kurzname der Referenzklasse (z. B. 'CRMPerson' oder vollständiger FQCN). |
templateKeystring | Einstellungsschlüssel einer Mailvorlage (zum Beispiel „templates_mail_ticket_created_txt_twig“). |
Antworten
default
curl --request GET \
--url https://eure-instanz.iw-erp.de/api/notification/mass_notification/placeholders \
--header 'x-iw-jwt-token: <TOKEN>'const options = {method: 'GET', headers: {'x-iw-jwt-token': '<TOKEN>'}};
fetch('https://eure-instanz.iw-erp.de/api/notification/mass_notification/placeholders', 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/notification/mass_notification/placeholders"
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/notification/mass_notification/placeholders', [
'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/notification/mass_notification/placeholders"),
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/notification/mass_notification/placeholders")
.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/notification/mass_notification/placeholders"
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/mass_notification_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 MassNotificationController.getPlaceholders();
if (result.success) {
print(result.data);
}