Mediu v1 / Avertizari
Avertizări la un punct
Ce avertizare e activă la un punct anume, nu la nivel de judeţ — util acolo unde avertizarea prinde doar zona montană a judeţului.
GET
https://oneapi.ro/api/mediu/v1/avertizari/langa
Parametri de interogare
NumeTipDescriereValori acceptate
latopțional
number | null
Latitudinea punctului (cu
lng).
43 – 49
lngopțional
number | null
Longitudinea punctului (cu
lat).
20 – 30
sirutaopțional
integer | null
Codul SIRUTA al locului. Exclusiv cu
lat+lng.
1
laopțional
string | null
Momentul la care întrebi. Fără el, acum.
ex. 2024-06-15
Cum se comportă
- Avertizările se emit pe JUDEȚ, nu pe punct. Ruta rezolvă punctul la județul în care cade și întoarce ce e activ acolo. Rezultatul e valabil pentru tot județul, nu pentru locul exact — iar răspunsul o spune, ca nimeni să nu creadă că avem o rezoluție pe care sursa n-o are.
- Locul se dă în exact una din două forme:
siruta, SAUlat+lng. Două deodată se resping.
La ce folosește
- Afli dacă adresa unui client e într-o zonă sub avertizare, pornind de la coordonate.
- Verifici un punct de lucru identificat prin SIRUTA, fără să știi în ce județ e.
Structura răspunsului
Toate câmpurile de mai jos sunt în data.
CâmpTipDescriere
punct
object
Punctul folosit, cu sursa lui (coordonate date direct sau deduse din SIRUTA).
punct.lat
number
Latitudinea, în grade zecimale (WGS 84).
punct.lng
number
Longitudinea, în grade zecimale (WGS 84).
punct.sursa
string
siruta sau coordonate.
judet
object
Județul în care cade punctul — nivelul la care se emit efectiv avertizările.
judet.cod
string
Codul din nomenclatorul sursei — cheia pe care se filtrează.
judet.nume
string
Numele, aşa cum îl publică sursa.
moment
string
Momentul față de care s-a calculat valabilitatea.
acum
boolean
true dacă n-ai dat la, deci răspunsul e despre prezent.
inregistrari
integer
Câte avertizări acoperă județul atunci.
nivel_maxim
null
Cel mai grav nivel la momentul cerut.
avertizari
array
Câte avertizări am capturat în total.
observatie
string
Precizare despre cum se citeşte răspunsul: o convenţie de calcul sau o limită a datelor.
sursa
object
Sursa: MeteoAlarm (EUMETNET), canalul prin care ANM își distribuie avertizările în format CAP standardizat. Include emitentul și licența.
sursa.nume
string
Denumirea sursei oficiale.
sursa.url
string
Adresa publică a sursei.
sursa.emitent
string
Instituţia care a emis informaţia.
sursa.licenta
string
Licenţa sub care sursa permite reutilizarea.
sursa.observatie
string
Ce trebuie ştiut despre sursă înainte de a folosi datele.
avertizari[].identificator
Identificatorul CAP, unic la nivel mondial. E cheia cu care ceri detaliul și cu care urmărești aceeași avertizare între cereri.
avertizari[].tip_mesaj
Alert, Update sau Cancel. O anulare NU șterge nimic la noi — faptul că o avertizare a existat și a fost retrasă e el însuși informație.
avertizari[].anulata
Dacă avertizarea a fost retrasă printr-un mesaj ulterior.
avertizari[].inlocuieste
Identificatorii avertizărilor pe care acest mesaj le înlocuiește.
avertizari[].tip
Tipul fenomenului: cod numeric plus eticheta sursei (
wind, rain, snow-ice…).
avertizari[].nivel
Nivelul de conștientizare: cod, culoare (
yellow / orange / red) și severitatea CAP. Codul e stabil, eticheta e lizibilă — filtrează pe cod.
avertizari[].urgenta
Cât de curând se așteaptă fenomenul (
Immediate, Expected, Future).
avertizari[].certitudine
Cât de sigur e că se va produce (
Observed, Likely, Possible).
avertizari[].titlu
Titlul oficial al avertizării, în română, exact cum l-a emis ANM.
avertizari[].descriere
Textul avertizării. Netradus și nemodificat de noi.
avertizari[].instructiuni
Recomandările emitentului, unde există.
avertizari[].valabilitate.de_la
Când începe fenomenul (
onset din CAP). Când sursa nu-l dă, se folosește momentul intrării în vigoare.
avertizari[].valabilitate.pana_la
Când expiră avertizarea.
avertizari[].valabilitate.stare
activa, viitoare, incheiata sau anulata. Se CALCULEAZĂ la fiecare cerere, față de ceas — nu e o coloană care ar putea rămâne în urmă.
avertizari[].valabilitate.ore_ramase
Câte ore mai are de trăit avertizarea;
null dacă s-a încheiat.
avertizari[].judete
Județele acoperite: cod NUTS3 din sursă, denumirea ei a zonei, plus județul nostru cu indicativ auto și SIRUTA.
avertizari[].emis_la
Când a fost emisă de ANM.
avertizari[].emitent
Cine a emis-o —
ANM.
avertizari[].vazuta_prima_data
Când am capturat-o NOI prima oară. Diferența față de
emis_la arată cât de repede am prins-o.
Exemple de răspuns
GEThttps://oneapi.ro/api/mediu/v1/avertizari/langa?lat=45.70&lng=27.18
{
"data": {
"punct": {
"lat": 45.7,
"lng": 27.18,
"sursa": "coordonate"
},
"judet": {
"cod": "VN",
"nume": "Vrancea"
},
"moment": "2026-10-06T23: 39: 45+03: 00",
"acum": true,
"inregistrari": 0,
"nivel_maxim": null,
"avertizari": [],
"observatie": "Avertizările se emit pe JUDEȚ, nu pe punct. Punctul a fost rezolvat la județul în care cade, iar rezultatul e valabil pentru tot județul — nu pentru locul exact.",
"sursa": {
"nume": "MeteoAlarm (EUMETNET) — avertizări emise de Administrația Națională de Meteorologie",
"url": "https://meteoalarm.org",
"emitent": "Administrația Națională de Meteorologie (ANM)",
"licenta": "MeteoAlarm: CC BY 4.0, cu atribuire către MeteoAlarm și ANM.",
"observatie": "Avertizarea e emisă de ANM; MeteoAlarm e canalul EUMETNET prin care e distribuită în format CAP standardizat. Textul e cel oficial al ANM, netradus și nemodificat de noi."
}
}
}
GEThttps://oneapi.ro/api/mediu/v1/avertizari/langa?siruta=54975
{
"data": {
"punct": {
"lat": 46.775869737866465,
"lng": 23.60115997499754,
"sursa": "siruta",
"cod_siruta": 54975,
"nume": "Cluj-Napoca"
},
"judet": {
"cod": "CJ",
"nume": "Cluj"
},
"moment": "2026-10-06T23: 39: 46+03: 00",
"acum": true,
"inregistrari": 0,
"nivel_maxim": null,
"avertizari": [],
"observatie": "Avertizările se emit pe JUDEȚ, nu pe punct. Punctul a fost rezolvat la județul în care cade, iar rezultatul e valabil pentru tot județul — nu pentru locul exact.",
"sursa": {
"nume": "MeteoAlarm (EUMETNET) — avertizări emise de Administrația Națională de Meteorologie",
"url": "https://meteoalarm.org",
"emitent": "Administrația Națională de Meteorologie (ANM)",
"licenta": "MeteoAlarm: CC BY 4.0, cu atribuire către MeteoAlarm și ANM.",
"observatie": "Avertizarea e emisă de ANM; MeteoAlarm e canalul EUMETNET prin care e distribuită în format CAP standardizat. Textul e cel oficial al ANM, netradus și nemodificat de noi."
}
}
}
GEThttps://oneapi.ro/api/mediu/v1/avertizari/langa?lat=46.7712&lng=23.6236&la=2024-06-15
{
"data": {
"punct": {
"lat": 46.7712,
"lng": 23.6236,
"sursa": "coordonate"
},
"judet": {
"cod": "CJ",
"nume": "Cluj"
},
"moment": "2024-06-14T21: 00: 00+03: 00",
"acum": false,
"inregistrari": 0,
"nivel_maxim": null,
"avertizari": [],
"observatie": "Avertizările se emit pe JUDEȚ, nu pe punct. Punctul a fost rezolvat la județul în care cade, iar rezultatul e valabil pentru tot județul — nu pentru locul exact.",
"sursa": {
"nume": "MeteoAlarm (EUMETNET) — avertizări emise de Administrația Națională de Meteorologie",
"url": "https://meteoalarm.org",
"emitent": "Administrația Națională de Meteorologie (ANM)",
"licenta": "MeteoAlarm: CC BY 4.0, cu atribuire către MeteoAlarm și ANM.",
"observatie": "Avertizarea e emisă de ANM; MeteoAlarm e canalul EUMETNET prin care e distribuită în format CAP standardizat. Textul e cel oficial al ANM, netradus și nemodificat de noi."
}
}
}
Coduri de eroare
| Cod | Slug | Când apare |
|---|---|---|
| 401 | neautentificat | Token lipsă, invalid, expirat sau revocat. |
| 403 | feature_indisponibil | Planul curent nu include funcţia de care ţine ruta. |
| 404 | negasit | Punctul nu cade în niciun județ, sau codul SIRUTA nu există. |
| 422 | validare | Niciun loc dat, sau ambele forme deodată. |
| 429 | cota_depasita | Cota 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": "Niciun loc dat, sau ambele forme deodată.",
"detalii": {
"lat": [
"Valoarea trimisă nu respectă regula parametrului."
]
}
}
}