Knowledge CenterNWL REST API Dokumentation
NWL-Plattform - REST API - Einführung
Letzte Änderung: 03.11.2023

Einführung

Willkommen bei der NWL Plattform REST API Dokumentation. Sie können diese REST API verwenden, um Integrationen zwischen der NWL-Plattform und anderen Anwendungen zu entwickeln. Diese Seite dokumentiert die in der NWL-Plattform verfügbaren REST-Ressourcen zusammen mit den erwarteten HTTP Response Codes und Beispielanfragen.

Authentifizierung für NWL REST API Anfragen - in Bearbeitung

Die NWL Web API erlaubt keine „anonymen Anfragen”, eine andere Anwendung muss sich entsprechend identifizieren.

Es bestehen zwei grundlegende Ansätze: Delegated User Identity und Application Identity / API-Schlüssel.

1. Delegated User Identity: Die Anwendung identifiziert sich mit der Identität des Nutzers.

  • Die Web-API trifft Autorisierungsentscheidungen basierend auf der Benutzeridentität.

  • Die Webanwendung muss 403-Fehler (Forbidden) von der Web-API verarbeiten, wenn der Benutzer nicht berechtigt ist, eine Aktion auszuführen.

  • In der Regel trifft die Webanwendung immer noch einige Autorisierungsentscheidungen, die sich auf die Benutzeroberfläche auswirken (z.B. das Ein- oder Ausblenden von UI-Elementen).

2. API-Schlüssel - in Bearbeitung - Application Identity (pro Produktiv und Test Instanzen): Die Anwendung authentifiziert sich mit ihrer Mandant-ID. Ein API-Schlüssel (Application Identity, API Key, pro Antragsteller, pro NWL Produktiv und Test Instanzen) ist ein eindeutiger Identifikationscode, der von einer Anwendungsprogrammierschnittstelle (API) verwendet wird, um die Nutzung der API durch eine bestimmte Anwendung oder einen Dienst zu autorisieren.

URI Struktur

NWL REST APIs ermöglichen den Zugriff auf Ressourcen (Dateneinheiten) via URI-Pfade.

Um eine REST-API zu verwenden, stellt Ihre Anwendung eine HTTP-Anfrage und analysiert die Antwort. Die NWL REST API verwendet JSON als Kommunikationsformat und die Standard-HTTP-Methoden wie GET, POST und DELETE (siehe API-Beschreibungen unten, welche Methoden für jede Ressource verfügbar sind).

URIs für NWL's REST API Ressource haben folgende Struktur:

{SERVER_BASE_URL}/rest/api/{RESOURCE_NAME}

SERVER_BASE_URL:

{RESOURCE_NAME} wird weiter unten erläutert.

JSON Datenformat

JSON (Java Script Object Notation) ist in der Webentwicklung ein wichtiges Datenformat, insbesondere beim Austausch von Daten mittels Schnittstellenstandards. Es wird häufig verwendet, um strukturierte Daten zu serialisieren und über ein Netzwerk auszutauschen, normalerweise zwischen einem Server und verschiedenen Webanwendungen.

Die Methode ist die Art der Anfrage, die Sie an den Server senden. Die 3 wichtigsten Ressourcenmethoden für REST-APIs sind:

  • GET: Diese Methode ermöglicht es dem Server, die von Ihnen angeforderten Daten zu finden und an Sie zurückzusenden.
  • POST: Mit dieser Methode legt der Server einen neuen Eintrag in der Datenbank an.
  • DELETE: Diese Methode ermöglicht es dem Server, einen Eintrag in der Datenbank zu löschen.

Abfrage Parameter

Alle Abfrageparameter für die unten beschriebenen Ressourcen sind optional, sofern nicht anders angegeben - als Pflichtfeld.

NWL Antragstellung API - Ressourcenübersicht

Hauptobjekte und Datendomänen in der NWL API

Die folgenden Datendomänen sind für Schnittstellen relevant:

  • Endlagerkampagnen
  • Anträge
  • Unterlagen
  • Verfahren
  • Benutzer
  • Referenzen / Stammdaten

