oneapi
Sign in
Financiar v1 / Serii

Values of an NBR series

A series' values, chronologically, with an optional date range filter. Paginated — some series have over 7,000 values.

perioada is the observation's original label as the NBR publishes it (e.g. 2019-T2), and data is its anchoring to the first day of the period, so that monthly and quarterly series are comparable with daily ones.

GET
https://oneapi.ro/api/financiar/v1/serii/{cod}/valori

Path parameters

NameTypeDescriptionExample
codrequired string Series code in the NBR interactive database (e.g. AEDZ_DEN).

Query parameters

NameTypeDescriptionAccepted values
de_laoptional string | null Optional, YYYY-MM-DD. e.g. 2023-01-01
pana_laoptional string | null Optional, YYYY-MM-DD. e.g. 2024-12-31
paginaoptional integer | null Paginarea vine din query prin Paginare::fromRequest; fără regulile astea un
per_pagina=abc s-ar fi transformat tăcut într-o pagină de un rând, în loc de 422.
1
per_paginaoptional integer | null Defaults to 100, maximum 1000. 1

How it behaves

  • The values of a series, in chronological order, with an optional interval filter. Paginated: some series hold over 7,000 observations.
  • data and perioada are different things. perioada is the original label published by NBR (2019-T2, 2019 M04), while data is its anchoring to the FIRST DAY of the period. The anchoring is what makes quarterly series comparable with daily ones; the label is what allows checking against the NBR publication.
  • Default page size 100, maximum 1000 per page.
  • pagina and per_pagina are validated; above 1,000 they are clamped to 1,000, and meta.paginare reports the effective value.

What it is for

  • Downloading a series for analysis.
  • Extracting an interval from a long series.

Response structure

FieldTypeDescription
data.cod string The series code, as requested.
data.nume string The series name at the central bank.
data.unitate string Unit of measure — read it before plotting the values.
data.periodicitate string How often the series is published (daily, monthly, quarterly…).
data.de_la null First period with a value, or null if the series is empty.
data.pana_la null Last period with a value.
data.valori array The values of the series, by period.
meta.sursa string Data source.
meta.paginare object Current page, page size, total and number of pages.
meta.paginare.pagina integer Current page, counted from 1.
meta.paginare.per_pagina integer How many records a page holds.
meta.paginare.total integer Total matching records, beyond the current page.
meta.paginare.pagini integer How many pages the list has.
meta.nota string The difference between data and perioada.
data.valori[].data string The period anchored on its first day — use it for sorting and alignment.
data.valori[].perioada string The original label published by the central bank.
data.valori[].valoare string The published value, in the unit from data.unitate.

Response examples

GEThttps://oneapi.ro/api/financiar/v1/serii/AEDZ_DEN/valori
{
    "data": {
        "cod": "AEDZ_DEN",
        "nume": "Monedă",
        "unitate": "(txt)",
        "periodicitate": "necunoscut",
        "de_la": null,
        "pana_la": null,
        "valori": []
    },
    "meta": {
        "sursa": "Banca Naţională a României — baza de date interactivă.",
        "paginare": {
            "pagina": 1,
            "per_pagina": 100,
            "total": 0,
            "pagini": 0
        },
        "nota": "`data` e ancorarea perioadei pe prima ei zi; `perioada` e eticheta originală publicată de BNR."
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
404negasitnegasit or nu_e_serie_temporala.
422validareMalformed code or inverted interval.
429cota_depasitaThe 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": "validare",
        "mesaj": "Malformed code or inverted interval.",
        "detalii": {
            "cod": [
                "The value sent does not satisfy the parameter rule."
            ]
        }
    }
}