REST-API verwenden

In Innovator können Sie eine REST-API zwischen Client und Server einrichten. Hierfür müssen Sie zunächst einen REST-Server einrichten und diesen im Anschluss konfigurieren, bevor Sie die REST-API verwenden können. Dieses Hilfethema beschreibt die Verwendung der REST-API.

Voraussetzungen

  • Ein REST-Server wurde eingerichtet und konfiguriert.

  • Bei der Verwendung einer HTTPS/TLS-Verbindung muss dem Zertifikat des Servers vertraut werden.

Verwendung der REST-API

1 von 4: Token-basierte Authentifizierung

  • Für den Zugriff auf die REST-API muss ein Token angefordert werden. Der Zugriff auf die API wird durch das Token autorisiert, das für jede Anfrage mitgeschickt wird.
    Dokumentation: http(s)://<restserverinohost>:16106/api-docs/index.html#tag/Tokens

  • Subscription-Token (bei Subscription-Lizenz): Wenn eine Subscription-Lizenz vorliegt, muss ein Subscription-Token angefordert und mit jeder Anfrage übermittelt werden.
    Beispiel-Endpunkt: http(s)://<restserverinohost>:16106/api-docs/index.html#tag/Tokens/paths/~1tokens~1subscription/post

  • Login:
    Für SSO-Repositories/Modelle müssen die Windows-Anmeldedaten (Benutzername/Passwort) gesendet werden.

    Für Nicht-SSO-Repositories/Modelle sind die Modell-Logindaten erforderlich.

2 von 4: Caching-Mechanismus bei Token-Anforderung

  • Bei der Token-Anforderung wird auch eine CacheID zurückgegeben. Diese kann bei einer erneuten Token-Anforderung mitgeschickt werden, um den Anmeldevorgang zu beschleunigen. Der neue Token enthält dann alle Anmeldungen aus dem Cache.
    Dokumentation: http(s)://<restserverinohost>:16106/redoc

3 von 4: Verwendung der Client-API (C#)

  • Ein Beispiel zur Verwendung der C#-Client-API:

Kopieren
Beispiel zur Verwendung der C#-Client-API
RestLicenseServer licSrv = new("pc-test.innovator.mid", 16106, false, 200000);
licSrv.AdminLogin("testuser", Secret.SSOPassword, "licenseAdminPassword");
if (licSrv.IsSubscription) 
    licSrv.SubscriptionLogin("testusermail@mid.de", Secret.SubscriptionPassword);

RestRepositoryServer repoSrv = licSrv.RepositoryList.First(r => r.Name.Equals("Demo"));
repoSrv.RepositoryAdminLogin("testuser", Secret.SSOPassword);

RestModel model = repoSrv.Models.First(m => m.Name.Equals("Enterprise Modeling Autovermietung"));
model.LoginModelAdmin("testuser", Secret.SSOPassword);
  • Weitere Dokumentation zu den REST-Endpunkten finden Sie unter: http(s)://<restserverinohost>:16106/redoc

4 von 4: Lizenzierung des REST-Servers

Der REST-Server unterstützt zwei Lizenzierungsmodelle:

  • Floating-Lizenz (Concurrent-Lizenz): Hierbei können beispielsweise bis zu zehn Benutzer gleichzeitig die REST-API nutzen, wenn zehn Lizenzen vorhanden sind.

  • Subscription-Lizenz (Named-Lizenz): Jeder Benutzer mit einer gültigen Lizenz kann die REST-API verwenden.