PORTAL und PPS Knowledge Base

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

Mithilfe der PEIQ Cloud-Connect APIs (engl. Application Programming Interfaces, Programmierschnittstellen) können Verlage Teile ihrer bestehenden Systeme und Produkte mit dem PEIQ PORTAL verbinden. Alle Cloud-Connect APIs sind nach der REST-Architektur aufgebaut. Der Zugriff erfolgt dadurch mit den Standard HTTP-Methoden GET, POST, PUT und DELETE. Die Zugriffskontrolle erfolgt hierbei über eine Implementierung nach OAuth V2 Standard.

Die Dokumentation der Cloud-Connect API kann von berechtigten Benutzer:innen über die Administration & Moderation oder unter /admin/api aufgerufen werden. Hier steht eine interaktive Entwicklerdokumentation zur Verfügung.

Funktionalitäten der API (Cloud-Connect)

  • Anbindung bestehenden Systeme und Produkte

  • Interaktive Entwicklerdokumentation mit potenziellen Anwendungsmöglichkeiten der verfügbaren APIs

  • Verwendung des OAuth V2 Standards für die Zugriffskontrolle

Inhaltsverzeichnis

 Inhaltsverzeichnis anzeigen

Dokumentation zur PEIQ Cloud-Connect API

Die Dokumentation zur PEIQ Cloud-Connect API kann im PORTAL über die “Administration & Moderation” erreicht werden. Unter dem MenüpunktAPI 2.0 BETA Dokumentation” findet sich eine interaktive Entwicklerdokumentation, die eine Übersicht der potenziellen Anwendungsmöglichkeiten der diversen APIs im PEIQ PORTAL bietet. Näheres hierzu siehe API 2.0 Dokumentation PORTAL.

Verfügbare APIs im PEIQ PORTAL

Grundsätzlich stehen all diejenigen APIs zur Verfügung, deren zugehöriges Modul im jeweiligen PORTAL aktiv ist. Einen Überblick, welche Module im PORTAL aktiv und damit auch welche APIs potenziell verfügbar sind, bietet die Modulübersicht. Diese steht unter API 2.0 BETA Dokumentation in der Administration & Moderation zur Verfügung. Näheres siehe API 2.0 Dokumentation PORTAL.

Basis URL

https://yourdomain.com/api/v2/

Alle API Requests müssen über HTTPS gesendet werden. Requests über HTTP schlagen fehl. API Requests ohne Autorisierung werden ebenfalls fehlschlagen.

Findet die Konnektierung der API über eine htaccess-geschützte Staging-Umgebung statt, muss eine IP-Freigabe (oder Netzwerkfreigabe, z. B. falls mehrere Entwickler:innen aus dem gleichen Netzwerk zugreifen wollen) erfolgen. Dazu bitte an das PEIQ Support Team wenden.

Autorisierung

Um Zugriff auf die API zu erhalten, wird ein Token benötigt. Dieses kann über einen speziellen Endpunkt generiert werden, indem sich mit Client ID und Client Secret authentifiziert wird.

Diese API Credentials (Client ID und Client Secret) können

  • über die Verwaltung von API-Zugängen von berechtigten Benutzer:innen selbst erstellt werden: API Zugänge verwalten

  • über eine Änderungsanfrage beim Service Desk beantragt werden, sofern das Feature API-Konsole nicht aktiviert ist.

  • Die API Credentials können als “read-only” oder “read-and-write” eingerichtet werden.

  • Es ist darauf zu achten, dass bei einem “read-and-write” Modus Livedaten beeinflusst - geändert/gelöscht - werden können.

  • Kund:innen müssen sich also im Klaren darüber sein, wem sie diese Credentials weitergeben.

Auch zur Nutzung der Try it out Funktion in der API 2.0 Dokumentation PORTAL ist eine Authentifizierung erforderlich. Diese kann über den grünen Button “Authorize” in jedem Modul über folgende Maske eingegeben und bestätigt werden.

Bilder müssen für einen Import in das PORTAL von einer öffentlich zugänglichen URL abrufbar sein. Die Bilder können nicht direkt in das PORTAL eingespeist werden. Dies ist eine Maßnahme zur besseren Skalierbarkeit, um das System, bzw. die Schnittstelle nicht zu überlasten und eine schnelle Verarbeitung der Importe zu gewährleisten.

Anleitung zum Set-up

 Schritte nach Aktivierung des API-Managements durch PEIQ

Sie benötigen zum Set-up die Berechtigungsrollen:

  • Allgemein: Zugang zur Verwaltungsübersicht

  • API Dokumentation: Alle Berechtigungsrollen unter “Administration”

  • API-Zugang: Alle Berechtigungsrollen unter “Administration”

Es hat sich bewährt, für diese Art der Berechtigungen eine eigene Berechtigungsgruppe (z. B. Developer) anzulegen und diese ausgewählten Benutzer:innen zu Verfügung zu stellen.

1. Einrichtung der API-Zugänge / Autorisierungsdaten

Rufen Sie die Verwaltung für API-Zugänge auf und erstellen Sie die benötigten API-Zugänge. Eine detaillierte Anleitung finden Sie hier: https://peiq.atlassian.net/wiki/spaces/PUPKB/pages/249168027#API-Zugang-erstellen

Bitte beachten Sie auch die dort gegebenen Hinweise zur Verwaltung der Zugänge.

