bimetricsEntwickler
Layouts

Erlaubte Werte lesen

Als Markdown ansehen

Benötigte Berechtigung:sales:read(Ausgangsrechnungen und Entwürfe lesen)

GET
/api/layouts/catalog

Liefert, was ein Layout wählen kann: die Module mit Bereichen, Eigenschaften und erlaubten Werten, die Vorlagen (presets) mit ihren Kombinationen aus Schrift und Farbe (recipes), die Belegarten, die Musterfälle der Vorschau und die Bausteine. Pfade und Werte für set stehen unter modules[].properties, Grenzen zwischen Werten unter modules[].limits.

Benötigt einen Schlüssel mit der Berechtigung sales:read oder read.

Authentifizierung

headerAuthentifizierungBearer <bm_…>

Empfohlen: Authorization: Bearer bm_…. Der Schlüssel wird nur einmal angezeigt; nie in URLs, Logs oder Frontend-Code ablegen.

Antworten

Erfolg.

application/json
  1. response

Was ein Layout wählen kann.

blockLimits?

Höchstzahl der Bausteine.

blocks?array<>|

Die Bausteine.

cases?|

Musterfälle der Vorschau je Belegart, dazu recurring und xrechnung; der erste ist der Standard.

documentKinds?array<string>|

Belegarten einer Zuweisung; * gilt für alle ohne eigenes Layout.

modules?array<>|

Die Module. classic ist das bisherige Layout ohne Einstellungen.

presets?array<>|

Die Vorlagen mit ihren Kombinationen aus Schrift und Farbe.

Beispielanfrage
curl --fail-with-body "https://app.bimetrics.de/api/layouts/catalog" \  -H "Authorization: Bearer $BIMETRICS_API_KEY"
Beispielantwort
{  "blockLimits": {    "perLayout": 8,    "perSlot": 3  },  "blocks": [    {      "group": "Persönlich",      "id": "thanks",      "kinds": [        "invoice",        "proposal",        "order_confirmation"      ],      "name": "Dank",      "properties": [        {          "default": "order",          "level": "",          "name": "Satz",          "path": "sentence",          "type": "choice",          "values": [            {              "id": "order",              "name": "Vielen Dank für Ihren Auftrag."            },            {              "id": "trust",              "name": "Vielen Dank für Ihr Vertrauen."            }          ]        }      ],      "slots": [        "afterTotals"      ],      "version": 1    }  ],  "cases": {    "invoice": [      "standard",      "long",      "mixed_rates",      "reverse_charge",      "no_logo"    ],    "payment_reminder": [      "standard",      "dunning",      "partial_payment",      "no_logo"    ]  },  "documentKinds": [    "*",    "invoice",    "proposal",    "order_confirmation",    "invoice_correction",    "cancellation",    "payment_reminder"  ],  "modules": [    {      "din5008": "B",      "editable": true,      "id": "modern",      "limits": [        {          "then": {            "header.logo.size": {              "atMost": "L"            }          },          "when": {            "header.band": true          }        }      ],      "name": "Modern",      "properties": [        {          "default": 14,          "level": "page",          "max": 20,          "min": 10,          "name": "Rand oben",          "path": "page.margin.top",          "step": 1,          "type": "number",          "unit": "mm"        },        {          "default": false,          "level": "header",          "name": "Auf Farbband",          "path": "header.band",          "type": "toggle"        },        {          "default": "M",          "level": "header.logo",          "name": "Größe",          "path": "header.logo.size",          "type": "step",          "values": [            {              "id": "S",              "maxMm": [                32,                11              ],              "name": "S"            },            {              "id": "M",              "maxMm": [                48,                16              ],              "name": "M"            },            {              "id": "L",              "maxMm": [                64,                22              ],              "name": "L"            },            {              "id": "XL",              "maxMm": [                80,                30              ],              "name": "XL"            }          ]        }      ],      "regions": [        {          "id": "header",          "level": "region",          "name": "Kopf"        },        {          "id": "header.logo",          "level": "element",          "name": "Logo",          "parent": "header"        }      ],      "short": "Logo im Kopf, ruhige Tabelle, Anschrift nach DIN 5008 Form B",      "slots": [        "belowHeader",        "abovePositions",        "belowPositions",        "payment",        "afterTotals",        "footer"      ],      "version": 2    }  ],  "presets": [    {      "id": "modern",      "module": "modern@2",      "name": "Modern",      "recipes": [        {          "fonts": {            "text": "liberation-sans",            "title": "liberation-sans"          },          "id": "plain",          "line": "Liberation Sans für Titel und Text · nur Schwarz",          "name": "Schlicht",          "values": {            "header.rule": false,            "items.head.style": "bold",            "title.brand": false          }        },        {          "fonts": {            "text": "liberation-sans",            "title": "work-sans"          },          "id": "friendly",          "line": "Work Sans und Liberation Sans · Titel und Tabellenkopf in Hausfarbe",          "name": "Freundlich",          "values": {            "header.rule": false,            "items.head.style": "brand",            "title.brand": true          }        }      ],      "short": "Logo rechts, ruhige Linien",      "values": {        "footer.pageNumber": "auto",        "footer.titles": false,        "page.margin.left": 25      }    }  ]}