1. Eingabearten laden
Mit serviceDate zuerst die für den Stichtag verfügbaren inputTypeIds abrufen.
Die Dokumentation kann auf ein Gesetz und eine konkrete
hinterlegte Fassung umgeschaltet werden. Die Auswahl wird über
die Query-Parameter law und schedule
in der URL stabil gehalten.
Dieser Bereich richtet sich an Integrationen, die den Mehrgesetz-Rechner per HTTP ansprechen. Er beschreibt den empfohlenen Ablauf, die wichtigsten Endpunkte und das Fehlerformat.
Mit serviceDate zuerst die für den Stichtag verfügbaren inputTypeIds abrufen.
Danach für die gewählte Eingabeart alle benötigten Felder und Select-Optionen dynamisch abrufen.
Erst mit den aus dem Schema abgeleiteten Werten den eigentlichen /calculate-Request senden.
Vollständige Integration mit Eingabearten, Form-Schema, Zusatzfeldern und eingabeartspezifischen Select-Optionen.
Für Fremd-Dialoge mit fixer Struktur. Der Request enthält nur inputTypeId, die vier Kernfelder, serviceDate, Streitwert und opposingPersons.
Beide Wege laufen intern auf dieselbe Berechnung. Der statische Modus ist nur strenger und verarbeitet nicht freigeschaltete Varianten über Defaults, Fallbacks und strukturierte Ignorierhinweise.
/apiAccess-Control-Allow-Origin: *)GET /api/laws/{lawId}/input-types?serviceDate=YYYY-MM-DDGET /api/laws/ratg/input-types-static?serviceDate=YYYY-MM-DD für statische Fremd-DialogeGET /api/laws/{lawId}/form-schema?inputTypeId=...&serviceDate=YYYY-MM-DDPOST /api/laws/{lawId}/calculatePOST /api/laws/ratg/calculate-static für statische Fremd-DialogeGET /api
Kurzbeschreibung der API und der verfügbaren Endpunkte.
GET /api/laws/ratg/health
Health-Check mit aktiver Fassung.
GET /api/laws/ratg/versions
Liste aller hinterlegten Fassungen des Gesetzes.
GET /api/laws/ratg/input-types?serviceDate=YYYY-MM-DD
Verfügbare Eingabearten für ein Leistungsdatum.
GET /api/laws/ratg/input-types-static?serviceDate=YYYY-MM-DD
Dasselbe Rückgabeformat wie /input-types, aber nur mit den für /calculate-static freigegebenen Eingabearten.
GET /api/laws/ratg/form-schema?inputTypeId=...&serviceDate=YYYY-MM-DD
Felder, Defaults und Select-Optionen für eine Eingabeart.
POST /api/laws/ratg/calculate
Berechnung auf Basis eines JSON-Request-Bodies.
POST /api/laws/ratg/calculate-static
Kompakter Berechnungsweg für statische Dialoge mit definierter Kernfeld- und Default-Logik.
serviceDate immer als YYYY-MM-DD senden.inputTypeId steuert, welche Felder zulässig und erforderlich sind.baseMode, unitRateMode oder ervMode immer aus dem Form-Schema beziehen.Kernfelder dokumentiert.curl -X POST http://localhost:3000/api/laws/ratg/calculate \
-H 'Content-Type: application/json' \
-d '{
"inputTypeId": "TP1I",
"baseMode": "direct_amount",
"amount": 10000,
"serviceDate": "2026-03-25",
"unitRateMode": "standard",
"representedPersons": 1,
"opposingPersons": 1
}'
curl "http://localhost:3000/api/laws/ratg/input-types-static?serviceDate=2026-03-25"
serviceDate ist optional und wählt die zum Leistungsdatum passende RATG-Fassung./input-types: law, schedule, inputTypes.inputTypes enthält nur Eingabearten, deren staticApi.supported auf true steht.curl -X POST http://localhost:3000/api/laws/ratg/calculate-static \
-H 'Content-Type: application/json' \
-d '{
"inputTypeId": "TP1I",
"serviceDate": "2026-03-25",
"Streitwert": 10000,
"representedPersons": 2,
"baseMode": "direct_amount",
"unitRateMode": "standard"
}'
inputTypeId, serviceDateStreitwert ist nur dann Pflicht, wenn die gewählte statische Bemessungsgrundlage einen Geld- oder Streitwert für die Berechnung braucht. Die technischen Legacy-Keys disputeValue und amount bleiben kompatibel.baseMode, billingContext, unitRateMode, ervMode, representedPersons, opposingPersonsrepresentedPersons und opposingPersons fallen ohne Angabe jeweils auf 1 zurück.timeEffortHalfHours kann für zeitbasierte Eingabearten als externer Alias mitgesendet werden.baseMode-Werte werden pro Eingabeart über staticApi.requestableBaseModes gesteuert.billingContext fällt auf cost_reimbursement zurück, wenn keine Auswahl gesendet wird.unitRateMode fällt auf den eingabeartspezifischen Default oder auf standard zurück.ervMode fällt auf none zurück.baseMode fällt bei wählbaren Bemessungsgrundlagen auf den Eingabeart-Default oder direct_amount zurück.representedPersons und opposingPersons fallen ohne Angabe jeweils auf 1 zurück.baseMode-Werte werden nicht als Auswahl übernommen, sondern mit not_requestable_in_static_mode markiert und auf den Default-Fall zurückgeführt.double, triple oder quadruple sind im statischen Modus nicht vorgesehen.representedPersons wird nur bei eingabeartspezifisch zulässigem Streitgenossenzuschlag verarbeitet; sonst kommt es mit not_applicable_for_input_type zurück.staticRequest.ignoredFields sowie requestAnalysis.ignoredFields mit Grund zurückgegeben.{
"error": {
"code": "invalid_json",
"message": "Der Request-Body enthält kein gültiges JSON."
}
}
invalid_json: Body ist kein gültiges JSON.unsupported_media_type: Content-Type ist nicht application/json.missing_input_type_id: Query-Parameter inputTypeId fehlt.input_type_not_found: Die gewählte Eingabeart ist unbekannt.invalid_request: Fachliche Validierung oder Parameter ungültig.unitRateMode hart codieren?
Nein. Die zulässigen Varianten kommen immer aus dem Form-Schema für die konkrete Eingabeart.
/calculate-static?
Wenn ein Fremdsystem nur einen statischen Dialog ohne nachgeladene Zusatzfelder anbieten kann. Für vollständige Integrationen bleibt /calculate plus /form-schema der bevorzugte Weg.
Über /api/laws/ratg/input-types-static. Der Endpunkt liefert dieselbe Struktur wie /input-types, filtert aber auf die sichere Static-Teilmenge.
/input-types-static zurück?
Genau dieselben Summary-Felder wie /input-types, also insbesondere id, label, group, summary, reference sowie die eingabeartspezifischen Defaults.
Nein. Der statische Modus ist bewusst auf die sichere Teilmenge beschränkt, die ohne weitere eingabeartspezifische Zusatzfelder fachlich korrekt berechnet werden kann.
Die Auswahl erfolgt über lawId und serviceDate; die API und die Fassungsansicht im Handbuch arbeiten mit derselben Schedule-Logik je Gesetz.
Im Bereich Kernfelder sind wiederverwendete Parameter wie baseMode, billingContext, unitRateMode und ervMode erklärt.
Wähle zuerst den fachlichen Bereich: RATG für anwaltliche Leistungen, GGG für Gerichtsgebühren oder RVG für Gebührenrechnungen nach VV RVG. Danach führen die Einstiege zur passenden Eingabeart, Fassung oder Referenz.
Wähle im aktuellen Gesetz eine inputTypeId und lies direkt die benötigten Felder samt Defaults.
Wiederverwendete Parameter und fachliche Prüffelder sind in der Referenz des aktuellen Gesetzes erklärt.
Über die Gesetzes- und Fassungswahl kannst du die Doku auf einen konkreten RATG- oder GGG-Stand umschalten.
Externe Systeme finden im API-Bereich den empfohlenen Ablauf, Endpunkte und Fehlerformate.
serviceDate bzw. Fassung gedanklich festlegen.inputTypeId auswählen.serviceDate-KontextbaseMode und unitRateMode
Suche über Eingabearten, Felder und Rechtsbezüge. Beispiele:
baseMode, Einheitssatz,
§ 23 oder eine konkrete inputTypeId.
Die Daten werden direkt aus der generierten Referenzdatei gelesen.
Die aktuelle Fassung und ihre Eingabearten werden hier zusammengefasst.
Diese Kapitel verdichten die wichtigsten fachlichen Leitlinien des Rechners und verknüpfen sie mit den wiederverwendeten Kernfeldern der Referenz.
Das Handbuch verweist für gesetzliche Fundstellen auf die im Repo abgelegten Rechtsquellen. Unten stehen die öffentlich auslieferbaren Quelldateien und eine verdichtete Referenzübersicht der aktuell gewählten Fassung.
Jede Eingabeart hat eine eigene Detailansicht mit stabilem Deep
Link. Die Auswahl erfolgt über ein gruppiertes Dropdown; die
Detailansicht zeigt Summary, Defaults und das zugehörige
Form-Schema. inputTypeIds sind aus dem
Tarifpraefix abgeleitete ASCII-IDs, etwa TP2IZ1
fuer TP 2 I Z 1.
Wiederverwendete Kernfelder werden hier als eigene Referenz geführt, unabhängig von einzelnen Eingabearten.