Financiar v1 / Serii
One NBR series
The metadata of one series by its code: name, the class it comes from, the unit of measure, the periodicity, the coverage and the freshness state.
GET
https://oneapi.ro/api/financiar/v1/serii/{cod}
Path parameters
NameTypeDescriptionExample
codrequired
string
Series code in the NBR interactive database (e.g.
AEDZ_DEN).
Query parameters
This route accepts no query parameters.
How it behaves
- The metadata of a series: name, the class it comes from, unit of measure, periodicity, coverage, number of values and freshness state.
- The 404 has two causes, told apart by the code in the body:
negasit= the code does not exist in the catalogue;nu_e_serie_temporala= the code belongs to a register-type class. The second is useful information — the data exists, just not as a time series, and an empty 404 would suggest it was missing. meta.valorigives the path to the series values directly.- A series with
stare: "fara_valori"exists in the NBR catalogue but was never filled in: the metadata is real, and/serii/{cod}/valorireturns an empty list. That is not an error — it is an announcement by the source with no content behind it.
What it is for
- Checking a series' unit and frequency before pulling the data.
- Showing a correct chart label, with the unit of measure.
- Freshness control: how far the series runs and how many values it holds.
Response structure
FieldTypeDescription
data[]
object[]
meta[]
string[]
The response envelope: the source, the freshness and the notes that go with the data.
data.cod
string
The series code, as you requested it.
data.nume
string
The series name.
data.clasa
string
The class it belongs to.
data.unitate
string
The unit of measure as the source publishes it.
data.periodicitate
string
The series step;
necunoscut where the source does not state it.
data.prima_data
null
The earliest observation.
null for series without values.
data.ultima_data
null
The latest observation.
null for series without values.
data.numar_valori
integer
How many observations the series has.
data.stare
string
cu_valori or fara_valori.
data.nota
null
A note specific to the series, where one exists.
data.motiv_fara_valori
string
WHY it has no values, in words — not every series in the NBR header has observations under it.
null for series with values.
Response examples
GEThttps://oneapi.ro/api/financiar/v1/serii/AEDZ_DEN
{
"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,
"motiv_fara_valori": "Sursa publică antetul clasei „Operaţiuni de piaţă monetară ale BNR — Active eligibile — diferenţe\" şi nicio observaţie sub el. Cele zece câmpuri (monedă, data emisiunii, data scadenţei, nivel haircut) descriu forma unui registru care n-a fost niciodată completat."
},
"meta": {
"sursa": "Banca Naţională a României — baza de date interactivă.",
"valori": "/financiar/v1/serii/AEDZ_DEN/valori",
"nota_clasa_goala": "Clasa e anunţată de sursă şi niciodată completată. Artefactul adus de pipeline conţine antetul şi rândul `Data`, fără nicio observaţie sub el — nu e un import ratat, iar un fetch repetat n-ar aduce nimic."
}
}
GEThttps://oneapi.ro/api/financiar/v1/serii/BBZ_BOR3M
{
"data": {
"cod": "BBZ_BOR3M",
"nume": "ROBOR 3 luni",
"clasa": "ROBID - ROBOR - serii zilnice",
"unitate": "% p.a.",
"periodicitate": "zilnic",
"prima_data": "1995-08-01",
"ultima_data": "2026-09-21",
"numar_valori": 7880,
"stare": "pare_in_urma",
"nota": "serii disponibile începând din august 1995",
"urmatoarea_perioada": "2026-09-22",
"importat_la": "2026-10-01 13: 41: 04"
},
"meta": {
"sursa": "Banca Naţională a României — baza de date interactivă.",
"valori": "/financiar/v1/serii/BBZ_BOR3M/valori"
}
}
GEThttps://oneapi.ro/api/financiar/v1/serii/AEDZ_DIF
{
"data": {
"cod": "AEDZ_DIF",
"nume": "Stare",
"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,
"motiv_fara_valori": "Sursa publică antetul clasei „Operaţiuni de piaţă monetară ale BNR — Active eligibile — diferenţe\" şi nicio observaţie sub el. Cele zece câmpuri (monedă, data emisiunii, data scadenţei, nivel haircut) descriu forma unui registru care n-a fost niciodată completat."
},
"meta": {
"sursa": "Banca Naţională a României — baza de date interactivă.",
"valori": "/financiar/v1/serii/AEDZ_DIF/valori",
"nota_clasa_goala": "Clasa e anunţată de sursă şi niciodată completată. Artefactul adus de pipeline conţine antetul şi rândul `Data`, fără nicio observaţie sub el — nu e un import ratat, iar un fetch repetat n-ar aduce nimic."
}
}
Error codes
| Code | Slug | When it occurs |
|---|---|---|
| 401 | neautentificat | Token missing, invalid, expired or revoked. |
| 403 | feature_indisponibil | The current plan does not include the feature the route depends on. |
| 404 | negasit | negasit or nu_e_serie_temporala. |
| 429 | cota_depasita | The plan's monthly quota has been exceeded (see Retry-After). |
All errors share the same shape. eroare.cod is stable and is the value you should branch on in code — not the text in mesaj, which may change.
{
"eroare": {
"cod": "negasit",
"mesaj": "negasit or nu_e_serie_temporala."
}
}