{"openapi":"3.1.0","info":{"title":"National Bank of Moldova API","version":"1.0.0","description":"Live official exchange-rate data from the National Bank of Moldova (BNM), the central bank of the Republic of Moldova, for the Moldovan leu (MDL): the BNM official rate for every published currency (normalised to one unit), a single currency's leu-per-unit rate and inverse, a currency's official rate on a specific past date, and currency conversion between any two published currencies (including MDL) cross-computed through the leu.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/bnm-api","description":"oanor gateway"}],"tags":[{"name":"Rates"},{"name":"History"},{"name":"Convert"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/rate":{"get":{"operationId":"get_v1_rate","tags":["Rates"],"summary":"One currency leu-per-unit rate and inverse","description":"","parameters":[{"name":"currency","in":"query","required":true,"description":"3-letter ISO currency code","schema":{"type":"string"},"example":"USD"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"base":"MDL","date":"2026-06-10","name":"US Dollar","source":"National Bank of Moldova","nominal":1,"currency":"USD","code_numeric":840,"mdl_per_unit":17.3528,"unit_per_mdl":0.05762759},"meta":{"timestamp":"2026-06-10T13:59:59.439Z","request_id":"6a1e27ed-b123-486e-99af-d3cbc511ca95"},"status":"ok","message":"Rate retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/rates":{"get":{"operationId":"get_v1_rates","tags":["Rates"],"summary":"BNM official rate for every currency vs the leu","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"base":"MDL","date":"2026-06-10","count":40,"rates":[{"name":"U.A.E. Dirham","value":4.7244,"nominal":1,"currency":"AED","code_numeric":784,"mdl_per_unit":4.7244},{"name":"Albanian lek","value":2.1067,"nominal":10,"currency":"ALL","code_numeric":8,"mdl_per_unit":0.21067},{"name":"Armenian Dram","value":0.4705,"nominal":10,"currency":"AMD","code_numeric":51,"mdl_per_unit":0.04705},{"name":"Australian Dollar","value":12.2459,"nominal":1,"currency":"AUD","code_numeric":36,"mdl_per_unit":12.2459},{"name":"Azerbaijanian Manat","value":10.2074,"nominal":1,"currency":"AZN","code_numeric":944,"mdl_per_unit":10.2074},{"name":"Belarussian Ruble","value":6.2729,"nominal":1,"currency":"BYN","code_numeric":933,"mdl_per_unit":6.2729},{"name":"Canadian Dollar","value":12.455,"nominal":1,"currency":"CAD","code_numeric":124,"mdl_per_unit":12.455},{"name":"Swiss Franc","value":21.7945,"nominal":1,"currency":"CHF","code_numeric":756,"mdl_per_unit":21.7945},{"name":"Chinese yuan renminbi","value":2.5625,"nominal":1,"currency":"CNY","code_numeric":156,"mdl_per_unit":2.5625},{"name":"Czech Koruna","value":0.8302,"nominal":1,"currency":"CZK","code_numeric":203,"mdl_per_unit":0.8302},{"name":"Danish Krone","value":2.6853,"nominal":1,"currency":"DKK","code_numeric":208,"mdl_per_unit":2.6853},{"name":"Euro","value":20.0703,"nominal":1,"currency":"EUR","code_numeric":978,"mdl_per_unit":20.0703},{"name":"Pound Sterling","value":23.244,"nominal":1,"currency":"GBP","code_numeric":826,"mdl_per_unit":23.244},{"name":"Georgian Lar","value":6.5314,"nominal":1,"currency":"GEL","code_numeric":981,"mdl_per_unit":6.5314},{"name":"Hong Kong dollar","value":2.2143,"nominal":1,"currency":"HKD","code_numeric":344,"mdl_per_unit":2.2143},{"name":"Hungarian Forint","value":5.6525,"nominal":100,"currency":"HUF","code_numeric":348,"mdl_per_unit":0.056525},{"name":"Shekel Israelit","value":5.9052,"nominal":1,"currency":"ILS","code_numeric":376,"mdl_per_unit":5.9052},{"name":"Indian rupee","value":1.8197,"nominal":10,"currency":"INR","code_numeric":356,"mdl_per_unit":0.18197},{"name":"Iceland Krona","value":1.3977,"nominal":10,"currency":"ISK","code_numeric":352,"mdl_per_unit":0.13977},{"name":"Japanese Yen","value":10.8339,"nominal":100,"currency":"JPY","code_numeric":392,"mdl_per_unit":0.108339},{"name":"Kyrgyzstan Som","value":1.9917,"nominal":10,"currency":"KGS","code_numeric":417,"mdl_per_unit":0.19917},{"name":"South Korean won","value":1.1386,"nominal":100,"currency":"KRW","code_numeric":410,"mdl_per_unit":0.011386},{"name":"Kuwaiti Dinar","value":56.1486,"nominal":1,"currency":"KWD","code_numeric":414,"mdl_per_unit":56.1486},{"name":"Kazakhstan Tenge","value":0.3552,"nominal":10,"currency":"KZT","code_numeric":398,"mdl_per_unit":0.03552},{"name":"Macedonian denar","value":3.2547,"nominal":10,"currency":"MKD","code_numeric":807,"mdl_per_unit":0.32547},{"name":"Malaysian Ringgit","value":4.2741,"nominal":1,"currency":"MYR","code_numeric":458,"mdl_per_unit":4.2741},{"name":"Norwegian Krone","value":1.8355,"nominal":1,"currency":"NOK","code_numeric":578,"mdl_per_unit":1.8355},{"name":"New Zealand Dollar","value":10.1288,"nominal":1,"currency":"NZD","code_numeric":554,"mdl_per_unit":10.1288},{"name":"Polish Zloty","value":4.7366,"nominal":1,"currency":"PLN","code_numeric":985,"mdl_per_unit":4.7366},{"name":"Romanian Leu","value":3.8319,"nominal":1,"currency":"RON","code_numeric":946,"mdl_per_unit":3.8319},{"name":"Serbian Dinar","value":17.0961,"nominal":100,"currency":"RSD","code_numeric":941,"mdl_per_unit":0.170961},{"name":"Russian Ruble","value":0.242,"nominal":1,"currency":"RUB","code_numeric":643,"mdl_per_unit":0.242},{"name":"Swedish Krona","value":1.8428,"nominal":1,"currency":"SEK","code_numeric":752,"mdl_per_unit":1.8428},{"name":"Tajikistan Somoni","value":1.8614,"nominal":1,"currency":"TJS","code_numeric":972,"mdl_per_unit":1.8614},{"name":"Turkmenistan Manat","value":4.9575,"nominal":1,"currency":"TMT","code_numeric":934,"mdl_per_unit":4.9575},{"name":"Turkish Lira","value":0.376,"nominal":1,"currency":"TRY","code_numeric":949,"mdl_per_unit":0.376},{"name":"Ukraine Hryvnia","value":0.3866,"nominal":1,"currency":"UAH","code_numeric":980,"mdl_per_unit":0.3866},{"name":"US Dollar","value":17.3528,"nominal":1,"currency":"USD","code_numeric":840,"mdl_per_unit":17.3528},{"name":"Uzbekistan Sum","value":0.1443,"nominal":100,"currency":"UZS","code_numeric":860,"mdl_per_unit":0.001443},{"name":"Special Drawing Rights","value":23.69,"nominal":1,"currency":"XDR","code_numeric":960,"mdl_per_unit":23.69}],"source":"National Bank of Moldova"},"meta":{"timestamp":"2026-06-10T13:59:59.610Z","request_id":"db053e6c-8202-42da-b152-d01728b5e356"},"status":"ok","message":"Rates retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/history":{"get":{"operationId":"get_v1_history","tags":["History"],"summary":"A currency official rate on a specific past date","description":"","parameters":[{"name":"currency","in":"query","required":true,"description":"3-letter ISO currency code","schema":{"type":"string"},"example":"USD"},{"name":"date","in":"query","required":true,"description":"Date YYYY-MM-DD","schema":{"type":"string"},"example":"2026-05-15"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"base":"MDL","date":"2026-05-15","name":"US Dollar","source":"National Bank of Moldova","nominal":1,"currency":"USD","mdl_per_unit":17.2084,"unit_per_mdl":0.05811116},"meta":{"timestamp":"2026-06-10T13:59:59.773Z","request_id":"f8a22203-fa60-4593-988c-4c686f0e0172"},"status":"ok","message":"History retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/convert":{"get":{"operationId":"get_v1_convert","tags":["Convert"],"summary":"Convert an amount between two currencies at BNM rates","description":"","parameters":[{"name":"from","in":"query","required":true,"description":"Source currency","schema":{"type":"string"},"example":"USD"},{"name":"to","in":"query","required":true,"description":"Target currency","schema":{"type":"string"},"example":"EUR"},{"name":"amount","in":"query","required":false,"description":"Amount to convert","schema":{"type":"string"},"example":"100"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"to":"EUR","date":"2026-06-10","from":"USD","rate":0.86460093,"amount":100,"result":86.460093,"source":"National Bank of Moldova","mdl_per_to":20.0703,"mdl_per_from":17.3528},"meta":{"timestamp":"2026-06-10T13:59:59.935Z","request_id":"0c2c70ee-11b2-4c79-b6da-6891215af49a"},"status":"ok","message":"Conversion completed successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Service metadata and endpoint catalog","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"source":"National Bank of Moldova daily rate file (bnm.md, live)","service":"bnm-api","usd_mdl":17.3528,"endpoints":{"GET /v1/meta":"This document.","GET /v1/rate":"One currency's official rate, leu-per-unit and inverse (currency=USD).","GET /v1/rates":"The BNM official rate for every currency vs the leu.","GET /v1/convert":"Convert an amount between two currencies at BNM rates (from=USD, to=EUR, amount=100).","GET /v1/history":"A currency's official rate on a specific past date (currency=USD, date=2026-05-15)."},"description":"Live official exchange-rate data from the National Bank of Moldova (BNM), the central bank of the Republic of Moldova, for the Moldovan leu (MDL), via its public daily rate file. The rates endpoint returns the BNM's official rate for every published currency against the leu, normalised to one unit; the rate endpoint returns a single currency's official rate (leu-per-unit and the inverse); the history endpoint returns a currency's official rate on a specific past date; the convert endpoint converts an amount between any two published currencies (including MDL) at the BNM's official rates, cross-computed through the leu. Live, no key, nothing stored. Distinct from the ECB, SNB, NBU, HNB, NBG, NBRB, CBU, CBAR, BOI, NBK and other central-bank feeds and from market mid-rates — this is the National Bank of Moldova's own official leu exchange rate.","upstream_status":"ok"},"meta":{"timestamp":"2026-06-10T14:00:00.996Z","request_id":"d27635a8-1f89-4c7b-950c-d28c9828a030"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":13000,"rps_limit":3,"hard_limit":true},{"slug":"basic","name":"Basic","price_cents_month":700,"monthly_call_quota":168000,"rps_limit":8,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1800,"monthly_call_quota":1030000,"rps_limit":15,"hard_limit":true},{"slug":"scale","name":"Scale","price_cents_month":4800,"monthly_call_quota":5450000,"rps_limit":35,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/bnm-api"}