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 NWL Produktiv und Test Instanzen): Die Anwendung authentifiziert sich mit ihrer Mandanten-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:
-
SCHULUNG - https://schulung.nwl.bge.de
-
TEST - https://test.nwl.bge.de
-
PRODUKTIV - https://plattform.nwl.bge.de
{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 > Endlagerkampagnen
- Antragsteller Organisation > Übergeordnete Unterlagen
- Endlagerkampagne > Anträge > Unterlagen > Unterlagen Revisionen
- Endlagerkampagne > VM Antrag
- Endlagerkampagne > VM Antrag - Antrag
- Endlagerkampagne > Verfahren
- Antragsteller Organisation > Benutzer
- Referenzen > Referenzen Titel
NWL API Ressourcen - Endlagerkampagnen
APIs in Verbindung mit Endlagerkampagnen:
- Endlagerkampagne erstellen
- Endlagerkampagne aktualisieren
- Endlagerkampagne löschen
- Endlagerkampagne 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ägen, Antrag Angaben. P1 - Zielprozess “Antragstellung”. P2, P3 und P4 - Zielprozess “Nachforderung”:
NWL API Ressourcen - Unterlagen / Dokumente
APIs in Verbindung mit Unterlagen. P1 - Zielprozess “Antragstellung”. P2, P3 und P4 - Zielprozess “Nachforderung”:
- Dokument hochladen für Antrag
- Unterlagen aktualisieren - Dokument Revision hochladen
- Dokument löschen für Antrag
- Unterlagen (Metadaten) erhalten für Antrag - [GET] Antrag erhalten
- Übergeordnete Unterlagen erhalten (in Bearbeitung)
NWL Antragstellung API - Benutzer und Referenz Tabellen / Stammdaten erhalten
APIs zum Abrufen der Daten von NWL:
- Benutzer erhalten
- Masterdaten erhalten - um eine Liste der Masterdaten / Referenz Tabellen zu erhalten, Feldwerteliste erhalten
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“ - EXPONENT
-
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 "JJJJ-MM-TTTSS:MM:SS" angezeigt wird. -
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. - DOCUMENT_ELEMENT_UPLOAD
Ein Systemfeld, das es Ihnen ermöglicht, mehrere Dokumente oder deren Revisionen hochzuladen.
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