imx.Content Delivery API: Für jede Frage eine zielgerichtete Antwort

Datum: 22. Juni 2022
Autor*in: Christian Heindl


Das infomax-Datenmanagement-System imx.Platform wird für das touristische Datenmanagement in sehr unterschiedlichen Kontexten und mit verschiedenen Zielrichtungen verwendet. Meist werden nur einzelne Module der imx.Platform verwendet und je nach Anwendungsfall wird unser umfangreiches und flexibles Datenmodell der Module in unterschiedlicher Tiefe verwendet.

Je nach Kontext werden daher von Datennutzern (auf API-Ebene) sehr unterschiedliche Fragen an die imx.Platform gestellt. Bisher hat die imx.Platform stets mit der gleichen Antwortstruktur und -umfang geantwortet. Aber kann eine einheitliche Antwort auf alle möglichen Fragestellungen diese zufriedenstellend auflösen? Wir glauben nein.

Mit der neuen Content Delivery API der imx.Platform lösen wir dieses Dilemma auf: auf jede spezielle Frage (und deren Kontext) kann die imx.Platform nun eine für den Kontext zielgerichtete Antwort liefern. Nicht mehr, aber auch nicht weniger.

Beim Design der neuen API war uns wichtig, diese performant, resilient und skalierbar zu gestalten. Mit einem cloud-nativen Ansatz ist es uns gelungen, diese Eigenschaften auch bei schwankenden Lastanforderungen und unterschiedlichsten API-Nutzertypen zu gewährleisten.

Dennoch kann die Schnittstelle – wie Sie es von uns gewohnt sind – sehr individuell angepasst und für Ihren Kontext erweitert werden. Auch können Sie mit der neuen API andere APIs über einen Endpunkt zusammen mit den Funktionalitäten der imx.Platform zur Verfügung stellen oder diese für Ihren Anwendungsfall miteinander verschneiden.

Technologisch basiert die neue API zur imx.Platform auf GraphQL – einer Open-Source Datenabfrage und -manipulationssprache, welche es erlaubt, sehr gezielte Anfragen und das gewünschte Antwortformat durch den API-Nutzer zu formulieren. Jede Anfrage erhält genau die Informationen als Antwort zurück, die im jeweiligen Kontext benötigt werden. Darauf aufbauend können fachlich APIs konstruiert werden – und nicht rein technisch getriebene Schnittstellen, wie sie häufig mit REST, HATEOAS oder einfach auch nur HTTP implementiert werden.

Sie wollen die neue API für Ihr Projekt nutzen? Sprechen Sie mit uns!


Dieser Artikel wurde verschlagwortet unter:


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


XAMPP: PHPUnit installieren

Autor*in: Stefan Oswald


Technologie


Im Auslieferungszustand funktioniert das in XAMPP installierte PHPUnit nicht, bzw. nicht so wie wir das bei infomax gerne hätten. Folgende Anleitung beschreibt die Einrichtung einer aktuellen PHPUnit-Installation, die mit XAMPP, NetBeans und unserer imx.Platform zusammen arbeitet. PHPUnit lässt sich am besten mittels PEAR installieren. Folgende Datei herunter laden und nach x:xamppphp kopieren: http://pear.php.net/go-pear.phar Sollte die …


Beitrag lesen
05
AUG
13

jQuery(document).unbind() löscht alle entsprechenden live event handler

Autor*in: Axel Güldner


Technologie


Beim Deployment des Bremen Portals ist mir heute eine Eigenheit von jQuery aufgefallen, der ich mir bisher nicht bewusst war. Auf der Startseite werden im Keyvisual kleine Teaserfenster bei Mouseover über so rote Infobubbles geöffnet. Die BTZ hatte sich nun gewünscht, dass diese Infofenster wieder geschlossen werden, sobald der User irgendwo außerhalb des Fensters klickt. …


Beitrag lesen
24
JAN
12

Open Graph Tags in der imx.Library

Autor*in: Bastian Schwarz


Technologie


Soeben habe ich eine neue Version des MetainfoGenerators bereitgestellt, der einen Builder und einen Renderer für die Open Graph Tags beinhaltet. Die Logiken zur Einbindung sind nicht im „Mock“-Smartyplugin enthalten, da die Logik sich von Portal zu Portal unterscheiden kann. Wicht dafür ist, dass die Open Graph Tags mind. aus title, image, url und type …


Beitrag lesen
04
SEP
12

PHP Locale Setting für Windows

Autor*in: Stefan Oswald


Technologie


Um deutsche Locales unter PHP auf einem Linux-System zu verwenden, setzt man einfach die gewünschte Locale-Einstellung (z.B. LC_TIME) auf de_DE.utf8, und in der Regel passt das dann. Zur Not kann man sich mit dem Kommandozeilen-Parameter locale -a auch einfach die verfügbaren Locales ausgeben lassen und weiß dann Bescheid. Falls die benötigte Locale nicht installiert ist, …


Beitrag lesen
16
DEZ
11