oneapi
Autentificare
Locations v1 / Meteo

Serie meteo zilnică

Seria zilnică a unei staţii: temperatură medie, minimă şi maximă, precipitaţii, vânt, pe fiecare zi a intervalului cerut.

GET
https://oneapi.ro/api/locations/v1/meteo/zilnic

Parametri de interogare

NumeTipDescriereValori acceptate
statieobligatoriu string OBLIGATORIU. Codul WSI al stației (din /meteo/statii). max 32 car.
de_laopțional string | null Prima zi din interval, AAAA-LL-ZZ. ex. 2024-01-01ex. 2024-06-15
pana_laopțional string | null Ultima zi din interval, AAAA-LL-ZZ. ex. 2024-12-31ex. 2024-06-15ex. 2024-06-30
limitaopțional integer | null Câte zile se întorc (implicit 365, maxim 2000). Seria completă a unei stații vechi are peste 40.000 de zile. 1 – 2000

Cum se comportă

  • Un null înseamnă NEMĂSURAT, nu zero. Seriile sunt vechi, iar un parametru poate lipsi ani întregi la o stație care astăzi îl publică. Dacă tratezi null ca 0, o iarnă fără măsurători de precipitații devine o iarnă secetoasă.
  • precipitatii_urme marchează zilele în care sursa raportează urme de precipitații (sub 0,05 mm): cantitatea rămâne 0, dar a plouat. Sursa le codifică cu -1; noi nu propagăm valoarea negativă, ci steagul.
  • Zilele se întorc în ordine cronologică descrescătoare, ca limita fără interval să dea cele mai recente.
  • Sursa marchează lipsa și cu -999, nu doar cu câmp gol. Le convertim în null la import, împreună cu valorile fizic imposibile (praguri generoase, ca extremele reale ale unei serii de 150 de ani să nu fie tăiate). Ce vezi în serie e fie o măsurătoare, fie null — niciodată o santinelă deghizată în cifră.

La ce folosește

  • Reconstitui vremea dintr-o zi anume, pentru un dosar de daună sau o dispută contractuală.
  • Alimentezi un model propriu cu seria brută, în loc să folosești agregatele noastre.
  • Verifici singur cum am calculat o normală sau un indicator anual.

Structura răspunsului

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

CâmpTipDescriere
statie.wsi string Identificatorul OMM al stației.
statie.nume string Numele, aşa cum îl publică sursa.
statie.latitudine number Latitudinea, în grade zecimale (WGS 84).
statie.longitudine number Longitudinea, în grade zecimale (WGS 84).
statie.fara_catalog boolean true dacă stația are serie dar nu și fișă de catalog (fără nume, fără coordonate, invizibilă în căutările geografice).
statie.localitate.cod_siruta integer Codul SIRUTA al unităţii teritoriale.
statie.localitate.nume string Numele, aşa cum îl publică sursa.
statie.judet string Judeţul la care se referă valoarea.
statie.judet_cod string Codul judeţului, două litere.
statie.primul_an integer Primul an cu măsurători.
statie.ultimul_an integer Ultimul an cu măsurători.
statie.zile_cu_date integer Câte zile măsurate are stația în total.
statie.parametri array Codurile parametrilor publicați: ta/tn/tx temperaturi, r precipitații, ff vânt, p presiune la nivelul mării.
inregistrari integer Câte zile sunt în răspuns.
serie[].zi string Ziua, AAAA-LL-ZZ.
serie[].temp_medie integer Temperatura medie a zilei, măsurată la 2 m înălțime, °C.
serie[].temp_minima integer Temperatura minimă a zilei, °C.
serie[].temp_maxima number Temperatura maximă a zilei, °C.
serie[].precipitatii_mm integer Cantitatea de precipitații, mm. 0 cu precipitatii_urme=true înseamnă urme, nu zi uscată.
serie[].precipitatii_urme boolean Sursa a raportat urme de precipitații în ziua asta.
serie[].vant_mediu_ms number Viteza medie zilnică a vântului, măsurată la 10 m înălțime, m/s.
serie[].presiune_hpa number Presiunea medie zilnică redusă LA NIVELUL MĂRII, hPa — nu presiunea măsurată la stație. Nu o compara cu un barometru local fără să corectezi altitudinea. La stațiile de munte, reducerea depășește sistematic ce e fizic posibil la sol (Păltiniș are mediana 1.070 hPa): sunt valorile calculate de ANM, nu erori de-ale noastre, dar nu le trata ca presiune reală.
observatie string Precizare despre cum se citeşte răspunsul: o convenţie de calcul sau o limită a datelor.
sursa object Sursa datelor: Administrația Națională de Meteorologie, seria zilnică oficială, licență CC-BY-4.0. Conține și data ultimei importări.
sursa.nume string Denumirea sursei oficiale.
sursa.url string Adresa publică a sursei.
sursa.licenta string Licenţa sub care sursa permite reutilizarea.

Exemple de răspuns

GEThttps://oneapi.ro/api/locations/v1/meteo/zilnic?statie=0-20000-0-15120&de_la=2024-01-01&pana_la=2024-12-31&limita=10
{
    "data": {
        "statie": {
            "wsi": "0-20000-0-15120",
            "nume": "Cluj-Napoca",
            "latitudine": 46.777778,
            "longitudine": 23.571389,
            "fara_catalog": false,
            "localitate": {
                "cod_siruta": 54975,
                "nume": "Cluj-Napoca"
            },
            "judet": "Cluj",
            "judet_cod": "CJ",
            "primul_an": 1921,
            "ultimul_an": 2026,
            "zile_cu_date": 38525,
            "parametri": [
                "ff",
                "p",
                "r",
                "ta",
                "tn",
                "tx"
            ]
        },
        "inregistrari": 10,
        "serie": [
            {
                "zi": "2024-12-31",
                "temp_medie": -3,
                "temp_minima": -4,
                "temp_maxima": -2.2,
                "precipitatii_mm": 0,
                "precipitatii_urme": false,
                "vant_mediu_ms": 1.3,
                "presiune_hpa": 1035.5
            }
        ],
        "observatie": "Valoare `null` înseamnă NEMĂSURAT, nu zero — seria e veche, iar un parametru poate lipsi ani întregi la o stație. `precipitatii_urme` marchează zilele în care sursa raportează urme (0–0,05 mm): cantitatea e 0, dar a plouat.",
        "sursa": {
            "nume": "Administrația Națională de Meteorologie (ANM) — date climatologice zilnice, controlate calitativ",
            "url": "https://odp.meteoromania.ro/",
            "licenta": "CC BY 4.0, 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.
404negasitNu există stație cu codul WSI dat.
422validareUn parametru nu a trecut validarea (statie, de_la, pana_la ş.a.); detalii spune care şi de ce.
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": "Un parametru nu a trecut validarea (statie, de_la, pana_la ş.a.); detalii spune care şi de ce.",
        "detalii": {
            "statie": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}