Onlineshop-Widget

API-Referenz

Die HTTP-Endpunkte hinter dem Widget: Kalkulation und Cart-Intent, mit Authentifizierung und Antwortformaten.

Widget und SDK decken den üblichen Weg ab, aber alles ist auch als einfache HTTP-API auf dem Embed-Host verfügbar (https://embed.scalarcut.com). Verwenden Sie sie für Headless- oder serverseitige Integrationen.

Authentifizierung

API-Aufrufe authentifizieren sich mit einem Widget-Token, das Ihrem Konto ausgestellt wird. Übergeben Sie ihn als Bearer-Token:

Authorization: Bearer $WIDGET_TOKEN

Das Token trägt Ihre Enterprise-ID, die Widget-Schlüssel-ID und den Katalog, auf den es beschränkt ist. Tokens werden beim Laden des Widgets ausgestellt, sind sieben Tage gültig und werden bei jedem Laden rotiert; Ihr Server holt für serverseitige Aufrufe ein frisches.

Kalkulation

POST /v1/tiling/estimate

Führt die Layout-Engine aus und gibt die vollständige Materialliste für eine Wand oder einen Boden zurück. Der Body ist dasselbe Layout-Dokument, das die Studio-Ansicht erstellt:

curl -X POST "https://embed.scalarcut.com/v1/tiling/estimate" \
  -H "Authorization: Bearer $WIDGET_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "catalog": "YOUR_CATALOG_SLUG",
    "tile": { "sku": "CER-600-300" },
    "surfaces": [ { "width": 2.4, "height": 2.5, "openings": [] } ]
  }'

Ist ein Katalog gesperrt, nimmt der Endpunkt die Fliesenmaße aus dem SKU, sodass eine Anfrage nie von der echten Kataloggeometrie abweichen kann.

Cart-Intent

POST /v1/tiling/cart-intent

Löst ein Layout ohne Browser in Warenkorbzeilen auf:

curl -X POST "https://embed.scalarcut.com/v1/tiling/cart-intent" \
  -H "Authorization: Bearer $WIDGET_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "catalog": "YOUR_CATALOG_SLUG",
    "sku": "CER-600-300",
    "layoutFingerprint": "…",
    "quantities": { "boxes": 5 }
  }'

Antwort:

{
  "lines": [
    { "sku": "CER-600-300", "qty": 5, "unit": "box" }
  ],
  "layoutFingerprint": "…",
  "layoutToken": "…"
}

Ist Verbrauchsmaterial für den Shop aktiviert, kann die Anfrage auch adhesiveKg, groutKg und primerL tragen, und die Antwort erhält die entsprechenden Kleber-, Fugenmörtel- und Grundierungszeilen.

SDK

GET /v1/sdk.js

Liefert das Embed-SDK, das Ihre Seiten laden. Es ist versionsstabil und sicher zu cachen:

<script src="https://embed.scalarcut.com/v1/sdk.js"></script>

Fehler

Die API gibt Standard-HTTP-Statuscodes mit einer JSON-message zurück:

  • 401 — Token fehlt oder ist ungültig.
  • 403 — Origin nicht erlaubt oder die Aktion ist für den Tarif deaktiviert.
  • 404 — unbekannter Katalog oder SKU.
  • 422 — Validierung fehlgeschlagen; der Body trägt errors nach Feld sortiert.