API Translator - RESTful Services Integration

Factsheet   Manual

Die schöne neue Welt der Service Oriented Architecture verspricht oftmals, man könne bliebige Software-Produkte leicht miteinander integrieren, solange sie denn ein SOAP oder RESTful API hätten. Auf den allerersten Blick stimmt das auch. Aber sehr schnell wird klar, dass nur weil zwei Produkte die gleich Schnittstellentechnologie verwenden, sie noch lange nicht die gleiche Sprache sprechen. Ein Übersetzer muss her.

Manchmal möchte man auch ein vielleicht veraltetes Produkt durch ein neues austauschen. Nun hat das verbleibende vielleicht keine Schnittstelle hin zu dem Ersatzprodukt. Man kann jetzt eine neue Schnittstelle beim Hersteller des verbleibenden Produkts anfordern. Nicht selten wird der aber einen stolzen Preis aufrufen oder hat das Produkt selbst gar abgekündigt. Und schon wurde aus einer Ersatzbeschaffung gleich ein kleineres oder gar größeres Projekt, welches hohe Kosten nach sich zieht.

Der API Translator Service

Hier kann der API Translator Service von x-dream-media helfen.

API Translator

Er nimmt API Aufrufe via SOAP oder RESTful Protokoll entgegen. Als Erstes untersucht er die aufgerufene URL nach Hinweisen, welcher Dienst eigentlich als Ziel hätte aufgerufen werden sollen. Dies erscheint auf den ersten Blick überflüssig, will man ja nur ein Produkt durch ein anderes austauschen. Auf den zweiten Blick erkennt man aber die sich auftuenden Möglichkeiten. Denn man kann nun z.B. ein veraltetes Produkt durch zwei neue, spezialisierte Produkte austauschen. Beispielhalft könnte man einen alten Transcoder durch einen neuen Transcoder und einen neuen Re-Wrapper austauschen.
Im zweiten Schritt wendet er nun eine für das ermittelte Ziel-API passende Übersetzungstabelle auf die Payload des Aufrufs an. Die entstandene XML-Struktur wird nun an das Ziel-API per SOAP- oder RESTful-Aufruf weitergegeben.
Allermeist wird das Zielsystem eine Antwort zurückgeben. Diese muss nun im dritten Schritt wieder für den ursprünglich aufrufenden Service übersetzt werden. Dies erfolgt mittels eine Rückübersetzungstabelle. Abschließend wird die Antwort an den aufrufenden Service weitergeleitet.

Es bleibt die Frage, wo die Übersetzungstabellen herkommen.
Hier hilft die Kombination einer Selbstlernfunktion und eines GUIs. Neue, dem API Translator noch unbekannte Aufrufe oder Antworten werden einem Administrator in der GUI vorgelegt. Dieser muss die Zuordnungen von Quell- und Ziel-API-Format/Sprache vornehmen. Ähnliche Anfragen und Antworten verarbeitet der API Translator dann selbstlernend eigenständig.