Nachdem Sie die Zugänge erfolgreich erstellt haben, erhalten Sie dort pro Zugang die API-Credentials: Client ID und Client Secret

  • Die API-Credentials können als “read-only” oder “read-and-write” eingerichtet werden. Bei einem “read-and-write”-Modus können die Livedaten beeinflusst - geändert/gelöscht - werden. Aus diesem Grund sollten diese Credentials für “read-and-write”-Zugänge nur an vertrauenswürden Dritte weitergegeben werden.

  • Wird Dritten der API-Zugang durch den oder die Kund:in zur Verfügung gestellt, wird empfohlen, dass der oder die Kund:in eigenständig mit diesen Dritten einen AVV (Vertrag zur Auftragsverarbeitung) abschließt.

  • Über die Benutzer-API können nutzerbezogene Daten bezogen und (bei read-and-write) auch verändert werden.

2. Zugang zur API Dokumentation 2.0 BETA

Die interaktive Entwickler-Dokumentation der PEIQ Cloud-Connect APIs kann in jedem PORTAL über die Administrations & Moderation > Sonstige > API 2.0 BETA Dokumentation ( oder über die relative URL /admin/api ) erreicht werden.

Sie finden dort interaktive Dokumentationen. Die Dokumentationen können dort dann als Open-API-Spezifikation zur Verwendung mit verschiedenen REST-Clients (z. B. Postman) heruntergeladen werden.

Weitere Details (z. B. auch zur Try-it-out-Funktion) finden Sie unter API 2.0 Dokumentation PORTAL.

3. Autorisierung

Bei der Zugangskontrolle handelt es sich um eine Implementierung nach dem OAuth V2 Standart. Auf die Details des Protokolls wird im Folgenden nicht eingegangen, stattdessen wird anhand von Beispielen demonstriert, wie die API zum Anfordern von Access Token verwendet werden kann.

Scope

N/A

Bundle Prefix

/oauth/v2

Beispiel URL

/oauth/v2/token

Dateistrukturen

AccesToken
{
"access_token": <string>, // Das Access Token
"expires_in": <int>, // Zeitraum in Sekunden, die das Token gültig ist
"token_type": <string>, // i.d.R. "bearer"
"scope": <string> // Liste der zugewiesenen Scopes, mit Leerzeichen getrennt
}
Workflow

Das Anfordern von Access Token über die client_credentials  erfordert die obigen Client ID und Client Secret. Die Methode ähnelt dem Benutzer-Login mit Benutzername und Passwort, es wird aber keine Session initialisiert und das Access Token ist auch nicht an einen oder eine Benutzer:in gebunden.

Achtung: Da diese Access Token mit System-Rechten ausgestattet und dementsprechend sehr mächtig sind, sollten sie niemals das Backend verlassen oder über unsicheren Wege verschickt werden.

Methode:

[GET]  /token

Parameter:

  • grant_type Muss immer den Wert client_credentials haben

  • client_id Die Client / Public ID

  • client_secret Das Secret (Passwort)

Rückgabewert:

  • Eine AccessToken Datenstruktur (siehe oben).

Es wird bei jedem GET Request ein neues Token erstellt, auch wenn das zuvor angeforderte noch gültig ist. Um unnötige Requests zu vermeiden, sollten einmal angeforderte Token trotzdem so lange verwendet werden, wie sie gültig sind.

4. Verwenden der API

Basis URL

https://domain.tld/api/v2

Alle API-Requests müssen über HTTPS ausgeführt werden. Requests über HTTP werden fehlschlagen. API-Requests ohne Autorisierung werden ebenfalls fehlschlagen.

Weiterführende Hinweise und ergänzende Funktionen finden Sie auch auf den Seiten der Knowledge Base:

FAQs

Zu Bilder-Workflows über die APIs:

 Ist für das Abholen von Bildern über eine Dritt-API eine Authentifizierung (z.B. Basic-Authentification) vorgesehen?

Eine HTTP Basic Authentication kann über die URL mitgegeben werden (z. B. https://user:pass@domain.tld/path ). Andere Formen der Authentifizierung beim Download der Bilder sind nicht vorgesehen. 

 Was sollte die maximale Auflösung der zu importierenden Bilder sein?

Das ist abhängig vom Use-Case: Sofern die Bilder aus dem PORTAL zu einem PRINT-System exportiert und dort weiterverwendet werden sollen (z. B. im PEIQ PRINT PPS), sollten sie entsprechend größer angeliefert werden. Ansonsten genügen kleinere Bildgrößen. Als Referenz: Die größte im PORTAL generierte Variante hat 2048px.

 Kann beim Update eines Image mit "PUT" tatsächlich keine "url" angegeben werden?

Bilder (Image Objekte) werden im PORTAL beim Erstellen fest mit einer Bilddatei verknüpft, es ist nicht möglich, das Objekt beizubehalten und die Datei auszutauschen. Dementsprechend sind Bild-Updates im Sinne einer aktualisierten Bilddatei nur möglich, indem das Bild gelöscht (DELETE) und das neue Bild importiert (POST) wird.

Verwandte Seiten

Disclaimer

Für die vorliegende Systemübersicht/Publikation behalten wir uns alle Rechte vor. Nachdruck, Vervielfältigung und Verbreitung (auch auszugsweise) ist nur mit schriftlicher Genehmigung der PEIQ Publishing GmbH & Co. KG erlaubt. Wir behalten uns vor, die Systemübersicht/Publikation jederzeit ohne vorherige Ankündigung zu ändern und/oder zu erweitern. Die vorliegenden Angaben dienen lediglich Informationszwecken. Die PEIQ Publishing GmbH & Co. KG übernimmt keinerlei Haftung und/oder Garantie für Fehler und/oder unvollständige Angaben in der Systemübersicht/Publikation, mit Ausnahme von vorsätzlich falschen oder arglistig verschwiegenen Angaben. Da unsere Software laufend weiter entwickelt wird, handelt es sich bei den vorliegenden nur um allgemeine Angaben. Es handelt sich weder um eine Zusicherung von Mindestvertragsinhalten, noch um Beschaffenheitsgarantien im Sinne des § 443 BGB.

  • No labels