Anaf v1 / Declarații D
Nomenclatures
The values accepted by the closed-list fields in returns, straight from the nomenclature used at build time — so you do not have to guess them from a validation message.
GET
https://oneapi.ro/api/anaf/v1/declaratii/codes/{nomenclator}
Path parameters
NameTypeDescriptionExample
nomenclatorrequired
string
Name of the code list requested (units of measure, countries, operation types…).
Query parameters
This route accepts no query parameters.
How it behaves
- Returns a nomenclature used in declarations (e.g.
tip_operatiune— the intra-community operation types in D390).
What it is for
- Populating a form with the valid values.
Response structure
FieldTypeDescription
data.nomenclator
string
The name of the requested nomenclature.
data.valori
object
The code → name pairs.
data.valori.L
string
data.valori.T
string
data.valori.A
string
data.valori.P
string
data.valori.S
string
data.valori.R
string
meta.generat_la
string
When the response was built (ISO 8601).
Response examples
GEThttps://oneapi.ro/api/anaf/v1/declaratii/codes/tip_operatiune
{
"data": {
"nomenclator": "tip_operatiune",
"valori": {
"L": "Livrări intracomunitare de bunuri",
"T": "Livrări în cadrul unei operațiuni triunghiulare",
"A": "Achiziții intracomunitare de bunuri",
"P": "Prestări intracomunitare de servicii",
"S": "Achiziții intracomunitare de servicii",
"R": "Livrări intracomunitare de bunuri — regim special agricultori"
}
},
"meta": {
"generat_la": "2026-10-06T23: 59: 41+03: 00"
}
}
Error codes
| Code | Slug | When it occurs |
|---|---|---|
| 401 | neautentificat | Token missing, invalid, expired or revoked. |
| 403 | modul_interzis | The token has no access to the route's module. |
| 404 | negasit | Unknown nomenclature. |
| 429 | cota_depasita | The plan's monthly quota has been exceeded (see Retry-After). |
Errors in the Anaf module use the same envelope as the rest of the platform, with two extra fields: {eroare: {cod, mesaj, camp, request_id}}. eroare.cod is stable and is what you branch on; on validation (422) the code is case-specific: xml_invalid, xml_nu_e_factura, unitate_necunoscuta, luna_invalida and so on. camp points at the offending field when one can be identified.
{
"eroare": {
"cod": "negasit",
"mesaj": "Unknown nomenclature.",
"camp": "nomenclator",
"request_id": "0199c1f0-6e1a-7c3d-9b2f-4a8e5d1c7b04"
}
}