GCXONEDokumentation

Journal

Auf dieser Seite
  1. POST /log/audit
  2. Request body
  3. Responses
  4. GET /log/audit/eventlist/workflowid/{id}
  5. Parameter
  6. Antworten
  7. POST /log/audit/filter
  8. Anfrage‑Body
  9. Antworten
  10. GET /log/audit/report/workflowid/{id}/timezone/{tzone}
  11. Parameter
  12. Antworten
  13. POST /log/eventlog
  14. Anfragetext
  15. Antworten

Operationen auf Journal-Ressourcen. 5 Endpunkte, jeweils relativ zu https://api.nxgen.cloud/api/v1 und authentifiziert wie unter Authentication.

POST /log/audit

Neuen Journal‑Eintrag hinzufügen. Im Allgemeinen erfassen alle CRUD‑APIs die Benutzeraktionen im Journal, wenn die API erfolgreich ausgeführt wird. Diese AUDIT‑POST‑API wird verwendet, um Benutzerinteraktionen zu protokollieren, die über andere API‑Aufrufe nicht erfasst werden können.

Request body

Journal‑Filterung und -Sortierung

json
{
  "action": "string",
  "category": "string",
  "mqttPush": "boolean",
  "payload": {
    "sourceEntityLevel": "sensor | device | site | account",
    "sourceEntityId": "string"
  },
  "deltaPayload": "string",
  "source": "string",
  "subCategory": "string",
  "userAction": "string",
  "actionStatus": "string",
  "actionTime": "number",
  "workflowId": "string",
  "workflowName": "string",
  "userName": "string"
}

Responses

Status

Description

Body

200

Success

object

204

Kein Inhalt

400

Ungültige Eingabe

401

Unauthorized

403

Forbidden

Beispiel200Antwort

json
{
  "data": "Audit added successfully"
}

GET /log/audit/eventlist/workflowid/{id}

Liste der Ereignisse zu einem Workflow abrufen.

Parameter

Name

In

Typ

Erforderlich

Beschreibung

id

Pfad

string

Ja

Arbeitsablauf-ID

Antworten

Status

Beschreibung

Inhalt

200

Erfolg

Objekt

400

Ungültige Eingabe

403

Verboten

Beispiel 200 Antwort:

json
{
  "data": {
    "errorCode": 0,
    "errorMessage": "if errorCode above is a negative number then this errorMessage field will give more details.",
    "message": [
      "62cba820173001197cf10420",
      "62cbac84a520010f074a4403"
    ]
  }
}

Beispiel 400 Antwort:

json
{
  "errorCode": "ERR001",
  "errorDesc": "Invalid Request"
}

POST /log/audit/filter

Ruft Journal‑Protokolle mit Filterung, Sortierung und Paginierung ab. Es ermöglicht die Suche nach hierarchischer Ebene. Es kann anhand einer angegebenen Hierarchie gefiltert werden oder verwendet die Hierarchie des angemeldeten Benutzers. Dies bietet die Möglichkeit, zusätzliche Entitätsfelder in der Antwort zu erhalten. Außerdem werden Konfigurations‑Metadaten zur Entität bereitgestellt.

Anfrage‑Body

Journal‑Filterung und -Sortierung

json
{
  "filters": [
    {
      "columnName": "string (required)",
      "type": "distinctList | date | number | StringConditionFilter (required)",
      "filter": "object (required)"
    }
  ],
  "sortOrder": [
    {
      "columnName": "string",
      "isAscending": "boolean"
    }
  ],
  "primaryColumns": [
    "string"
  ],
  "hierarchyLevel": "string",
  "hierarchyId": "string",
  "nPerPage": "number",
  "pageNumber": "number",
  "isConfigDetailRequired": "boolean",
  "getConfig": "boolean",
  "getChildOrParent": "boolean"
}

Antworten

Status

Beschreibung

Body

200

Erfolg

Objekt

204

Kein Inhalt

400

Ungültige Eingabe

401

Nicht autorisiert

403

Verboten

Beispiel 200 Antwort:

json
{
  "config": {
    "columns": [
      {
        "visibility": true,
        "columnName": "commercialName",
        "DisplayName": "Audit",
        "isFilterable": true,
        "filterType": "stringCondition",
        "sticky": true,
        "isRightBorder": true,
        "isMandatory": true,
        "isNotDraggable": true
      }
    ],
    "defaultNPerPage": 50,
    "defaultFilterCondition": [],
    "defaultSortingOrder": [
      {
        "columnName": "dateTime",
        "isAscending": false
      }
    ],
    "maxVisibleColumnCount": 6,
    "exportLimitNPerPage": 500
  },
  "dataResult": [
    {
      "action": "Search or Tree node click",
      "actionStatus": "Success",
      "category": "Video Activity Search",
      "sourceEntityName": "8428 Moll Kaarst Lackierhalle",
      "subCategory": "Search",
      "timeStamp": 1656405046000,
      "userAction": "Event search result has been fetched",
      "userEmail": "admin@tenant.de",
      "deltaPayload": "Import Report"
    }
  ],
  "totalRecordsCount": 3552,
  "filteredBy": [],
  "sortedBy": [
    {
      "columnName": "dateTime",
      "isAscending": false
    }
  ],
  "dispatchedAll": false,
  "isDefaultProjectionMutated": false,
  "isDefaultFilterMutated": false,
  "isDefaultSortingMutated": false
}

GET /log/audit/report/workflowid/{id}/timezone/{tzone}

Eine PDF‑Datei mit Workflow‑Details.

Parameter

Name

Im

Typ

Erforderlich

Beschreibung

id

path

string

Ja

Workflow‑ID

tzone

path

string

nein

Zeitzone der Client‑Anwendung.

Antworten

Status

Beschreibung

Inhalt

200

Erfolg

400

Ungültige Eingabe

403

Verboten

POST /log/eventlog

Liste der Ereignisprotokolle für eine bestimmte Entität abrufen.

Anfragetext

Ereignisprotokolle abrufen.

json
{
  "entityId": "string",
  "startTime": "number",
  "endTime": "number",
  "page": "number"
}

Antworten

Status

Beschreibung

Inhalt

200

Erfolg

Objekt

400

Ungültige Eingabe

403

Verboten

404

Nicht gefunden

Beispiel 200 antwort:

json
{
  "data": {
    "errorCode": 0,
    "message": {
      "eventLogs": [
        {
          "workFlowId": "8a81bc4c820160182151cd2e86160",
          "type": "WORKFLOW",
          "timestamp": 1658211586783,
          "userName": "Christian John",
          "status": "CLOSED",
          "workflowOutcome": "alarm_false",
          "message": "Verbindungsausfall V1.1",
          "workflowOutcomeName": "Falsealarm"
        }
      ],
      "nextPage": 1
    }
  }
}

Beispiel 400 antwort:

json
{
  "errorCode": "ERR001",
  "errorDesc": "Invalid Request"
}

Beispiel 404 antwort:

json
{
  "errorCode": "404",
  "errorDesc": "Not Found"
}
War diese Seite hilfreich?

Vielen Dank — Ihr Feedback geht an das Team, das diese Seite betreut.