Firmoscop · Schema

CompanyProfile

FinanceDataRomaniaBusiness

Properties

Name Type Description
cui string
name string
registrationNumber stringnull
county stringnull
locality stringnull
registeredAddress stringnull Adresa completă a sediului social (ONRC primar, ANAF fallback).
registeredAt stringnull
ageYears integernull
caenCode stringnull
caenLabel stringnull
registrationState stringnull
inInsolvency boolean Firma e într-o PROCEDURĂ de insolvență/faliment/reorganizare/lichidare. NU include radierea — vezi struckOff.
struckOff boolean Firma e radiată din registrul comerțului, deci nu mai există juridic. Raportat separat: radierea e de obicei sfârșit normal de viață, nu o procedură în curs.
dissolved boolean Firma a încetat să existe FĂRĂ insolvență — absorbită prin fuziune/divizare, ori dizolvată de drept. Distinct de insolvență și de radiere.
stateKind string Starea reală din registru, normalizată. Sursa unică a etichetei afișate; „activa" înseamnă fără niciun semnal de stare.
vatRegistered booleannull
fiscallyInactive booleannull
largeTaxpayer booleannull Mare contribuabil (administrat de DGAMC) — semnal de mărime.
ownershipForm stringnull Forma de proprietate ANAF (ex. capital privat autohton/străin/de stat).
website stringnull
financials array
health object
credit object
representatives array
publicContracts objectnull
connections objectnull Firme la care apar persoane cu ACELAȘI NUME ca reprezentanții acestei firme. Nu e un grup corporativ confirmat.
dataAsOf stringnull Cea mai recentă citire a firmei: anafCheckedAt dacă există, altfel data ONRC. Pentru data fiecărei surse, vezi câmpurile de mai jos.
anafCheckedAt stringnull Când am citit ultima oară firma la ANAF. Indexul trece prin toate firmele în aproximativ o săptămână; o verificare (GET /api/v1/verify/{cui}) care citește sursele live o aduce la zi.
onrcAsOf stringnull Data snapshotului ONRC (Registrul Comerțului) din care vin datele de registru. ONRC publică lunar. null pentru firmele pe care ONRC nu le-a publicat încă.
View JSON Schema on GitHub

JSON Schema

