Abruf von Bestellungen über die REST Api filtern

Thema wurde von Rheingauer, 6. April 2019 erstellt.

  1. Rheingauer

    Rheingauer Mitglied

    Registriert seit:
    22. August 2011
    Beiträge:
    17
    Danke erhalten:
    1
    Danke vergeben:
    7
    Gambio-Shop Version 3.12.02

    Hallo,Ich bin gerade dabei, für unsere eigene Software eine Schnittstelle zum Verarbeiten von Bestellungen aus dem Gambio-Shop über die REST Api(v2) zu programmieren.

    Der Ablauf ist so:
    1. Bestellungen werden mittels GET über die Api als JSON aus dem Shop abgerufen.
    2. Aus den neuen Bestellungen werden automatisch Aufträge im WaWi erzeugt.
    3. Nach Freigabe im WaWi wird automatisch der Status im Gambio-Shop mittels PATCH über die Api auf 3 (versendet) gesetzt.
    4. Damit ist der Vorgang für die WaWi abgeschlossen.

    Funktioniert alles soweit bestens, nur eine "Kleinigkeit" stört noch:
    Beim Abrufen werden immer sämtliche Bestellungen, auch die bereits abgeschlossenen mit dem gesetzten Status 3, übermittelt. Beim Verarbeiten in der WaWi kann ich die natürlich einfach herausfiltern, aber der Abruf vom Shop und das Parsen des JSON-Strings nehmen dann zwangsläufig immer mehr Zeit in Anspruch.
    Aus diesem Grund würde ich gerne grundsätzlich nur die Bestellungen mit dem Bestellstatus 1 (offen) übermitteln.
    Auf der Suche nach einer Lösung bin ich In der Tabelle orders auf die Spalte orders_status gestossen. Diese enthält zwar die benötigte Information, nur wie kann man die nutzen? Wäre diese Spalte über die Api irgendwie als Filter verwendbar?
    Oder gibt es notfalls eine Lösung mittels direktem Eingriff in eine der .php-Dateien vom Shop?

    Bin dankbar für jede Anregung
    Matthias
     
  2. Anonymous

    Anonymous Administrator
    Mitarbeiter

    Registriert seit:
    26. April 2011
    Beiträge:
    1.669
    Danke erhalten:
    1.264
    Danke vergeben:
    300
    Hi,

    man kann per API die Suche benutzen um z.B. nur Bestellungen mit dem Status 1 zu suchen:

    (Link nur für registrierte Nutzer sichtbar.)
    (Link nur für registrierte Nutzer sichtbar.)
     
  3. markus_wick

    markus_wick Erfahrener Benutzer

    Registriert seit:
    10. Oktober 2018
    Beiträge:
    966
    Danke erhalten:
    214
    Danke vergeben:
    153
    Hallo!
    Da würde ich mich gerne mal einklinken! Ich würde gerne auch für diverse Vorgänge eine Schnittstelle zu meiner eigenen WaWi (basierend auf FileMaker für Mac) umsetzen, bin aber Stand jetzt diesbezüglich noch vollkommen unwissend...
    FileMaker versteht sich auf REST API Befehle und kommt auch mit dem JSON Format zurecht.

    Wie sieht der Befehl/HTTPS Aufruf oder so aus, um sich bei der Rest API des Gambio Shops zu authentifizieren und wie sieht dann der GET Befehl z.B. zum Abruf einer Bestellung aus?

    Wie gesagt, bin diesbezüglich noch völlig am Anfang, bin aber über jeden Hinweis dankbar, der mich in die richtige Richtung bringt :)
     
  4. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Hallo,

    hier sind alle API Calls die du benötigst:
    (Link nur für registrierte Nutzer sichtbar.)

    Bei den einzelnen Calls sind ja auch immer Example Snippets hinterlegt, z.B. hier:
    (Link nur für registrierte Nutzer sichtbar.)

    Da musst du dir dann halt nur noch die passende Sprache raussuchen. Wenn du mit MAC arbeitest, dann vermutlich Java, oder?
     
  5. Rheingauer

    Rheingauer Mitglied

    Registriert seit:
    22. August 2011
    Beiträge:
    17
    Danke erhalten:
    1
    Danke vergeben:
    7
    Hallo Till,

    besten Dank für den Denkanstoss in die richtige Richtung.
    Die Suche hatte ich gar nicht auf dem Schirm.
    Damit tun sich ja noch ganz andere Möglichkeiten auf :D
    Jetzt läuft der Bestellabruf über die API optimal.

    Viele Grüße
    Matthias
     
  6. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Beispielaufruf um Bestellung 400285 ausm Demoshop abzurufen:

    https://www.gambio-shop.de/shop1/api.php/v2/orders/400285

    admin@shop.de
    12345

    Kann man sich gut im Browser ansehen, Firefox stellt JSON dabei mit am lesbarsten dar.
     
  7. markus_wick

    markus_wick Erfahrener Benutzer

    Registriert seit:
    10. Oktober 2018
    Beiträge:
    966
    Danke erhalten:
    214
    Danke vergeben:
    153
    Danke für den Hinweis, Wilken, werde ich mir ansehen - hoffentlich werde ich schlau draus :)