Zum Inhalt springen

Referenz

Jede Adresse, mit ihrem Bereich.

Diese Tabelle wird aus demselben Verzeichnis erzeugt, gegen das die Schnittstelle prüft. Was hier steht, ist deshalb nicht eine Beschreibung des Verhaltens, sondern dasselbe Datum, zweimal gelesen.

Pfad Bereich Berechtigung Was zurückkommt
GET /api/extern/v1/me

Der Schlüssel selbst: Firma, Umgebung, Geltungsbereiche, letzte Nutzung. Der erste Aufruf, den man schreibt.

GET /api/extern/v1/customers customers:read VIEW_CUSTOMERS

Eine Seite Kunden und Lieferanten, neueste zuerst.

GET /api/extern/v1/customers/{id} customers:read VIEW_CUSTOMERS

Ein einzelner Kunde mit allen Stammdaten.

POST /api/extern/v1/customers customers:write EDIT_CUSTOMERS

Legt einen Kunden an. Die Kundennummer zieht KRONENWERK aus der eigenen Folge des Betriebs.

GET /api/extern/v1/invoices invoices:read VIEW_INVOICES

Ausgestellte Rechnungen, filterbar nach Zahlungszustand und Ausstellungsdatum.

GET /api/extern/v1/invoices/{number} invoices:read VIEW_INVOICES

Eine ausgestellte Rechnung, so wie das Archiv sie eingefroren hat.

POST /api/extern/v1/invoices/drafts invoices:write customers:read companies:read EDIT_INVOICES VIEW_COMPANY_SETTINGS VIEW_CUSTOMERS

Beginnt einen Rechnungsentwurf für einen Kunden. Ausgestellt wird er dadurch nicht.

GET /api/extern/v1/transactions transactions:read VIEW_TRANSACTIONS

Vorgänge — Aufträge, Projekte, Fertigungslose — mit Stufe und Fälligkeit, neueste zuerst. Mit period, from und to auf einen Zeitraum eingrenzen; gerechnet wird über den Beginn des Vorgangs.

POST /api/extern/v1/transactions transactions:write transactions:read EDIT_TRANSACTIONS VIEW_TRANSACTIONS

Legt einen Vorgang an. Nummer, Stufe und Verlauf entstehen wie im Bildschirm des Produkts.

PATCH /api/extern/v1/transactions/{id} transactions:write transactions:read EDIT_TRANSACTIONS VIEW_TRANSACTIONS

Ändert einen bestehenden Vorgang. Weggelassene Felder bleiben, wie sie sind; "none" als Kunde entfernt den Kunden.

GET /api/extern/v1/reports/outstanding reports:read VIEW_REPORTS

Offene Forderungen und Verbindlichkeiten zum heutigen Tag, getrennt nach Richtung.

GET /api/extern/v1/webhooks webhooks:write MANAGE_WEBHOOKS

Die Webhook-Ziele dieser Firma.

GET /api/extern/v1/webhooks/events webhooks:write MANAGE_WEBHOOKS

Die Ereignisse, die ein Ziel abonnieren kann.

POST /api/extern/v1/webhooks webhooks:write MANAGE_WEBHOOKS

Ein Ziel anlegen; das Signaturgeheimnis steht einmal in der Antwort.

DELETE /api/extern/v1/webhooks/{id} webhooks:write MANAGE_WEBHOOKS

Ein Ziel abschalten; das Zustellprotokoll bleibt.

Blättern und filtern.

Jede Liste ist eine Seite. Ein unsinniger Wert wird auf einen sinnvollen gebracht statt abgelehnt: eine Zahl in einer Adresszeile ist selten böse Absicht und fast immer ein Tippfehler.

page Nullbasierte Seitennummer.
size Zeilen je Seite, Vorgabe und Höchstwert (25 / 100)
status, from, to Nur für Rechnungen: Zahlungszustand und Zeitraum der Ausstellung.
stage, search, includeArchived Nur für Vorgänge: Stufe, Volltextsuche, und ob Archiviertes mitkommt.

Ein Aufruf, vollständig.

Beträge kommen als Anzahl kleinster Einheiten und Währungscode. Nie als formatierter Text: der trüge das Trennzeichen einer Sprache in ein Dokument für Maschinen.

GET https://kronenwerk.org/api/extern/v1/invoices?status=OPEN&size=1\n\n{"data":[{"number":"R-2026-0001","issuedOn":"2026-04-02","buyer":"Kellermann GmbH","currency":"EUR","gross":{"minor":105910,"currency":"EUR"},"outstanding":{"minor":105910,"currency":"EUR"},"paymentState":"OPEN","overdue":false}],"page":0,"size":1,"total":1,"more":false}

Ein Schreibaufruf.

Drei Adressen legen etwas an, und jede verlangt die Idempotenzkopfzeile. Es gibt keine Adresse, die eine Rechnung ausstellt, eine Zahlung bucht oder einen Beleg storniert.

POST https://kronenwerk.org/api/extern/v1/customers\nAuthorization: Bearer greif_live_…\nIdempotency-Key: 6f1c2a8e-4b3d-4a21-9d77-0c5e1f9b2a44\n\n{"name":"Kellermann Elektrotechnik GmbH","email":"buchhaltung@kellermann.de","street":"Am Sandtorkai 41","postalCode":"20457","city":"Hamburg","country":"DE"}