Financiar v1 / CursIstoricPerioada
Month-end rate in old lei
The end-of-month rate in ROL, as the NBR publishes it — the revaluation figure of that era.
„End of period" is the quotation of the last banking day of the month. From 1998 onwards, where the daily series exists, the response also gives the day the figure comes from: for a revaluation note, the day is what goes into it. Before 1998 the witness is missing and the response says so.
GET
https://oneapi.ro/api/financiar/v1/curs-istoric/inchidere
Query parameters
NameTypeDescriptionAccepted values
lunarequired
string | null
Required: the month,
YYYY-MM, between 1991-01 and 2005-06.
e.g. 2003-12e.g. 2001-06e.g. 2000-06
valutalistoptional
text
Optional,
USD or EUR, comma-separated. Without it, both.
e.g. USD
How it behaves
- The month-end exchange rate in old lei — the era's revaluation figure. The dollar from 1991-01, the euro from 1999-01, both through 2005-06.
- "End of period" is the quotation of the last banking day of the month, not an average and not the quote on the 31st. Where the daily series exists — from 1998-01-05 — the response also gives the day the figure comes from: for a revaluation note, the day is what goes into it. Before 1998 there is no witness, and the response says so.
- The NBR publishes no annual close for the old-leu era, so no route exists for one. An unregistered path says "this does not exist" more clearly than one that would return 404 forever.
- Every figure also comes as
echivalent_ron, divided by 10,000.
What it is for
- Revaluing a foreign-currency receivable at the end of a month in the 1990s.
- Closing an old financial year, with the day the rate comes from.
Response structure
FieldTypeDescription
data.perioada
string
The period the value refers to.
data.de_la
string
Start of the interval the response covers.
data.pana_la
string
End of the interval the response covers, inclusive.
data.epoca
string
data.fel
string
data.unitate
string
The unit of the values. Read it before plotting or adding them up.
data.valute[].valuta
string
ISO 4217 currency code.
data.valute[].eticheta
string
Display label for the value — the readable version of the code next to it.
data.valute[].valoare
string
The value published by the source for the combination above.
data.valute[].echivalent_ron
string
The figure in new lei, divided by 10,000.
data.valute[].verificare.disponibila
boolean
data.valute[].verificare.metoda
string
data.valute[].verificare.ultima_zi_cotata
string
The banking day the figure comes from — what goes into the revaluation note.
data.valute[].verificare.calculat
string
data.valute[].verificare.diferenta
string
meta.sursa
string
The official source the data comes from, with its licence where one is required.
meta.acoperire.de_la
string
The first period we have data for.
meta.acoperire.pana_la
string
The last period we have data for.
meta.nota_martor
string
A note on how to read the response: a caveat, a convention or a limit of the source.
meta.nota_denominare
string
The 2005 denomination (1 new leu = 10,000 old lei) and what it means for comparisons.
meta.zilnic
string
meta.epoca_urmatoare
string
meta.fara_date
data is null and this says why. The quote exists at the source, but our import is behind; the response says how far our data goes.
meta.fara_date_cod
The short, STABLE word for the reason, for clients that branch on it in code:
fara_date is prose and may be rephrased, this is not.
Response examples
GEThttps://oneapi.ro/api/financiar/v1/curs-istoric/inchidere?luna=2003-12
{
"data": {
"perioada": "2003-12",
"de_la": "2003-12-01",
"pana_la": "2003-12-31",
"epoca": "ROL",
"fel": "inchidere",
"unitate": "ROL pentru o unitate de valută",
"valute": [
{
"valuta": "USD",
"eticheta": "dolarul SUA",
"valoare": "32595.000000",
"echivalent_ron": "3.2595",
"verificare": {
"disponibila": true,
"metoda": "ultima cotaţie a lunii",
"ultima_zi_cotata": "2003-12-31",
"calculat": "32595.00",
"diferenta": "0.00"
}
}
]
},
"meta": {
"sursa": "BNR — cursul de schimb, serii lunare în lei vechi (clasa 703).",
"acoperire": {
"de_la": "1991-01",
"pana_la": "2005-06"
},
"nota_martor": "Valoarea de sfârşit de perioadă e cotaţia ultimei zile bancare din lună. Unde există seria zilnică, `verificare` dă şi ziua din care vine cifra.",
"nota_denominare": "`echivalent_ron` e cifra împărţită la 10.000, rata denominării din 2005-07-01.",
"zilnic": "Cotaţiile zi cu zi ale aceleiaşi luni: /financiar/v1/curs-istoric/interval?de_la=2003-12-01&pana_la=2003-12-31",
"epoca_urmatoare": "Din iulie 2005, în lei noi: /financiar/v1/curs-inchidere?luna=AAAA-LL."
}
}
GEThttps://oneapi.ro/api/financiar/v1/curs-istoric/inchidere?luna=2001-06&valuta=USD
{
"data": {
"perioada": "2001-06",
"de_la": "2001-06-01",
"pana_la": "2001-06-30",
"epoca": "ROL",
"fel": "inchidere",
"unitate": "ROL pentru o unitate de valută",
"valute": [
{
"valuta": "USD",
"eticheta": "dolarul SUA",
"valoare": "29160.000000",
"echivalent_ron": "2.916",
"verificare": {
"disponibila": true,
"metoda": "ultima cotaţie a lunii",
"ultima_zi_cotata": "2001-06-29",
"calculat": "29160.00",
"diferenta": "0.00"
}
}
]
},
"meta": {
"sursa": "BNR — cursul de schimb, serii lunare în lei vechi (clasa 703).",
"acoperire": {
"de_la": "1991-01",
"pana_la": "2005-06"
},
"nota_martor": "Valoarea de sfârşit de perioadă e cotaţia ultimei zile bancare din lună. Unde există seria zilnică, `verificare` dă şi ziua din care vine cifra.",
"nota_denominare": "`echivalent_ron` e cifra împărţită la 10.000, rata denominării din 2005-07-01.",
"zilnic": "Cotaţiile zi cu zi ale aceleiaşi luni: /financiar/v1/curs-istoric/interval?de_la=2001-06-01&pana_la=2001-06-30",
"epoca_urmatoare": "Din iulie 2005, în lei noi: /financiar/v1/curs-inchidere?luna=AAAA-LL."
}
}
GEThttps://oneapi.ro/api/financiar/v1/curs-istoric/inchidere?luna=2000-06&valuta[]=USD
{
"data": {
"perioada": "2000-06",
"de_la": "2000-06-01",
"pana_la": "2000-06-30",
"epoca": "ROL",
"fel": "inchidere",
"unitate": "ROL pentru o unitate de valută",
"valute": [
{
"valuta": "USD",
"eticheta": "dolarul SUA",
"valoare": "21358.000000",
"echivalent_ron": "2.1358",
"verificare": {
"disponibila": true,
"metoda": "ultima cotaţie a lunii",
"ultima_zi_cotata": "2000-06-30",
"calculat": "21358.00",
"diferenta": "0.00"
}
}
]
},
"meta": {
"sursa": "BNR — cursul de schimb, serii lunare în lei vechi (clasa 703).",
"acoperire": {
"de_la": "1991-01",
"pana_la": "2005-06"
},
"nota_martor": "Valoarea de sfârşit de perioadă e cotaţia ultimei zile bancare din lună. Unde există seria zilnică, `verificare` dă şi ziua din care vine cifra.",
"nota_denominare": "`echivalent_ron` e cifra împărţită la 10.000, rata denominării din 2005-07-01.",
"zilnic": "Cotaţiile zi cu zi ale aceleiaşi luni: /financiar/v1/curs-istoric/interval?de_la=2000-06-01&pana_la=2000-06-30",
"epoca_urmatoare": "Din iulie 2005, în lei noi: /financiar/v1/curs-inchidere?luna=AAAA-LL."
}
}
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 | dupa_denominare | The month is later than 2005-06; the response points to /curs-inchidere. negasit — as on the average route. |
| 422 | valuta_necunoscuta | Over a period, in old lei, the source publishes only some currencies; the response lists them. A missing month, written other than YYYY-MM or outside 1991–2005. There is no an here: the central bank published no annual closings in the ROL era. |
| 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": "valuta_necunoscuta",
"mesaj": "Over a period, in old lei, the source publishes only some currencies; the response lists them. A missing month, written other than YYYY-MM or outside 1991–2005. There is no an here: the central bank published no annual closings in the ROL era.",
"detalii": {
"luna": [
"The value sent does not satisfy the parameter rule."
]
}
}
}