Wenn Sie eine API in Portal verwenden, die die Nutzung von Tokens (Client IDs und Client Secrets) erfordert, erklärt dieser Artikel, wie diese generiert werden.
- Erstellen einer Client ID und eines Client Secrets
- Übersicht der Scopes
- Abrufen eines Zugriffstokens
Bitte beachten Sie, dass nur Benutzer mit den Rollen „owner“ und „admin“ Zugriff auf die Seite API Configuration haben. Es wird empfohlen, einen speziellen Admin-Benutzer für API-Interaktionen zu erstellen. Bei der Shipment Data API ermöglicht dies beispielsweise die Anpassung des Shipment Viewer-Profils an genau die Daten, die Sie zurückgeben möchten, ohne die UI-Konfiguration anderer Benutzer zu beeinflussen.
Falls Sie mit den in nShift Ship verwendeten Benutzertypen und Rollen nicht vertraut sind, empfehlen wir Ihnen, diesen Artikel zu lesen: Benutzertypen und Rollen verstehen.
Erstellen einer Client ID und eines Client Secrets
- Melden Sie sich mit Ihrem Owner-Benutzer bei nShift Portal an.
- Klicken Sie oben rechts auf Settings.
- Wählen Sie im linken Menü API Configuration > Clients.
- Klicken Sie auf der Seite Clients auf die Schaltfläche Add.
- Füllen Sie im geöffneten Dialogfeld die Felder Display name und Description aus. Wählen Sie einen Namen und eine Beschreibung, die das spätere Identifizieren des Tokens erleichtern. Aktivieren Sie das Kontrollkästchen Enable, um das Token sofort zu aktivieren. (Sie können das Token jederzeit nach der Erstellung aktivieren oder deaktivieren).
- Wählen Sie die Allowed Scopes, also die APIs, auf die Sie Zugriff benötigen.
- Klicken Sie auf Save. Ihre Client Id und Ihr Client Secret werden nun generiert und auf dem Bildschirm angezeigt. Wichtig: Notieren Sie sich die Tokens, da das Client Secret nach dem Schließen des Pop-ups nicht mehr verfügbar ist.
- Klicken Sie auf Save, um die Erstellung des Tokens abzuschließen.
- Das Token wird nun auf der Seite Clients angezeigt. Sie können jederzeit auf ein Token klicken, um es zu bearbeiten oder zu löschen oder um es zu aktivieren/deaktivieren. Wenn Sie eine lange Liste von Tokens haben, können Sie die Filteroption oben verwenden, um nur aktivierte oder deaktivierte Tokens anzuzeigen.
Übersicht der Scopes
Diese Liste erklärt die Verwendung der verschiedenen Scopes. Aus Sicherheitsgründen empfehlen wir, nur die Scopes auszuwählen, die Sie benötigen. Es ist besser, mehrere Client IDs mit eingeschränkten Scopes zu erstellen als eine ID, die mehrere Scopes abdeckt.
-
Public Containers API (public_containers_api) – Wird benötigt, um die Container-API zur Verwaltung von Containern zu verwenden. Lesen Sie mehr über die Container-API hier. Sie benötigen diesen Scope auch, wenn Sie Container in nShift On-premises verwenden möchten, lesen Sie mehr hier.
-
Public COP Cloud Access (public_cop_cloud_access) – Wird für die sichere Kommunikation zwischen On-premises und Portal verwendet, damit Subscriptions ausgeführt werden können.
-
ScanApp public Api (public_api_scanapp_consignor) – Wird benötigt, um Container in nShift On-premises zu verwenden. Dieser Scope gibt On-premises Zugriff darauf, eine Liste verfügbarer Action Centers basierend auf dem der Installation zugeordneten Owner abzurufen. Lesen Sie mehr über Container in On-premises hier.
-
Portal Shipment Data API (public_api_portal_shipment_data) – Wird benötigt, wenn Sie die Shipment Data API verwenden möchten, um Sendungsinformationen aus Portal abzurufen. Lesen Sie mehr über die Shipment Data API hier.
- Shipment Server (public_api_shipmentserver) – Dieser Scope wird benötigt, um die Shipment Server API Version 2 zu verwenden. Lesen Sie mehr hier.
Abrufen eines Zugriffstokens
Verwenden Sie Ihre Client ID und Ihr Client Secret, um ein Zugriffstoken zu generieren, das für weitere Anfragen an unsere API benötigt wird. Dies geschieht durch eine POST-Anfrage an den folgenden Token-Endpunkt:
https://account.nshiftportal.com/idp/connect/token
Geben Sie die Client ID, das Client Secret und den Grant Type in der von Ihrem Unternehmen verwendeten Sprache und dem entsprechenden Framework an.
Beispiel:
POST https://account.nshiftportal.com/idp/connect/token
Cache-Control: no-cache
Host: www.nshiftportal.com
Content-Type: application/x-www-form-urlencoded
client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=client_credentials
Wenn die Anfrage gültig ist und der Client korrekt konfiguriert wurde, erhalten Sie eine JSON-Antwort:
{
"access_token": "some-real-token-data-dskjfhsuijkdhfgjkasjdgfhqoeiefoiknsoidfgvoiltgjvpdrofjmwpkldujrftvoifgkhbnilsakjprotglijkqp2owrlfjkvmowrifgho2qw9ouejifpe9rodtuj3-0porfij9odtujgw0etioyh",
"expires_in": 3600,
"token_type": "Bearer"
}
Weiterführende Informationen
Alle unsere neuen APIs unterstützen eine OpenID-Lösung für erhöhte Sicherheit. Weitere Informationen finden Sie in der Standarddokumentation zu OpenId und IdentityServer: