Einleitung

Überblick

Die Schnittstelle WebAPI bietet IT-Betreuern am KIT die Möglichkeit, eigene, speziell zugeschnittene Anwendungsprogramme für die Pflege ihrer netzdienste-spezifischen Anwendungsdaten aufzubauen.

Die Schnittstelle setzt auf der Netzdatenbank des SCC (NetDB) auf und ist für eine vollautomatisierte Nutzung auf Basis des heutzutage üblichen textbasierten Datenaustauschformates JSON (JavaScript Object Notation) vorgesehen (s.a. http://de.wikipedia.org/wiki/JavaScript_Object_Notation).

Sie ist ausschließlich über HTTPS erreichbar und kann dadurch mit jeder beliebigen HTTP-Programmbibliothek benutzt werden. Im Rahmen der implementierten Systeme (=Anwendungsbereiche), Objekttypen und Funktionen lassen sich sämtliche Daten durch entsprechende Dienstanforderungen (Requests) sowohl ausgeben bzw. abfragen als auch modifizieren (d.h. im Standardfall Eintragen, Ändern, Löschen). Die konkreten, jeweils versionsspezifischen Informationen und Parameter zu diesen Systemen, Objekttypen und Funktionen sind nicht Bestandteil dieser Dokumentation, sondern über den selbstdokumentierenden Systembereich bzw. Indexabfragen der WebAPI erreichbar.

Alle nachfolgenden Beispielangaben zu Requests sind auf die Verwendung des Programms ‘curl’ bezogen; zusätzlich sind auch Codevorlagen in der Programmiersprache Python vorhanden. Eine einfache, besser lesbare Formatierung der JSON-Ausgabe mit Zeilenumbrüchen und Einrückungen erreicht man z.B. mit ‘curl … | python -m json.tool’.

Zum Testen und Verstehen der API bietet sich das Entwicklungs-Webinterface ‘Swagger’ an. Dort steht in der

ein API-Browser zur Verfügung.

Generelles

Zugang und Registrierung

Auf HTTPS-Ebene findet die Identifizierung und Authentifizierung statt. Hierfür wird ein token-basiertes Authentifizierungsverfahren eingesetzt. Die dazu erforderlichen WebAPI-Token müssen vom Inhaber eines KIT-Benutzerkontos eingerichtet werden. Voraussetzung ist, dass dieses Konto mit einem gleichnamigen NetDB-Benutzerkonto verknüpft ist. Der bisherige, in den Vorgängerversionen verwendete zertifikatsbasierte Zugang wird in dieser Version ebenfalls bis zum 30.6.2021 unterstützt.

Detailliertere Informationen finden Sie im Hauptteil.