Berichts-Profil
INFO
Ein Berichts-Profil ist ein gespeicherter, wiederverwendbarer Filter bzw. eine Bedingung für das Berichtsmodul von Zammad. Es handelt sich dabei nicht um eine Automatisierung und es führt von sich aus keine Aktionen aus. Es handelt sich um eine benannte Bedingung, die bei der Erstellung von Berichten mit der Berichtsfunktion von Zammad als auswählbare Ansicht angezeigt wird, wobei der Zugriff auf diejenigen Rollen beschränkt ist (role_ids), die diese einsehen dürfen.
Vergleichen Sie dies mit Core Workflows, die ein ähnlich strukturiertes Bedingungsobjekt verwenden, jedoch die referenzierten Felder nicht validieren.
Auflisten
Erforderliche Berechtigung: admin.report_profile
GET-Request gesendet: /api/v1/report_profiles
Details
json
// HTTP-Code 200 OK
[
{
"id": 1,
"name": "-all-",
"condition": {},
"active": true,
"updated_by_id": 1,
"created_by_id": 1,
"created_at": "2026-09-30T07:55:54.147Z",
"updated_at": "2026-09-30T07:55:54.147Z",
"role_ids": []
},
{
"id": 2,
"name": "Open tickets (new or open)",
"condition": {
"ticket.state_id": {
"operator": "is",
"value": [
"1",
"2"
]
}
},
"active": true,
"updated_by_id": 3,
"created_by_id": 3,
"created_at": "2026-09-24T12:32:01.918Z",
"updated_at": "2026-09-24T12:32:01.905Z",
"role_ids": [
2,
1
]
}
]INFO
Die Liste gibt den vollständigen Datensatz für jedes Profil zurück, mit denselben Feldern wie in der unten stehenden Show-Response. Der Eintrag 1 (-all-) ist das in Zammad integrierte Standardprofil.
Anzeigen
Erforderliche Berechtigung: admin.report_profile
GET-Request gesendet: /api/v1/report_profiles/{id}
Details
json
// HTTP-Code 200 OK
{
"id": 2,
"name": "Open tickets (new or open)",
"condition": {
"ticket.state_id": {
"operator": "is",
"value": [
"1",
"2"
]
}
},
"active": true,
"updated_by_id": 3,
"created_by_id": 3,
"created_at": "2026-09-24T12:32:01.918Z",
"updated_at": "2026-09-24T12:32:01.905Z",
"role_ids": [
2,
1
]
}Erstellen
Erforderliche Berechtigung: admin.report_profile
POST-Request gesendet: /api/v1/report_profiles
Details
json
{
"name": "Open tickets (new or open)",
"condition": {
"ticket.state_id": {
"operator": "is",
"value": [
"1",
"2"
]
}
},
"active": true,
"role_ids": [
1,
2
]
}INFO
Es ist nicht gewährleistet, dass die Rollen-IDs in allen Instanzen identisch sind. Schauen Sie sich daher zunächst die IDs der benötigten Rollen über die Rollen-API heraus, anstatt eine Annahme zu treffen.
INFO
Im Gegensatz zu Core Workflows überprüft die Berichts-Profils condition nicht, ob die referenzierten Felder echte, vollständig migrierte Ticketfelder sind. Der Verweis auf ein benutzerdefiniertes Feld, das zwar existiert, dessen Schemamigration jedoch noch nicht abgeschlossen ist (to_create/to_migrate weiterhin true ), schlägt mit folgender Fehlermeldung fehl:
Details
json
// HTTP-Code 422 Unprocessable Entity
{
"error": "Invalid object selector conditions",
"error_human": "Invalid object selector conditions",
"invalid_attribute": {
"condition": "Invalid object selector conditions"
}
}Aktualisierung
Erforderliche Berechtigung: admin.report_profile
PUT-Request gesendet: /api/v1/report_profiles/{id}
Die Struktur der Nutzlast entspricht der von Create. Die Antwort besteht aus dem aktualisierten Datensatz, dessen Struktur mit der Create-Response übereinstimmt.
INFO
Das Senden der vollständigen Create-Nutzlast an die id eines bestehenden Profils führt zu dessen direkter Aktualisierung. Es wird kein Duplikat erstellt.
Details
json
{
"name": "Open tickets (new or open)",
"condition": {
"ticket.state_id": {
"operator": "is",
"value": [
"1",
"2"
]
}
},
"active": true,
"role_ids": [
1,
2
],
"id": 2
}Löschen
Erforderliche Berechtigung: admin.report_profile
DANGER
Dies ist eine dauerhafte Entfernung
Bitte beachten Sie, dass das Entfernen von Berichts-Profilen nicht rückgängig gemacht werden kann.
DELETE-Request gesendet: /api/v1/report_profiles/{id}
Details
json
// HTTP-Code 200 OK
{}