postAction method
Führt eine Aktion auf Objekten einer bestimmten Klasse aus
Sendet einen POST-Request an den v1/action-Endpunkt, um eine serverseitige
Aktion für Objekte einer spezifizierten Klasse auszulösen. Unterstützt
Filterung, Paginierung und Serialisierungsoptionen.
className - Name der Objektklasse, auf der die Aktion ausgeführt wird
(z.B. "Vorgang", "Adresse", "Projekt")
query - Suchfilter zur Auswahl der betroffenen Objekte
page - Seitenzahl für Paginierung (Standard: 0)
perPage - Anzahl Objekte pro Seite (Standard: aus Konfiguration)
serialization - Serialisierungsoptionen für die Antwort
actions - JSON-kodierte Liste der auszuführenden Aktionen. Jede Aktion
ist ein Objekt mit mindestens type sowie aktionsspezifischen Feldern
(z.B. text, toUsers, cc, public für den Typ sendObject)
rightsControlKey - Berechtigungsschlüssel für Zugriffskontrolle
Returns: RestApiResponse mit dem Ergebnis der ausgeführten Aktion
Beispiel:
final actions = jsonEncode([
{
"type": "sendObject",
"text": "test",
"toUsers": ["Demo"],
"cc": [],
"public": false,
}
]);
RestApiResponse response = await api.v1.objects.postAction(
"GSDObjekt",
query: jsonEncode({"oids": ["V2YZ"]}),
actions: actions,
);
if (response.isOk) {
print("Aktion erfolgreich ausgeführt");
}
Implementation
Future<RestApiResponse> postAction(
String className, {
String query = '',
int page = 0,
int? perPage,
String serialization = '',
String actions = '',
String rightsControlKey = '',
}) {
return _execute(
method: ApiHttpMethod.post,
path: '/action/$className',
queryParameters: _listParameters(
query: query,
page: page,
perPage: perPage,
serialization: serialization,
actions: actions,
rightsControlKey: rightsControlKey,
),
operation: 'postAction',
);
}