Beziehungen zwischen Objekten in NWL

  • Antragsteller Organisation > Anträge

  • Antragsteller Organisation > Übergeordnete Unterlagen
  • Endlagerkampagne > Anträge > Unterlagen > Unterlagen Revisionen
  • Endlagerkampagne > VM Antrag - in Bearbeitung
  • Endlagerkampagne > VM Antrag - Antrag - in Bearbeitung
  • Endlagerkampagne > Verfahren
  • Antragsteller Organisation > Benutzer
  • Referenzen > Referenzen_Title

NWL API Ressourcen - Endlagerkampagnen

APIs in Verbindung mit Endlagerkampagnen:

  • Endlagerkampagne erstellen
  • Endlagerkampagne aktualisieren
  • Endlagerkampagne löschen
  • Endlagerkampagnen erhalten
  • Verfahren erhalten - Um eine Liste der Verfahren zu erhalten - Qualifizierte Verfahren (QV), Historische QV, APD / AGD Verfahren, Verfahren Sonstiges.

NWL API Ressourcen - Anträge

APIs in Verbindung mit Anträge, Antrag Angaben. P1 - Zielprozess “Antragstellung”. P2, P3 und P4 - Zielprozess “Nachforderung”:

NWL API Ressourcen - Unterlagen

APIs in Verbindung mit Unterlagen. P1 - Zielprozess “Antragstellung”. P2, P3 und P4 - Zielprozess “Nachforderung”:

  • Unterlagen hochladen für Antrag
  • Unterlagen aktualisieren / Unterlagen Revision aktualisieren für Antrag
  • Unterlagen löschen für Antrag
  • Unterlagen erhalten für Antrag
  • Übergeordnete Unterlagen erhalten

NWL Antragstellung API - Benutzer und Referenz Tabellen / Stammdaten erhalten

APIs zum Abrufen der Daten von NWL:

Antworten - Allgemeine Antworten und Antwortansätze - in Bearbeitung

Die NWL API verwendet allgemeine Antworten und entsprechende Antwortcodes für häufige Erfolgs- oder Fehler-Cases.
Die nachstehende Liste enthält Beispiele, aber nicht die vollständige Liste der allgemeinen und individuellen Antworten.

  • 200 - ErstellungErfolg, Antrag wurde erstellt.
  • 200 - DateiUploadErfolgreich, Datei erfolgreich hochgeladen.
  • 401 - AuthenticationError, Authentifizierungsfehler.
  • 400 - ErstellungFehler, Fehler bei Erstellung.
  • 400 - DatenFeldFehler, Daten des Felds ‘{FIELD_NAME}’ nicht gefunden.
  • 400 - DateiUploadFehler, Dropzone mit bereitgestelltem Code nicht gefunden.
  • 400 - UnvollstaendigeDaten, Unvollständige Daten im Anfragetext.
  • 400 - FalscheDaten, Falsche Daten für Feld ‘{FIELD_NAME}’ angegeben.
  • 400 - FehlenderAnfragetext, Fehlender Anfragetext.
  • 400 - PflichtfeldFehlt, Pflichtfeld ‘{FIELD_NAME}’ fehlt.
  • 400 - DateiUploadFehler, Angegebene Dropzone fehlt in diesem Antragstyp.
  • 400 - DateiUploadFehler, Der Antrag enthält die Dropzone ‘{DROPZONE_TITLE}’ nicht.
  • 400 - TypNichtGefunden, Objekttyp nicht gefunden.
  • 403 - Verboten, Fehlende Berechtigungen zum Erstellen des angegebenen Objekts.
  • 403 - NichtEditierbar, Objekt ist nicht editierbar.
  • 404 - NichtGefunden, Objekt ist nicht gefunden.
  • 406 - Inakzeptabel, Falsche Parameter der HTTP-Anfrage.
  • 500 - ServerFehler, Serverfehler.
  • 503 - DienstNichtVerfügbar, Der Dienst ist aufgrund von Wartungsarbeiten oder aus anderen Gründen nicht verfügbar.

Eingabefeldformate - Datentyp

