oneapi
Autentificare
Financiar v1 / Serii

Catalogul de serii BNR

Cele 5.906 de serii temporale din baza de date interactivă, filtrabile pe clasă, periodicitate,
stare de prospeţime sau text din denumire ori cod. Paginat.

stare vine din aceeaşi vedere de prospeţime folosită de /meta: curenta, pare_in_urma sau
incheiata — deci o serie marcată curentă aici e una care primeşte date noi.

GET
https://oneapi.ro/api/financiar/v1/serii

Parametri de interogare

NumeTipDescriereValori acceptate
clasaopțional string | null Filtru pe denumirea clasei, potrivire parţială, fără diacritice. max 120 car.
periodicitateopțional string | null zilnic, saptamanal, lunar, trimestrial, semestrial, anual. zilniclunartrimestrialsemestrialanualsaptamanal
stareopțional string | null curenta, pare_in_urma, incheiata, fara_valori. curentapare_in_urmaincheiatafara_valori
qopțional string | null Text în denumire sau prefix de cod. Minim 2 caractere. max 80 car.
paginaopțional integer | null Implicit 1. 1
per_paginaopțional integer | null Implicit 20, maxim 100. 1

Cum se comportă

  • Catalogul seriilor din baza de date interactivă a BNR, filtrabil pe clasă, periodicitate, stare de prospeţime sau text din denumire ori cod. Paginat.
  • Catalogul conţine doar serii TEMPORALE. Cele nouă clase de tip registru — instituţii de credit, emisiuni de titluri de stat, active eligibile — au altă structură, cu câmpuri proprii per clasă, şi nu se pot turna în aceeaşi formă. meta.registre_excluse numără cei 145 de descriptori de câmp lăsaţi afară, ca absenţa să fie o graniţă anunţată; înregistrările lor au rută proprie, /financiar/v1/registre.
  • stare vine din aceeaşi vedere de prospeţime folosită de /meta: curenta (primeşte date noi), pare_in_urma (sursa a publicat mai recent decât avem), incheiata (seria nu mai creşte). Deci verdictul e acelaşi peste tot în modul.
  • A patra stare, fara_valori: 521 de serii pe care BNR le anunţă în catalog şi nu le completează niciodată — şabloane SDDS PLUS. Nu apar deloc în vederea de prospeţime, deci înainte ieşeau cu stare: null, adică o stare nedeclarată. Acum au un nume, ca să poată fi şi găsite (?stare=fara_valori), şi excluse. numar_valori e 0 la toate.
  • Căutarea ignoră diacriticele: ?q=dobanzi şi ?q=dobânzi dau acelaşi rezultat. Denumirile BNR au diacritice, iar cine tastează fără ele are dreptate — fără această normalizare, filtrul ar întoarce zero şi ar părea că datele lipsesc.
  • Filtrul ?q= caută în denumire ŞI ca prefix de cod, deci ?q=BBZ întoarce familia de serii zilnice.
  • pagina şi per_pagina se validează; peste 100 se reduce automat la 100, iar meta.paginare dă valoarea efectivă.

La ce folosește

  • Descoperirea seriilor disponibile pe o temă.
  • Găsirea codului unei serii înainte de a-i cere valorile.

Structura răspunsului

CâmpTipDescriere
data[].cod string Codul seriei în baza BNR — cheia pentru /serii/{cod} şi /serii/{cod}/valori.
data[].nume string Denumirea seriei.
data[].clasa string Clasa din care face parte, aşa cum o grupează BNR.
data[].unitate string Unitatea de măsură, cum o publică sursa ((txt) la seriile textuale).
data[].periodicitate string Pasul seriei; necunoscut unde sursa nu îl declară.
data[].prima_data null Prima observaţie. null la seriile fără valori.
data[].ultima_data null Ultima observaţie. null la seriile fără valori.
data[].numar_valori integer Câte observaţii are seria.
data[].stare string cu_valori ori fara_valori — a doua înseamnă că sursa publică antetul seriei fără nicio observaţie sub el.
data[].nota null Observaţie proprie seriei, unde există. null altfel.
meta.sursa string Sursa oficială din care vin datele, cu licenţa ei acolo unde e cerută.
meta.filtre array
meta.registre_excluse integer
meta.registre string
meta.nota string Precizare despre cum se citesc datele din răspuns — o capcană, o convenţie sau o limită a sursei.
meta.paginare.pagina integer Pagina curentă, numărată de la 1.
meta.paginare.per_pagina integer Câte înregistrări are o pagină.
meta.paginare.total integer Totalul înregistrărilor care se potrivesc, dincolo de pagina curentă.
meta.paginare.pagini integer Câte pagini are lista.

Exemple de răspuns

GEThttps://oneapi.ro/api/financiar/v1/serii?per_pagina=3
{
    "data": [
        {
            "cod": "AEDZ_DEN",
            "nume": "Monedă",
            "clasa": "Operaţiuni de piaţă monetară ale BNR - Active eligibile - diferenţe",
            "unitate": "(txt)",
            "periodicitate": "necunoscut",
            "prima_data": null,
            "ultima_data": null,
            "numar_valori": 0,
            "stare": "fara_valori",
            "nota": null
        }
    ],
    "meta": {
        "sursa": "Banca Naţională a României — baza de date interactivă.",
        "filtre": [],
        "registre_excluse": 145,
        "registre": "/financiar/v1/registre",
        "nota": "Catalogul conţine doar serii temporale. Clasele de tip registru (instituţii de credit, emisiuni de titluri de stat) au altă structură şi nu sunt expuse aici.",
        "paginare": {
            "pagina": 1,
            "per_pagina": 3,
            "total": 5779,
            "pagini": 1927
        }
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
422validarePeriodicitate sau stare în afara listei (curenta, pare_in_urma, incheiata, fara_valori), căutare mai scurtă de 2 caractere.
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": "Periodicitate sau stare în afara listei (curenta, pare_in_urma, incheiata, fara_valori), căutare mai scurtă de 2 caractere.",
        "detalii": {
            "clasa": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}