Stampfactory
Dokumentation
Einstellungen

Einstellungen aktualisieren

Returns the full settings map after the update (same shape as GET).

PUT
/settings
AuthentifizierungBearer <token>

Bearer-Token, erhalten über den Login-Endpunkt (POST /rest/login).

Ort: header

Request-Body

application/json

TypeScript-Definitionen

TypeScript-Typ für request body.

Validation for the bulk settings update.

export_format is validated against {@see ExportFormat}, the single source of truth for export formats. The previous hardcoded list (csv,lodas,zucchetti) predates that enum: lodas was the C++/stamp.json spelling for DATEV LODAS, which the enum encodes as datev ({@see ExportFormat::DatevLodas}). The list was therefore both too narrow (no csv_extended, datev_lug, agenda, projects) and inconsistent with every other consumer of the format value (ExportController resolves ?format= through the enum).

Decision: accept the enum values, and keep the legacy spelling working by normalizing lodas to datev in {@see prepareForValidation()} instead of rejecting it. Old clients (and tenants whose value was imported from stamp.json as lodas) keep saving successfully, while every new write stores the canonical enum value. Stored legacy lodas values are read-only strings (Tenant::exportFormat()) and are intentionally left untouched — no data migration is performed here.

language is a deliberate subset of {@see Locale}: only the two locales the tenant-wide default is offered for today. It references the enum cases so a renamed/removed locale breaks at compile time instead of silently drifting.

Response-Body

application/json

application/json

application/json

curl -X PUT "https://example.com/settings" \  -H "Content-Type: application/json" \  -d '{}'
{  "data": {    "property1": "string",    "property2": "string"  }}