Schnittstelle

Diese Schnittstelle, welche mit der Version 9.0.8 eingeführt wurde, liefert eine zentrale Übersicht über die auf dem Server verfügbaren Ressourcen je Mandant. Neben allgemeinen Serverinformationen (Name, Version, Stage) enthält die Antwort strukturierte Listen zu Formularen, Global Components, Datapools und Code-Listen inklusive Links und CRC32-Hashes zur schnellen Änderungs- und Integritätsprüfung. 

Bevor dieser Endpoint genutzt werden kann, muss sich der Benutzer zuerst über unseren Autorisierungs-Endpoint authentifizieren. Details siehe: Autorisierung.

GET /server/info/ressource

Liefert Server-Infos sowie eine Übersicht der Ressourcen pro Mandant (Formulare, Global Components, Datapools, Code-Listen) inklusive Hashes (CRC32) zur Change Detection / Cache-Invalidierung.

Berechtigungslogik (wichtig)

Query Parameter

mandant-ids (optional)

Typ: string (Comma-separated list)
Beispiel: SHOWCASE,MY-MANDANT

Verhalten:

Response 200 application/json

Die Response besteht aus zwei Hauptbereichen:

Innerhalb eines Mandanten (mandantResources[i]) sind die Ressourcen in vier Kategorien gruppiert:

  1. formResources[]
    Enthält Formulare inklusive Status (active), Zeitstempel (lastUpdate), Gruppierung (group), Links zur aktiven Ressource (activeResourceLink, baseResourceLink) sowie Versionshistorie (formVersions[]).
    Pro Formular steht zusätzlich ein crc32Hash zur Verifikation/Cache-Invalidierung auf Formularebene zur Verfügung.

  2. globalComponents[]
    Wiederverwendbare Komponenten (z.B. globale Bausteine). Der Block reference zeigt, wo die Komponente verwendet wird (Form- und Component-Referenzen). Auch hier gibt es einen crc32Hash pro Komponente.

  3. datapoolResources[]
    Datapools inkl. Aktiv-Flag und Gruppierung. previewLink ist ein Key/Value-Objekt (flexibel erweiterbar), das z.B. mandant- oder systemabhängige Preview-URLs enthalten kann.

  4. codeListResources[]
    Code-Listen mit key, resourceLink, lastUpdate und crc32Hash.

Zusätzlich enthält der Mandant-Block aggregierte CRC32-Hashes:

JSON-SCHEMA 

{
  "serverInformation": {
    "serverName": "string",
    "serverLink": "string",
    "version": "string",
    "stage": "string",
    "serverCrc32Hash": "string"
  },
  "mandantResources": [
    {
      "mandantId": "string",
      "formResources": [
        {
          "id": "string",
          "name": "string",
          "lastUpdate": "string",
          "active": true,
          "group": "string",
          "activeVersion": "string",
          "activeResourceLink": "string",
          "baseResourceLink": "string",
          "formVersions": [
            {
              "version": "string",
              "uuid": "string"
            }
          ],
          "formLink": "string",
          "expirationDate": "string",
          "crc32Hash": "string"
        }
      ],
      "globalComponents": [
        {
          "id": "string",
          "category": "string",
          "refId": "string",
          "componentType": "string",
          "lastUpdate": "string",
          "resourceLink": "string",
          "reference": {
            "formReferences": [
              "string"
            ],
            "componentReferences": [
              "string"
            ]
          },
          "crc32Hash": "string"
        }
      ],
      "datapoolResources": [
        {
          "name": "string",
          "lastUpdate": "string",
          "active": true,
          "guid": "string",
          "group": "string",
          "previewLink": {
            "additionalProp1": "string",
            "additionalProp2": "string",
            "additionalProp3": "string"
          }
        }
      ],
      "codeListResources": [
        {
          "name": "string",
          "key": "string",
          "lastUpdate": "string",
          "resourceLink": "string",
          "crc32Hash": "string"
        }
      ],
      "mandantCrc32Hash": "string",
      "formsCrc32Hash": "string",
      "globalsCrc32Hash": "string",
      "codesCrc32Hash": "string"
    }
  ]
}