oneapi
Autentificare
Mediu v1 / Mediu

Poluanții și valorile-limită

Nomenclatorul, cu temeiul legal al fiecărei limite și acoperirea curentă a datelor.

GET
https://oneapi.ro/api/mediu/v1/aer/poluanti

Parametri de interogare

Ruta nu acceptă parametri de interogare.

Cum se comportă

  • Poluanţii nu se măsoară în aceleaşi staţii. PM10 are 171 de staţii, NO2 149, SO2 116, CO 99, O3 83, iar PM2.5 doar 78. Un clasament sau o comparaţie între doi poluanţi compară, de fapt, două reţele diferite — nu doar două substanţe. Când compari judeţe pe PM2.5, ţine minte că unele n-au nicio staţie care să-l măsoare.
  • Fetch-uiește-l o dată și mapează local.
  • Lista e restrânsă la cei șase poluanți reglementați și măsurați consecvent în România. Sursa raportează și metale grele sau benzen, dar cu acoperire rară — i-am fi expus ca „disponibili" cu date lipsă pe majoritatea stațiilor.
  • Fiecare limită declară perioada de mediere la care se aplică și câte depășiri tolerează legea pe an. O comparație a unei valori orare cu o limită anuală n-are sens, iar structura asta e menită să împiedice exact asta.
  • acoperire spune ce interval de zile e importat și câte stații au date — citește-l înainte de a cere o serie care ar veni goală.

La ce folosește

  • Populezi un selector de poluant cu exact valorile pe care le acceptă restul rutelor.
  • Afli pragul legal și temeiul lui înainte de a interpreta o măsurătoare.
  • Verifici acoperirea datelor înainte de a construi o analiză.

Structura răspunsului

Toate câmpurile de mai jos sunt în data.

CâmpTipDescriere
poluanti[].cod integer Codul EEA al poluantului.
poluanti[].poluant string Valoarea de folosit în parametrul poluant.
poluanti[].denumire string Denumirea completă.
poluanti[].unitate string Unitatea de măsură.
poluanti[].limite[] array Limitele legale aplicabile: tipul, valoarea, câte depășiri sunt tolerate pe an și temeiul normativ.
poluanti[].limite[].tip string Perioada de mediere: orar, zilnic, maxim_8h sau anual.
poluanti[].limite[].valoare number Pragul.
poluanti[].limite[].depasiri_tolerate_pe_an integer Câte depășiri tolerează legea pe an calendaristic.
poluanti[].limite[].temei string Actul normativ și anexa.
poluanti[].test_depasire_zilnica object Testul aplicat de /aer/depasiri, sau null la poluanții fără limită zilnică.
acoperire.zile_agregate integer Câte rânduri zilnice sunt importate în total.
acoperire.prima_zi string Prima zi cu date.
acoperire.ultima_zi string Ultima zi cu date.
acoperire.statii_cu_date integer Câte stații au măsurători importate.
acoperire.poluanti_cu_date integer Câți poluanți au măsurători importate.
acoperire.ultima_valoare_orara string Cea mai recentă oră măsurată din toată rețeaua.
observatie string Avertismentul despre reprezentativitate și date neverificate.
sursa object Sursa și licența.
poluanti[].test_depasire_zilnica.camp string Pe ce statistică zilnică se face testul: media, maximul sau maximul mediei pe 8 ore. Diferă de la poluant la poluant.
poluanti[].test_depasire_zilnica.prag integer Valoarea peste care ziua se consideră depășire.
poluanti[].test_depasire_zilnica.tolerate integer Câte depășiri pe an admite legea înainte să fie o încălcare.
poluanti[].test_depasire_zilnica.descriere string Testul scris în cuvinte.

Exemple de răspuns

GEThttps://oneapi.ro/api/mediu/v1/aer/poluanti
{
    "data": {
        "poluanti": [
            {
                "cod": 5,
                "poluant": "PM10",
                "denumire": "Pulberi în suspensie PM10",
                "unitate": "µg/m³",
                "limite": [
                    {
                        "tip": "zilnic",
                        "valoare": 50,
                        "depasiri_tolerate_pe_an": 35,
                        "temei": "Directiva 2008/50/CE, anexa XI"
                    }
                ],
                "test_depasire_zilnica": {
                    "camp": "media",
                    "prag": 50,
                    "tolerate": 35,
                    "descriere": "Media zilnică peste 50 µg/m³. Legea tolerează 35 de zile pe an calendaristic."
                }
            }
        ],
        "acoperire": {
            "zile_agregate": 363783,
            "prima_zi": "2024-12-31",
            "ultima_zi": "2026-09-22",
            "statii_cu_date": 177,
            "poluanti_cu_date": 6,
            "ultima_valoare_orara": "2026-09-22 09: 00: 00+03"
        },
        "observatie": "Valorile sunt măsurate la STAȚIE, nu în localitate: la câțiva kilometri, sau lângă o arteră aglomerată, pot fi complet diferite. Datele din fereastra curentă sunt NEVERIFICATE — operatorul le poate corecta sau invalida ulterior. Mediile zilnice se publică doar când ziua are cel puțin 18 ore valide; `ore_valide` spune întotdeauna pe ce se sprijină cifra. O zi cu `masurare: zilnica` e o probă de laborator pe 24 de ore (PM10/PM2,5 gravimetric): media e chiar proba, fără minim, maxim ori ore.",
        "sursa": {
            "nume": "European Environment Agency — Air Quality Download Service (date raportate de România prin RNMCA/ANPM)",
            "url": "https://eeadmz1-downloads-webapp.azurewebsites.net/",
            "licenta": "Politica de reutilizare a EEA — reutilizare permisă cu indicarea sursei."
        }
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
422validareRuta nu primeşte parametri, în afară de lang: orice alt parametru dă 422, nu e ignorat.
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": "Ruta nu primeşte parametri, în afară de lang: orice alt parametru dă 422, nu e ignorat."
    }
}