Zum Hauptinhalt springen

API Reference

StoreStash bietet eine RESTful API unter /api/v1/. Alle Responses sind JSON.

Base URL

http://localhost:3000/api/v1

Authentifizierung

Aktuell (v0.9.x)

Die API ist noch ohne Authentifizierung erreichbar. Ab v0.10.0 wird Auth eingeführt (Sessions, API-Keys, Kiosk-Tokens).

Allgemeine Konventionen

  • IDs sind UUIDs (v4)
  • Timestamps im ISO 8601 Format
  • Fehler als { "detail": "Fehlerbeschreibung" }
  • Pagination über page und page_size Query-Parameter
  • Content-Type: application/json

HTTP Status Codes

CodeBedeutung
200Erfolg
201Erstellt
204Gelöscht (kein Body)
400Ungültige Anfrage (Validierung)
404Nicht gefunden
422Unprocessable Entity (Pydantic-Fehler)
429Rate-Limit überschritten
500Interner Serverfehler

Rate-Limiting

Nginx limitiert auf 30 Requests/Sekunde pro IP mit Burst von 20.

Endpoints

ResourceEndpointMethoden
Products/productsGET, POST, PATCH, DELETE
Stock/stockGET, POST
Categories/categoriesGET, POST, PATCH, DELETE
Locations/locationsGET, POST, PATCH, DELETE
Barcode/barcode/{code}GET

Swagger UI

Im Debug-Modus (DEBUG=true) ist die interaktive Swagger-Dokumentation unter http://localhost:8000/docs verfügbar (direkt am Backend, nicht über Nginx).