NWL API verweist auf die folgenden Datentypen und Feldformate:

  • INPUT_TEXT
    Ein Systemfeld, das aus einer einzigen Textzeile besteht. Bitte beachten Sie die Grenzwerte für die Anzahl der Symbole.
    Beispiel: “ANTRAGSTITEL” : “Antrag auf vorgezogene Produktkontrollmaßnahmen gem. ALP NNNNN“

  • INPUT_NUMERIC
    Ein Systemfeld, das eine Anzahl enthält.
    Beispiel: “ABFALLPRODUKTE_ANZAHL_DER_BEHAELTER” : “5“

  • INPUT_HTML
    Ein Systemfeld, das aus mehreren Textzeilen in HTML-Formatierung besteht:
    - Formatierung - neue Zeile
    - Formatierung fett
    - Formatierung kursiv
    - Formatierung unterstrichen
    - Liste aufgezählt
    - Liste nummeriert
    - Links zu bereits hochgeladenen Dokumenten in diesem Antrag oder zu globalen Dokumenten / Übergeordnete Unterlagen

  • DATETIME / DATUM
    Ein Systemfeld, bei dem das Datum im Format "TT.MM.JJJJ" angezeigt wird.
    Beispiel: “BEZUGSDATUM_DER_AKTIVITAETSDEKLARATION” : “15.12.2008“

  • SELECT
    Ein Systemfeld, bei dem Sie einen einzelnen Wert aus einer definierten Liste von Werten auswählen können. Diese können nach Wert oder ID aufgerufen werden.
    Beispiel: “ANREICHERUNGSGRAD” : “>5%”

  • CHECKBOX
    Ein Systemfeld, bei dem Sie einen einzelnen Wert aus einer definierten Liste von Werten auswählen können. Diese können nach Wert oder ID aufgerufen werden.
    Beispiel: “ANTRAGSAUSLOESER“ : “Mengenerhoehung“, “Aenderungen des Ablaufplans“

  • RADIO_BUTTONS
    Ein Systemfeld, bei dem Sie einen einzelnen Wert aus einer definierten Liste von Werten auswählen können. Diese können nach Wert oder ID aufgerufen werden.
    Beispiel: “IST_GEPLANT_ALTABFAELLE_ODER_BEREITS_QUALIFIZIERTE_ABFAELLE_WEITERZUVERARBEITEN” : “Ja“

  • EXT_JS_TABLE
    Eine Datenstruktur in Form einer Tabelle. Jeder Datensatz in der Tabelle hat eine eigene ID und kann über diese ID aufgerufen werden.
    Beispiel: WEITERVERARBEITUNG_VON_VORBEHANDELTEN_ABFAELLEN_TABELLE

  • DOCUMENT_ELEMENT_UPLOAD
    Ein Systemfeld, das es Ihnen ermöglicht, mehrere Dokumente oder deren Revisionen hochzuladen.
    Sie können sie über die Drop Zone ID / Code, die Dokumenten-ID und die Dokumentenrevisions-ID aufrufen.
    Beispiel: DOKUMENTATION_DER_VORBEHANDELTEN_ABFALLE

NWL API - out of scope / Späterer Leistungsbereich

Schnittstellen für die folgenden Objekte sind in der ersten Version der API nicht enthalten:

  • Upload / Update der Ergebnisobjekte: Verfahrensqualifikation, Historische QV, APD/AGD, Verfahren Sonstige

  • Upload / Update bereits durch NWL „angelegte“ Antrag Versionen, Verfahren Versionen, etc.

  • Upload / Update Übergeordnete Unterlagen

  • Upload / Update VM Anträge

  • Upload / Update NWL – Organisationsstruktur und Nutzer

  • Andere Antrag Masterdaten und Referenzen, z.B. Liste von Anlagen, Konditionierungsverfahren, Konditionierungsstandorten, etc.

Workflows sind out of scope:

  • Phase P1 “Antragstellung”: Antrag intern prüfen & einreichen

  • Prozess Nachforderung: Antrag intern prüfen & einreichen

  • Alle anderen Prozesse und Workflows zwischen P2 und P5

Schnittstellen mit anderen Stakeholdern sind out of scope:

  • Schnittstelle für Gutachter / SV Daten und Prozesse

  • Aktive Schnittstellen von NWL zum AS