API-Zugang für die Bereitstellung von Containern

Die IBM® Sterling Intelligent Promising -API-Dokumentation ist in einem anderen Container verfügbar, der von IBM Sterling Intelligent Promising Operator bereitgestellt werden kann. Sie können den API-Dokumentationscontainer auch extern bereitstellen, ohne den Operator zu verwenden.

Zugriff auf API-Dokumentation

In der folgenden Tabelle sind die URLs für den Zugriff auf API-Dokumentation für alle Services aufgelistet.

Wichtig: Wenn Sie diese URLs verwenden, ersetzen Sie <base_URL> durch Ihre Domänenadresse.
Service- URL
Bestand <base_URL>/api-docs/inventory.html
Zusage <base_URL>/api-docs/promising.html
Konfiguration <base_URL>/api-docs/configuration.html
Katalog <base_URL>/api-docs/catalog.html
Spediteur <base_URL>/api-docs/carrier.html
Regeln <base_URL>/api-docs/rules.html

API-Dokumentation mithilfe von IBM Sterling Intelligent Promising Operator implementieren

Fügen Sie apiDocsService zur Spezifikation SIPEnvironment hinzu, um die API-Dokumentation mithilfe des Operators bereitzustellen. Wenn apiDocsService nicht in der SIPEnvironmentdefiniert ist, wird der API-Dokumentationscontainer nicht bereitgestellt. Weitere Informationen finden Sie unter apiDocsService Parameter.

Implementierung der API-Dokumentation ohne IBM Sterling Intelligent Promising Operator

Wenn Sie API-Dokumente extern bereitstellen möchten, die ohne den Operator IBM Sterling Intelligent Promising sind, verwenden Sie einen Docker-Container oder Kubernetes. URL für den externen Zugriff auf API-Dokumente lautet <base_URL>/api-docs, wobei <base_URL> für http://localhost:<host_port>/ steht. Verwenden Sie den folgenden Befehl, um einen Docker-Container der API-Dokumentation zu erstellen. Für <image_name> siehe "Registry image names for Sterling Intelligent Promising package ".

docker run -p <host_port>:8080 --name <container_name> <your registry>/<image_name>

APIs authentifizieren

Sie können APIs mithilfe des JSON Web Token in einem API-Aufruf authentifizieren.

JSON-Web-Tokens generieren
JWT kann auf zwei Arten generiert werden:
  • JWT generiert von Order Management System Software (OMS)
    Order Management System Software generiert JWT, nachdem die JWT-bezogene Konfiguration aktiviert wurde. Um das Token von OMS abzurufen,
    • Rufen Sie die REST-API für die Anmeldung in OMS auf, indem Sie die Anmelde-ID/das Kennwort verwenden, und rufen Sie das Benutzertoken aus der API-Ausgabe ab
    • Rufen Sie den /jwt?_loginid=<loginid>&_token=<user token fetched in previous step> -REST-Endpunkt in OMS auf, um das JWT abzurufen.
  • Vom externen System generiertes JWT

    Sie können Ihr externes System so konfigurieren, dass das JWT generiert wird, das für API-Aufrufe in IBM Sterling Intelligent Promisingverwendet werden kann. Stellen Sie sicher, dass Sie den öffentlichen Schlüssel in der IBM Sterling Intelligent Promising JWT-Gateway-Prüffunktion konfigurieren, wie im Abschnitt Geheimen Schlüssel für JWT-Aussteller mithilfe eines öffentlichen Schlüssels erstellenbeschrieben.

Das JSON Web Token muss als Trägertoken im Anforderungsheader für die API-Aufrufe übergeben werden.
JWT-Nutzdaten

Das folgende Snippet ist ein Beispiel für Nutzdaten für JWTs. iss und exp sind Pflichtfelder in den Nutzdaten.

{
 “iss”: “oms”,
 “aud”: “sip”,
 “exp”: 1688772650,
 “nbf”: 1567771750,
 “sub”: “user”,
 “userID”: “user”,
}

Rollenbasierter Zugriff für den Zugriff auf APIs

Um optimale Sicherheit und betriebliche Effizienz zu erreichen, bieten ' Sterling Intelligent Promising die folgenden Rollen für den Zugriff auf APIs.

Rolle Beschreibung API-Endpunkte
WIRTSCHAFT Benutzer, die die Rolle BUSINESS abonniert haben, führen verschiedene Anwendungsfälle für Geschäftsoperationen aus. Abonnenten dieser Rolle haben Zugriff auf alle APIs mit Endpunkten wie /inventory, /configuration, /catalogusw.
  • https://<sip-domain>/inventory/*
  • https://<sip-domain>/promising/*
  • https://<sip-domain>/configuration/*
  • https://<sip-domain>/catalog/*
  • https://<sip-domain>/cas/*
  • https://<sip-domain>/optimizer/*
OPERATIVER BEREICH Benutzer, die die Rolle OPERATIONS abonniert haben, verwalten Bereitstellungen und legen Regeln für Tenants fest. Abonnenten dieser Rolle haben Zugriff auf APIs mit dem Endpunkt /operations . https://<sip-domain>/inventory/operations/*
Verwaltung

Benutzer, die die Rolle ADMINISTRATION abonniert haben, verwalten Governance, Benutzerzugriff und andere Verwaltungstasks. Abonnenten dieser Rolle haben Zugriff auf APIs für Geschäfts-und Operationsrollen sowie für Verwaltungs-APIs.
  • https://<sip-domain>/private/*
  • Enthält Endpunkte für die Rollen BUSINESS und OPERATIONS

Informationen zum Konfigurieren einer Servicerolle im geheimen JWT-Konfigurationsschlüssel finden Sie unter Geheimen Schlüssel für JWT-Aussteller mithilfe eines öffentlichen Schlüssels erstellen.

APIs aufrufen

Stellen Sie beim Aufruf von APIs sicher, dass tenantId als defaultübergeben wird.

Beispiel: https://<sip-domain>/inventory/<tenantid>/v2/availability/node.

Überschrift

"Content-Type" : "application/json"
"Authorization" : "Bearer [JWT_token]"

Hauptteil

{
  "demandType": "OPEN_ORDER",
  "lines": [
    {
      "deliveryMethod": "SHP",
      "itemId": "sample0123",
      "lineId": "line_sample01234",
      "productClass": "NEW",
      "shipNodes": "["eastnode01"]",
      "unitOfMeasure": "EACH"
    }
  ],
  "segment": "ONLINE",
  "segmentType": "Channel"
}