OXID APIS mit GraphQL und REST

Derzeit gibt es keine vollständige Schnittstelle (API) um Daten aus dem OXID eShop zu exportieren bzw. importieren. Ausgenommen ist die kostenpflichtige ERP-Schnittstelle (SOAP), welche nur mit einer PE oder EE eingesetzt werden kann.

Bereits im Mai hat das OXID Team jedoch angekündigt, eine GraphQL-Schnittstelle zu entwickeln. Der aktuelle Stand wurde letzte Woche auf dem OXID Partnertag in Freiburg vorgestellt. Das Basismodul, welches für die Authentifizierung benötigt wird, sowie ein kleines Beispielmodul, sind mittlerweile auf Github verfügbar.

Alternativ stehen derzeit folgende (unvollständige) API-Möglichkeiten zur Verfügung:

  • OXID REST API für OXID 6
    Im Zuge des OXID Hackathons 2018 wurde auf Basis von Lumen mit der Entwicklung einer REST API angefangen. Neben der Authentifizierung ist auch bereits die erste Route (oxarticles) komplett fertig. Die Schnittstelle kann mit OXID Framework und ohne (nur Datenbank) genutzt werden.
    https://docs.oxid-projects.com/oxid-rest-api/
  • OXID REST API für OXID 4/5
    Bereits 2014 hat das Team von shoptimax angefangen, eine JSON-REST-API zu entwickeln. Bis vor zwei paar Jahren wurde diese auch immer wieder erweitert.
    https://www.proudcommerce.com/blog/erweiterung-rest-api-oxidjson
  • REST-API für OXID Datenbank
    Das ebenfalls auf Github verfügbare Projekt besteht aus nur einer PHP-Datei. Trägt man hier die Datenbankzugangsdaten zum OXID Shop ein, steht ab sofort die komplette Datenbank als REST-Schnittstelle zur Verfügung. Es ist zwar hiermit nicht möglich, Funktionen/Objekte aus dem OXID-Framework zu nutzen, jedoch können alle Daten ausgelesen, geändert, eingetragen und gelöscht werden.
    https://github.com/mevdschee/php-crud-api

Wir hoffen, dass in Kürze auch der aktuellste Code der GraphQL-API zur Verfügung stehen wird, so dass sich die OXID Community an der Entwicklung beteiligen kann.



0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.