{"openapi":"3.1.0","info":{"title":"Kalkulatory Płace API","version":"1.0.0","summary":"Polskie wynagrodzenia brutto↔netto, stawki godzinowe, progi podatkowe.","description":"Statyczne, deterministyczne odpowiedzi wypiekane z tego samego silnika, który renderuje strony kalkulatory-place.pl. Bez klucza, bez limitów, bez rejestracji — zwykłe GET-y po CDN.\n\nRok można pominąć — wtedy odpowiedź dotyczy rocznika bieżącego. Każda odpowiedź niesie `stanPrawnyNa`, `statusRocznika` i `zrodlo` (adres strony dla człowieka).","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"contact":{"url":"https://kalkulatory-place.pl/kontakt"}},"servers":[{"url":"https://kalkulatory-place.pl"}],"paths":{"/api/v1/index.json":{"get":{"operationId":"katalog","summary":"Katalog API: zakresy siatek, roczniki, wzorce ścieżek.","responses":{"200":{"description":"Katalog.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}},"/api/v1/stawki/{rok}.json":{"get":{"operationId":"stawkiRoku","summary":"Stawki i progi rocznika: płaca minimalna, kwota wolna, progi PIT, składki ZUS.","parameters":[{"name":"rok","in":"path","required":true,"schema":{"type":"integer","enum":[2025,2026,2027]},"example":2026}],"responses":{"200":{"description":"Stawki rocznika.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}},"/api/v1/brutto-netto/{kwota}.json":{"get":{"operationId":"bruttoNaNetto","summary":"Ile netto z danej kwoty brutto (rocznik bieżący) — etat, zlecenie, dzieło.","parameters":[{"name":"kwota","in":"path","required":true,"schema":{"type":"integer","minimum":1000,"maximum":50000},"example":11600}],"responses":{"200":{"description":"Wyliczenie brutto→netto.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}},"/api/v1/brutto-netto/{rok}/{kwota}.json":{"get":{"operationId":"bruttoNaNettoWRoku","summary":"To samo co bruttoNaNetto, ale dla wskazanego rocznika.","parameters":[{"name":"rok","in":"path","required":true,"schema":{"type":"integer","enum":[2025,2026,2027]},"example":2026},{"name":"kwota","in":"path","required":true,"schema":{"type":"integer"},"example":11600}],"responses":{"200":{"description":"Wyliczenie brutto→netto.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}},"/api/v1/netto-brutto/{kwota}.json":{"get":{"operationId":"nettoNaBrutto","summary":"Jakie brutto daje zadane netto na etacie (rocznik bieżący).","parameters":[{"name":"kwota","in":"path","required":true,"schema":{"type":"integer","minimum":1000,"maximum":30000},"example":6000}],"responses":{"200":{"description":"Wyliczenie netto→brutto.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}},"/api/v1/netto-brutto/{rok}/{kwota}.json":{"get":{"operationId":"nettoNaBruttoWRoku","summary":"To samo co nettoNaBrutto, ale dla wskazanego rocznika.","parameters":[{"name":"rok","in":"path","required":true,"schema":{"type":"integer","enum":[2025,2026,2027]},"example":2026},{"name":"kwota","in":"path","required":true,"schema":{"type":"integer"},"example":6000}],"responses":{"200":{"description":"Wyliczenie netto→brutto.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}},"/api/v1/stawka-godzinowa/{stawka}.json":{"get":{"operationId":"stawkaGodzinowa","summary":"Ile netto ze stawki godzinowej brutto — zlecenie i etat.","description":"Stawki niecałkowite mają grosze po myślniku: 28,61 zł → `28-61`.","parameters":[{"name":"stawka","in":"path","required":true,"schema":{"type":"string","pattern":"^\\d+(-\\d{2})?$"},"example":"33"}],"responses":{"200":{"description":"Wyliczenie stawki godzinowej.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}},"/api/v1/stawka-godzinowa/{rok}/{stawka}.json":{"get":{"operationId":"stawkaGodzinowaWRoku","summary":"To samo co stawkaGodzinowa, ale dla wskazanego rocznika.","parameters":[{"name":"rok","in":"path","required":true,"schema":{"type":"integer","enum":[2025,2026,2027]},"example":2026},{"name":"stawka","in":"path","required":true,"schema":{"type":"string"},"example":"33"}],"responses":{"200":{"description":"Wyliczenie stawki godzinowej.","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Kwota spoza siatki albo rocznik nieobsługiwany — patrz /api/v1/index.json."}}}}}}