Pick what the firms do and the county, see how many there are, and download the list with each firm's address, website, the phone it declared to ANAF, its revenue and headcount, in a file that opens in Excel.
Company lists in the browser. Pick an activity and a county, filter by revenue, headcount and VAT, and download the list for Excel (CSV). No code.
You sign in with your email: no password, no card.
Free API key. 25 lookups a day for an email address, no payment, over REST or the MCP server in Claude and Cursor.
Example list: electrical installation firms (CAEN 4321) by county →
| Dataset | Records |
|---|---|
| Companies | 4,214,297 |
| CAEN activity records | 19.53M |
| Legal representatives | 3.69M |
| Company statuses | 4.66M |
| Financial statements (Ministry of Finance) | 2008–2025 · 13.51M filings |
| ANAF fiscal layer (VAT, main activity, phone) | 2.03M firms |
| Registry version | firme-02-09-2026 (published 3 September 2026, 47 days old) |
Free, read-only JSON access to Romania's official business registry: every registered company, its CAEN activities, legal representatives and status, 18 years of financial statements (2008–2025) with ratios and peer benchmarks, plus VAT status and main activity from ANAF.
Examples: company data by CUI, ONRC and ANAF checks, export by CAEN code →
Every endpoint, with examples and the parameters: API docs.
| Endpoint | Description |
|---|---|
GET /lookup_business?query=<name|CUI>&max_results=N | Search companies by name or tax code (CUI). |
GET /lookup_director?name=<name>&max_results=N | Find companies by director / legal-representative name. |
GET /lookup_by_category?category=<topic|CAEN code>&county=X&max_results=N | Lead lists by what a firm does: a curated topic (artificial intelligence, cybersecurity, software, …) or a raw CAEN activity code / comma-separated code list (6201, 6201,6210), optionally narrowed to one county. Newest registrations first. |
GET /lookup_by_category?…&min_revenue=&min_employees=&vat_payer=true&main_activity_only=true&format=csv | Narrow the list: revenue and headcount bands from the latest filing, VAT payers (ANAF), main activity only; format=csv downloads it as a spreadsheet. |
GET /financials/<CUI> | Every filed year since 2008: revenue, profit, headcount, balance-sheet lines and ratios per year, growth and CAGR. |
GET /financials/<CUI>/ratios | Margins, solvency, liquidity, a 0–100 health score with its parts, red flags, and percentiles against firms with the same activity and county. |
GET /topics | The curated topics and the CAEN code sets behind them. |
GET /docs | Interactive OpenAPI docs (Swagger UI). |
GET /health | Liveness check. |
Free during launch. Every endpoint and filter is free today, within the daily limit. When the paid plans go live, the full 2008–2025 financial history, ratios, health score and peer percentiles, the revenue / headcount / VAT filters, CSV export and lists longer than 25 rows move to Pro (€9/month ≈ RON 47.96, 500 lookups a day); Business (€29/month ≈ RON 154.53) gives 5,000 lookups a day. Free keeps the company profile, status and risk, ANAF data, the latest year's figures and lists of up to 25 rows. See all plans. The RON amounts are indicative, at the BNR rate of 20 October 2026 (€1 = RON 5.3285); you pay in euros.
No key needed for a few lookups a day. A free key gives you 25 a day: get it in
ten seconds at /start and send it as an X-API-Key header.
# search by company name curl "https://leadgen.adrianhomelab.com/lookup_business?query=DEDEMAN&max_results=3" # search by CUI (tax code) curl "https://leadgen.adrianhomelab.com/lookup_business?query=2816464" # find companies by director name curl "https://leadgen.adrianhomelab.com/lookup_director?name=popescu" # lead list by CAEN activity code (software), narrowed to one county curl "https://leadgen.adrianhomelab.com/lookup_by_category?category=6201&county=Hunedoara&max_results=25" # the curated topics (AI, cybersecurity, retail, …) and their CAEN codes curl "https://leadgen.adrianhomelab.com/topics"
lookup_business?query=2816464{
"query": "2816464",
"total": 1,
"returned": 1,
"results": [
{
"companyName": "DEDEMAN SRL",
"cui": "2816464",
"registrationCode": "J1992002621040",
"legalForm": "SRL",
"county": "Bacău",
"website": "www.dedeman.ro",
"phone": "0234513330",
"caenActivities": [ { "code": "4752", "activity": "Comerț cu amănuntul al articolelor de fierărie, …", "main": true } ],
"directors": [ "PAVĂL I. DRAGOŞ", "PAVĂL ADRIAN" ],
"status": [ { "code": "1048", "name": "funcțiune" } ],
"anaf": { "mainCaen": "4752", "vatPayer": true, "eFactura": true, "inactive": false },
"latestFinancials": { "year": 2025, "revenue": 13157835535, "netResult": 1635337205, "employees": 12702 },
"risk": { "level": "ok", "label": "no distress signals", "reasons": [] }
}
]
}
Ask by activity instead of by name — 4321 is Lucrări de instalații electrice —
then narrow the list: legal_form=SRL, a revenue band from the latest filing, VAT payers only, and
main_activity_only=true to keep firms that declare the code as their main activity rather than one of
dozens of authorised ones. active_only is on by default and drops struck-off, insolvent, dissolving
and suspended firms, and those ANAF declares fiscally inactive. Add format=csv for a spreadsheet.
GET /lookup_by_category?category=4321&county=Cluj&legal_form=SRL&min_revenue=1000000&vat_payer=true&max_results=1
{
"caenCodes": [ "4321" ],
"county": "Cluj",
"filters": { "legalForm": "SRL", "activeOnly": true, "minRevenue": 1000000, "vatPayer": true, … },
"total": 1,
"returned": 1,
"results": [
{
"companyName": "…",
"cui": "…",
"county": "Cluj",
"phone": "…",
"caenActivities": [ { "code": "4321", "activity": "Lucrări de instalații electrice", "main": true } ],
"anaf": { "mainCaen": "4321", "vatPayer": true, "eFactura": true, "inactive": false },
"latestFinancials": { "year": 2025, "revenue": 2350000, "employees": 14 },
"risk": { "level": "ok", "reasons": [] }
}
]
}
Contacts: results carry the phone the firm declared to ANAF, if it declared one.
The registry has no email; for firms with a website on file (has_website=true), the MCP tool
enrich_company reads the firm's own site for the contacts it publishes.
The registry data comes only from the official ONRC dataset on data.gov.ro, the Ministry of Finance filings and ANAF's public web service, loaded as published and indexed for fast, diacritic-insensitive search. One exception: when you ask for a firm's contacts, we read that firm's own public website.
There's also a full MCP server (business lookup, contact extraction, domain/WHOIS audit) at https://leadgen-mcp.adrianhomelab.com/mcp. Install it with one command, via Smithery:
npx @smithery/cli install @oaida-adrian-3qb2/leadgen-mcp
Or add it directly: https://leadgen-mcp.adrianhomelab.com/mcp · listed on Smithery · Apify actor for no-code access.
In the Leadgen app: pick what the firms do (a field or a CAEN code) and the county, see how many active firms there are, narrow by revenue, headcount and VAT, and download the list as a CSV that opens in Excel, with the phone each firm declared to ANAF, its revenue and headcount from the latest filing. Sign in with your email address; no card.
Yes. Leadgen is a free, read-only JSON API over Romania's official ONRC registry, built from the open-data snapshot on data.gov.ro. You get 5 lookups a day without a key and 25 a day with a free key issued for an email address.
Call GET /lookup_business?query=<CUI or name>. An all-digit query matches the CUI (tax code); a name query is diacritic-insensitive full-text search, so 'paval' finds 'PAVĂL'. The response carries the registration code, legal form, address, CAEN activities, directors and status.
Yes. GET /lookup_by_category?category=6201&county=Cluj returns the firms on that CAEN activity code — one code, a comma-separated list, or a curated topic such as 'software' — newest registrations first, with filters for legal form, active status, website on file, revenue and headcount bands, VAT payers and main activity; add format=csv for a spreadsheet.
From the dataset the Romanian Trade Register (ONRC) publishes on data.gov.ro, loaded as published. The registry version and its publication date are shown in the table above and on /health. Registry data is never scraped and never bought from a third-party vendor; the only website we read is the firm's own, when you ask for its contacts.
Yes: 18 fiscal years, 2008 to 2025, from Ministry of Finance filings. GET /financials/<CUI> (or the MCP tool lookup_financials) returns revenue, profit, headcount and balance-sheet lines for every year with ratios and growth; /financials/<CUI>/ratios adds a 0–100 health score with its parts and percentiles against peers in the same activity and county.
Phone numbers, often: each result carries the phone the firm declared to ANAF, if it declared one. Emails are not in any official register; for the firms with a website on file (has_website=true), the MCP tools enrich_company and extract_contacts read the firm's own site for the contacts it publishes.
Yes. Add https://leadgen-mcp.adrianhomelab.com/mcp as a Streamable HTTP server, with one command via Smithery or a JSON entry in your client's config. Same data and the same free limits; a key goes in the Authorization header.
5 lookups a day for each IP address without a key and 25 a day with a free key, reset at 00:00 UTC (02:00 or 03:00 in Romania). For bulk or higher daily volume write to contact@adrianhomelab.com; the free tier is not meant for re-publishing the dataset.
Company lists in the browser. Pick an activity and a county, filter by revenue, headcount and VAT, and download the list for Excel (CSV). No code.
You sign in with your email: no password, no card.
Free API key. 25 lookups a day for an email address, no payment, over REST or the MCP server in Claude and Cursor.
A few emails a year about new data and features, only if you ask.