Zum Inhalt springen

Status abfragen statt Webhooks

Die API sendet keine Webhooks. Änderungen erfährst du, indem du abfragst.

Die Liste GET /api/orders ist nach Eingang absteigend sortiert (neueste zuerst) und lässt sich filtern. Der Filter status ist mehrwertig: Wiederhole den Parameter, zum Beispiel status=CHECK&status=ERROR. Alle Filter gelten gleichzeitig.

Für eine einzelne Bestellung nutzt du GET /api/orders/{order_id} mit tracking=true. Dort stehen Status, Rückhaltegrund und Sendungen.

Empfehlung:

  • Frage Listen in einem festen Takt ab, zum Beispiel alle paar Minuten, und nicht jede Bestellung einzeln.
  • Frage einzelne Bestellungen nur ab, solange du auf eine Änderung wartest, und werde dabei langsamer: erst nach Sekunden, dann nach Minuten.
  • Höre auf zu fragen, sobald die Bestellung einen Endstatus erreicht hat.
  • Beachte das Budget: RateLimit-Remaining zeigt dir, wie viel übrig ist.

Rechnungs-PDFs entstehen erst beim ersten Abruf im Hintergrund. GET /api/invoices/user/{invoice_id}/pdf meldet deshalb einen Zwischenstand:

Fall HTTP status pdf_url
PDF liegt vor 200 ready signierte URL
PDF wird erzeugt 202 generating null
PDF kommt nicht mehr 200 failed null

Solange 202 mit generating kommt, wiederholst du denselben Aufruf. Ein Abstand von einigen Sekunden genügt. Wichtig:

  • failed kommt mit 200, nicht mit 202 und nicht als Fehler. Prüfe status, nicht nur den HTTP-Code.
  • Der erste Abruf stößt die Erzeugung an. Weitere Abrufe innerhalb von 5 Minuten stoßen sie nicht erneut an. Danach wird sie bis zu dreimal angestoßen. failed kommt frühestens etwa 15 Minuten nach dem ersten Abruf.
  • Die URL in pdf_url ist signiert und 15 Minuten gültig. Lade die PDF sofort oder hole mit einem neuen Aufruf eine frische URL.
Terminal-Fenster
curl -i https://gateway.shirtee.cloud/api/invoices/user/123/pdf \
-H "Authorization: Bearer $SHIRTEE_API_KEY"

Die genauen Pfade und Antworten stehen in der API-Referenz.