Probleme mit REST-API beim Aufruf einzelner Bestellungen

Hallo,

ich habe folgendes Problem mit der Version 5.1.1: das Abfragen einer Bestellliste via REST-API funktioniert einwandfrei (/api/orders), jedoch das Abfragen einer einzelnen Bestellung liefert nur folgendes Ergebnis:

 {"success":false,"message":"Resource not found"}

Diese Antwort erhalte ich sowohl bei der Abfrage über die id (/api/orders/126542) als auch über die Bestellnummer (/api/orders/51334?useNumberAsId=true). Die erwähnte Bestellung wird in der Liste angezeigt und das gleiche Ergebnis erhalte ich bei jeder anderen angezeigten Bestellung.

Dem API-Benutzer habe ich eine Admin-Rolle gegeben, um ein Rechteproblem auszuschließen.

Ist das ein bekannter Bug in der 5.1.1 oder habe ich etwas übersehen?

Viele Grüße

Christoph

 

 

Hallo Christoph,

das klingt für mich nach einer falschen Anfrage URL. Hast du es mal im Browser probiert? 

Sollte nämlich die ID nicht gefunden werden lautet der Fehler ja Order by ID not found… 

Viele Grüße

Hallo tny,

vielen Dank für die Antwort, habe es auch im Browser und mit dem Chrome Plugin POSTMAN probiert. Leider immer dasselbe Ergebnis: Liste

 "success":true

und bei einzelner Bestellung false.

Also ich kann dir nur bestätigen das es bei mir in 5.1.1 funktioniert. 

Hast du mal in engine/shopware/controllers/api/orders.php in der get action testweise in zeile 1 ein die() eingefügt?

Hi,

“resource not found” deutet in der Regel auf ein Routung-Problem bzw. Typo hin und wird hier geworfen: \Shopware_Controllers_Api_Error::errorAction

Generell ist es so, dass die Order-Ressource in der getOne nur Bestellungen zurück gibt, die NICHT den Status -1 (abgebrochen) haben und eine gültige Bestellnummer gesetzt haben. Bei anderen Bestellungen würde die API die Order als “nicht gefunden” bezeichen - allerdings zumindest in meiner Version nicht als “Resource not found”, von daher bin ich mir nicht sicher, ob es bei dir daran liegt.

Daniel