Zum Hauptinhalt springen

REST-API v6

Die Cloud-REST-API ist unter https://profipos.de/api/v6/* erreichbar und liefert JSON.

Authentifizierung

  • Standort-Server-Endpoints verwenden eine X-Server-Token-Header- Authentifizierung (per Provisioning generiert).
  • Bestellportal-Endpoints sind anonym + CORS-offen.
  • Backoffice-API (kommt) wird Session-basiert via Cookie.

Endpoints

Standort-Server-Pairing

MethodePfadBeschreibung
POST/api/v6/server/{uuid}/pollStandort-Server pollt seine Inbox
GET/api/v6/server/inboxBackoffice: alle wartenden Aufgaben
POST/api/v6/server/inbox/{id}/ackStandort-Server bestaetigt Aufgabe

Geraete-Onboarding (Stufe 1, Display)

MethodePfadBeschreibung
POST/api/v6/einrichtung/{code}/pollGeraet pollt seine Freischaltung
POST/api/v6/einrichtung/{code}/freigebenBackoffice gibt Geraet frei

Geraete-Discovery (Stufe 2, headless)

MethodePfadBeschreibung
POST/api/v6/devices/discoveredStandort-Server meldet neues Geraet
POST/api/v6/devices/claimBackoffice ordnet Geraet zu

Bestellportal

MethodePfadBeschreibung
GET/api/v6/bestellportal/standorteAktive Standorte (alle Mandanten)
GET/api/v6/bestellportal/standort/{uuid}/kategorienKategorien fuer Standort
GET/api/v6/bestellportal/standort/{uuid}/artikelSichtbare Artikel
POST/api/v6/bestellportal/bestellungNeue Bestellung anlegen
GET/api/v6/bestellportal/bestellung/{uuid}Status einer Bestellung

Bestellung anlegen

POST /api/v6/bestellportal/bestellung

{
"standort_uuid": "...",
"typ": "abholung",
"positionen": [
{ "artikel_uuid": "...", "menge": 2 }
],
"kunde": {
"name": "Max Mustermann",
"email": "max@example.com",
"telefon": "+49..."
}
}

Response 201:

{ "uuid": "...", "nummer": 1234 }

Fehlerformat

{ "fehler": "kunde_unvollstaendig" }