firmoscop-ro-company-profile-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/firmoscop-ro/json-schema/firmoscop-ro-company-profile-schema.json",
  "title": "CompanyProfile",
  "x-generated": "2026-11-08",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_original/firmoscop-ro-api-openapi.json#/components/schemas/CompanyProfile",
  "type": "object",
  "properties": {
    "cui": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "registrationNumber": {
      "type": [
        "string",
        "null"
      ]
    },
    "county": {
      "type": [
        "string",
        "null"
      ]
    },
    "locality": {
      "type": [
        "string",
        "null"
      ]
    },
    "registeredAddress": {
      "type": [
        "string",
        "null"
      ],
      "description": "Adresa completă a sediului social (ONRC primar, ANAF fallback)."
    },
    "registeredAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date"
    },
    "ageYears": {
      "type": [
        "integer",
        "null"
      ]
    },
    "caenCode": {
      "type": [
        "string",
        "null"
      ]
    },
    "caenLabel": {
      "type": [
        "string",
        "null"
      ]
    },
    "registrationState": {
      "type": [
        "string",
        "null"
      ]
    },
    "inInsolvency": {
      "type": "boolean",
      "description": "Firma e într-o PROCEDURĂ de insolvență/faliment/reorganizare/lichidare. NU include radierea — vezi struckOff."
    },
    "struckOff": {
      "type": "boolean",
      "description": "Firma e radiată din registrul comerțului, deci nu mai există juridic. Raportat separat: radierea e de obicei sfârșit normal de viață, nu o procedură în curs."
    },
    "dissolved": {
      "type": "boolean",
      "description": "Firma a încetat să existe FĂRĂ insolvență — absorbită prin fuziune/divizare, ori dizolvată de drept. Distinct de insolvență și de radiere."
    },
    "stateKind": {
      "type": "string",
      "enum": [
        "radiata",
        "dizolvata-fuziune",
        "dizolvata",
        "faliment",
        "reorganizare",
        "lichidare",
        "insolventa",
        "activa"
      ],
      "description": "Starea reală din registru, normalizată. Sursa unică a etichetei afișate; „activa\" înseamnă fără niciun semnal de stare."
    },
    "vatRegistered": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "fiscallyInactive": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "largeTaxpayer": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "Mare contribuabil (administrat de DGAMC) — semnal de mărime."
    },
    "ownershipForm": {
      "type": [
        "string",
        "null"
      ],
      "description": "Forma de proprietate ANAF (ex. capital privat autohton/străin/de stat)."
    },
    "website": {
      "type": [
        "string",
        "null"
      ]
    },
    "financials": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/FinancialYear"
      }
    },
    "health": {
      "$ref": "#/$defs/FinancialHealth"
    },
    "credit": {
      "$ref": "#/$defs/CreditGuidance"
    },
    "representatives": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "role": {
            "type": [
              "string",
              "null"
            ]
          },
          "otherCompanies": {
            "type": "integer",
            "description": "La câte ALTE firme apare acest NUME. Potrivirea e pe șir de caractere, fără identificator de persoană — pot fi mai mulți oameni diferiți."
          },
          "otherInsolvent": {
            "type": "integer",
            "description": "Câte dintre ele sunt într-o PROCEDURĂ de insolvență/faliment/reorganizare. Nu include radierile."
          },
          "otherStruckOff": {
            "type": "integer",
            "description": "Câte dintre ele sunt radiate. Raportat separat: radierea e de obicei sfârșit normal de viață, nu un semnal de risc."
          }
        }
      }
    },
    "publicContracts": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "count": {
          "type": "integer"
        },
        "totalValue": {
          "type": "integer",
          "description": "Suma contractelor REALE (de sine stătătoare + subsecvente), în lei. Plafoanele de acord-cadru NU sunt incluse — sunt valoarea maximă a acordului, nu bani încasați. La contractele câștigate în asociere, valoarea contractului e împărțită egal între câștigători (sursa nu spune cât revine fiecăruia)."
        },
        "frameworkCount": {
          "type": "integer",
          "description": "Câte locuri pe acorduri-cadru are firma."
        },
        "frameworkCeiling": {
          "type": "integer",
          "description": "Plafonul cumulat al acordurilor-cadru, în lei. NU se însumează cu totalValue — e o limită superioară partajată, nu venit."
        },
        "sharedCount": {
          "type": "integer",
          "description": "Câte dintre contracte au fost câștigate în asociere cu alte firme; la ele, partea firmei e estimată prin împărțire egală."
        },
        "lastDate": {
          "type": [
            "string",
            "null"
          ]
        },
        "topAuthorities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "connections": {
      "type": [
        "object",
        "null"
      ],
      "description": "Firme la care apar persoane cu ACELAȘI NUME ca reprezentanții acestei firme. Nu e un grup corporativ confirmat.",
      "properties": {
        "total": {
          "type": "integer"
        },
        "insolvent": {
          "type": "integer",
          "description": "În procedură de insolvență."
        },
        "struckOff": {
          "type": "integer",
          "description": "Radiate. Separat de insolvență."
        },
        "commonNameWarning": {
          "type": "boolean"
        }
      }
    },
    "dataAsOf": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "description": "Cea mai recentă citire a firmei: anafCheckedAt dacă există, altfel data ONRC. Pentru data fiecărei surse, vezi câmpurile de mai jos."
    },
    "anafCheckedAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "description": "Când am citit ultima oară firma la ANAF. Indexul trece prin toate firmele în aproximativ o săptămână; o verificare (GET /api/v1/verify/{cui}) care citește sursele live o aduce la zi."
    },
    "onrcAsOf": {
      "type": [
        "string",
        "null"
      ],
      "format": "date",
      "description": "Data snapshotului ONRC (Registrul Comerțului) din care vin datele de registru. ONRC publică lunar. null pentru firmele pe care ONRC nu le-a publicat încă."
    }
  },
  "$defs": {
    "CreditGuidance": {
      "type": "object",
      "description": "Recomandare acțională de creditare, derivată din bonitate + semnale dure (insolvență, inactivitate fiscală). Orientativă, nu o garanție.",
      "properties": {
        "stance": {
          "type": "string",
          "enum": [
            "termen",
            "avans-partial",
            "doar-avans"
          ],
          "description": "Poziția recomandată față de un termen de plată."
        },
        "termDays": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Termenul net sugerat, în zile. null = fără cont deschis (doar avans)."
        },
        "exposureRon": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Plafonul de expunere orientativ (RON). null când nu se recomandă credit."
        },
        "summary": {
          "type": "string",
          "description": "Propoziție acțională, gata de afișat."
        }
      }
    },
    "FinancialHealth": {
      "type": "object",
      "description": "Scor de bonitate determinist, explicabil.",
      "properties": {
        "klass": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "Solidă",
            "Stabilă",
            "Fragilă",
            "Critică"
          ]
        },
        "score": {
          "type": [
            "integer",
            "null"
          ],
          "description": "0–100"
        }
      }
    },
    "FinancialYear": {
      "type": "object",
      "properties": {
        "year": {
          "type": "integer"
        },
        "turnover": {
          "type": [
            "integer",
            "null"
          ]
        },
        "netResult": {
          "type": [
            "integer",
            "null"
          ]
        },
        "totalDebt": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Datorii totale (bilanțul public MF nu separă curente de termen lung)."
        },
        "equity": {
          "type": [
            "integer",
            "null"
          ]
        },
        "employees": {
          "type": [
            "integer",
            "null"
          ]
        },
        "currentAssets": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Active circulante (I2). Poate lipsi pentru bilanțurile ingestate mai devreme."
        },
        "fixedAssets": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Active imobilizate (I1)."
        },
        "grossProfit": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Profit/pierdere brut(ă) (I16/I17)."
        },
        "subscribedCapital": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Capital subscris vărsat (I11)."
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/firmoscop-ro-company-profile"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.