oneapi
Autentificare
Financiar v1 / Calendar

Zile lucrătoare într-un interval

Numărul de zile lucrătoare între două date, ambele incluse, cu defalcarea din care rezultă
cifra. Fără pana_la, intervalul se încheie azi. Cu sector=public, punţile stabilite prin HG
se scad.

GET
https://oneapi.ro/api/financiar/v1/zile-lucratoare

Parametri de interogare

NumeTipDescriereValori acceptate
de_laobligatoriu string Obligatoriu, YYYY-MM-DD. Inclus în numărătoare. ex. 2024-06-15ex. 2024-06
pana_laopțional string | null Opţional, implicit azi. Inclus în numărătoare. ex. 2024-06-15ex. 2024-06-30
sectoropțional string | null privat (implicit) sau public. Decide dacă punţile de HG se scad. privatpublic

Cum se comportă

  • Numărul de zile lucrătoare între două date, ambele incluse: o singură zi lucrătoare cerută ca de_la = pana_la întoarce 1.
  • Fără pana_la, intervalul se încheie azi — aceeaşi convenţie ca la /curs/interval. Completarea se raportează în meta.implicit, ca să nu fie o presupunere tăcută.
  • Răspunsul conţine defalcarea, nu doar cifra: calendaristice − weekend − sărbători(în zile lucrătoare) − punţi = lucrătoare. Identitatea se închide exact, deci rezultatul e verificabil fără să reproduci logica.
  • Sărbătorile care cad în weekend NU se scad separat: sunt deja numărate la weekend. În august 2026, Adormirea Maicii Domnului cade sâmbătă — scăzută a doua oară, ar da 20 de zile lucrătoare în loc de 21. De aceea câmpul se numeşte sarbatori_in_zile_lucratoare.
  • sector decide ce se face cu punţile stabilite prin HG. Implicit privat: punţile pentru bugetari se ignoră. Cu sector=public se scad — pentru o instituţie publică, 2 mai 2025 nu a fost zi lucrătoare. La o numărătoare nu se poate răspunde „depinde", deci presupunerea se cere şi se declară în răspuns.
  • Se scad numai punţile care ar fi fost oricum zile lucrătoare. O punte lipită de o sărbătoare sau căzută în weekend nu scade nimic — altfel identitatea s-ar rupe exact în anii în care punţile prelungesc o sărbătoare.

La ce folosește

  • Calculul zilelor lucrătoare dintr-o lună, pentru salarizare.
  • Verificarea unui termen contractual exprimat în zile lucrătoare.
  • Câte zile lucrătoare au trecut de la o dată până azi.

Structura răspunsului

CâmpTipDescriere
data.de_la string Începutul intervalului acoperit de răspuns.
data.pana_la string Sfârşitul intervalului acoperit de răspuns, inclusiv.
data.sector string Sectorul instituţional ori economic.
data.zile_lucratoare integer Rezultatul: zile de luni–vineri care nu sunt sărbători legale (minus punţile, la sector=public).
data.defalcare.zile_calendaristice integer Toate zilele din interval, ambele capete incluse.
data.defalcare.zile_weekend integer Câte sâmbete şi duminici sunt în interval.
data.defalcare.sarbatori_in_zile_lucratoare integer Sărbători legale care cad luni–vineri. Doar acestea reduc numărul.
data.defalcare.punti_hg_scazute integer Punţi de HG scăzute. Mereu 0 la sector=privat.
meta[] object[] Plicul răspunsului: sursa, prospeţimea şi precizările care însoţesc datele.
meta.verificare string Identitatea aritmetică, scrisă, ca rezultatul să poată fi confirmat dintr-o privire.
meta.implicit array Parametrii completaţi de server. Apare doar când pana_la a lipsit.

Exemple de răspuns

GEThttps://oneapi.ro/api/financiar/v1/zile-lucratoare?de_la=2024-06-15
{
    "data": {
        "de_la": "2024-06-15",
        "pana_la": "2026-10-07",
        "sector": "privat",
        "zile_lucratoare": 578,
        "defalcare": {
            "zile_calendaristice": 845,
            "zile_weekend": 242,
            "sarbatori_in_zile_lucratoare": 25,
            "punti_hg_scazute": 0
        }
    },
    "meta": {
        "verificare": "845 − 242 − 25 − 0 = 578",
        "implicit": [
            "pana_la"
        ],
        "temei": "art. 139 Codul Muncii (sărbători legale).",
        "nota": "Sector privat: punţile de HG pentru bugetari NU se scad. Foloseşte `sector=public` pentru instituţii publice."
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
422validarede_la lipsă sau malformat, pana_la înainte de de_la, an în afara intervalului 1990–2100, sector cu altă valoare. Dacă de_la e în viitor şi pana_la lipseşte, mesajul cere explicit pana_la în loc să vorbească despre un parametru netrimis.
429cota_depasitaCota lunară a planului a fost depăşită (vezi Retry-After).

Toate erorile au aceeași formă. eroare.cod e stabil și e cel după care trebuie să ramifici în cod — nu după textul din mesaj, care se poate schimba.

{
    "eroare": {
        "cod": "validare",
        "mesaj": "de_la lipsă sau malformat, pana_la înainte de de_la, an în afara intervalului 1990–2100, sector cu altă valoare. Dacă de_la e în viitor şi pana_la lipseşte, mesajul cere explicit pana_la în loc să vorbească despre un parametru netrimis.",
        "detalii": {
            "de_la": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}