CNPJ Lead Scraper API - Find Brazilian Companies by CNAE
Pricing
$9.00 / 1,000 per lead founds
CNPJ Lead Scraper API - Find Brazilian Companies by CNAE
Search 55M+ Brazilian companies by CNAE segment, state and size. Get legal name, address, phone, email and QSA shareholders from the official CNPJ registry. Export to JSON, CSV or Excel, or call the Batch API. Pay only per result returned. CNAE list: https://brasildados.org/lista-cnaes/
Pricing
$9.00 / 1,000 per lead founds
Rating
5.0
(1)
Developer
BrasilDados.org - API e Data as a Service
Maintained by CommunityActor stats
2
Bookmarked
148
Total users
25
Monthly active users
2 days ago
Last modified
Categories
Share
🔎 What does Brazil Company Lead Search API do?
Brazil Company Lead Search API finds Brazilian establishments using the Brazilian Tax ID system (CNPJ), optional CNAE economic activity segment codes, state filters and city filters by IBGE code. You can narrow the search by Brazilian state, city, company size and registration status, or run a broad search without a CNAE filter, then receive structured company records for prospecting, market mapping and CRM enrichment. Each returned establishment is written as one Dataset item with its Brazilian Tax ID, legal name, economic activity, address, contacts, company size, registration status, shareholder structure and derived business metrics.
Use official CNAE subclass codes, one or more cities (IBGE codes), one or more states, or any combination of these filters. You can omit CNAEs for a broad search. Results can include headquarters and branches. The search accepts 1 to 1,000 companies, with an effective default of 250 when maxResults is omitted. The Console prefill and example remain set to 500.
The search applies the requested limit up to 1,000 results. Dataset rows can be inspected in the Console, read through the API or downloaded as JSON, CSV, Excel or XML.
Input and output use Portuguese registry field names so results can connect to local accounting, procurement or CRM systems. Contacts and shareholder information can be absent, and shareholder documents are returned masked.
🎯 Why use Brazil Company Lead Search API?
Searching by CNAE is more precise than relying only on free text. CNAE codes represent economic activity segments, so a subclass helps define the business segment before reviewing companies. A city filter supports geographic prospecting when the activity segment is unknown. State and company-size filters focus the list on a territory or qualification profile.
Use this Actor for:
- 🎯 B2B prospecting: create a list of companies in a defined industry and territory.
- 🗺️ Market mapping: estimate which establishments are present in a CNAE segment.
- 🤝 Supplier discovery: find companies that provide a specific category of goods or services.
- 🔎 Partner research: identify potential distributors, service providers or technology partners.
- 🧩 CRM preparation: create an initial company list before adding enrichment or qualification data.
- 📈 Competitive research: compare company presence across states and economic activities.
- 🔁 Portfolio expansion: repeat the same search on a schedule and review newly available records.
The output includes activities, legal nature, capital information, status dates, address components, available phones and email, QSA shareholder records, company age and time in the current status. These fields help prioritize records before manual qualification.
Run the Actor from the Console, invoke it from an application through the API, schedule recurring searches, retain Dataset history and connect results to a workflow. Download a file for analysis or consume JSON in a CRM pipeline. Run logs help diagnose invalid input and execution failures.
Registry data can be incomplete or outdated, so apply your own qualification rules, contact permissions and business validation.
🚀 How to use Brazil Company Lead Search API
- Choose seven-digit CNAE segments from the BrasilDados CNAE list, or start without CNAE for a broad search.
- Open the Actor and review the Input tab.
- Add optional
cnaes,municipios,uf,porteandsituacaoCadastralfilters. - Keep
situacaoCadastralas"02"for active companies, or select another supported status. - Set
maxResults. Omitted input uses 250, while the visible prefill and example use 500. - Start the run, review the Dataset, and download JSON, CSV, Excel or XML.
- Use CNPJ Data Enrichment when you already have Brazilian Tax IDs and need a separate enrichment workflow.
For larger searches, split the work by CNAE or state. Store the input JSON with the Dataset ID so another analyst can reproduce the search.
API example
The synchronous endpoint returns Dataset items in the response. Replace the placeholder with your own token in your local command or secret manager. Do not commit tokens to source code or paste real tokens into documentation.
curl -X POST "https://api.apify.com/v2/acts/brasildados~cnpj-lead-scraper-search/run-sync-get-dataset-items" \-H "Authorization: Bearer SEU_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"cnaes":["6201501","6204000"],"municipios":["3550308"],"uf":["SP"],"situacaoCadastral":"02","maxResults":250}'
🧾 Input
| Field | Required | Default or visible example | Description |
|---|---|---|---|
cnaes | No | Prefill and example: ["6201501","6204000"] | Optional seven-digit CNAE economic activity segment codes. Invalid codes are ignored. If omitted or invalid, the search can run broadly using the other filters. |
municipios | No | Example: ["3550308"] | Optional list of 7-digit IBGE city codes (São Paulo = 3550308, Campinas = 3509502). Look up codes in the official IBGE table: https://www.ibge.gov.br/explica/codigos-dos-municipios.php |
uf | No | Prefill and example: ["SP"] | Array of Brazilian state codes. Empty means all states. |
porte | No | Empty array | Registry size codes 01 (ME), 03 (EPP) or 05 (other). |
situacaoCadastral | No | Prefill and example: "02" | Registry status code. Supported values are 02, 01, 03, 04, 08 and all. |
maxResults | No | Default 250. Prefill and example 500 | Integer from 1 to 1,000. Limits the number of results returned in the run. |
Example input using the effective default:
{"cnaes": ["6201501"],"municipios": ["3550308"],"uf": ["SP"],"situacaoCadastral": "02","maxResults": 250}
The schema prefill and example use maxResults: 500, while the runtime default when omitted is 250. All filters are optional, so a broad search can run without CNAE, city or state filters. Use maxResults to control the size of broad searches.
📦 Output
Each Dataset item represents one establishment delivered by the source. The Dataset item contains the fields described in the Data table below. Some values are nullable because registry records may not contain an address complement, trade name, email, phone, shareholder age or other optional information.
{"cnpj": "53113791000122","cnpjFormatado": "53.113.791/0001-22","matriz": true,"consultadoEm": "2026-08-22T21:03:35.348Z","razaoSocial": "TOTVS S.A.","nomeFantasia": null,"naturezaJuridica": "2046","naturezaJuridicaDescricao": "Sociedade Anônima Aberta","capitalSocial": "2962584687.27","capitalSocialNumerico": 2962584687.27,"porte": "05","porteDescricao": "Demais","enteFederativo": null,"situacaoCadastral": "02","situacaoCadastralDescricao": "Ativa","dataSituacaoCadastral": "2005-11-03","dataInicioAtividade": "1983-12-13","cnaePrincipal": {"codigo": "6201-5/01","descricao": "Desenvolvimento de programas de computador sob encomenda"},"cnaesSecundarios": [{"codigo": "6204-0/00","descricao": "Consultoria em tecnologia da informação"}],"logradouro": "Avenida Braz Leme","numero": "1000","complemento": null,"bairro": "Casa Verde","cep": "02511000","uf": "SP","municipioCodigo": "3550308","municipioNome": "São Paulo","pais": "76","paisDescricao": "Brasil","telefone1": "1140040015","telefone2": null,"email": "fiscal@totvs.com.br","enderecoCompleto": "Avenida Braz Leme, 1000, Casa Verde, São Paulo/SP, CEP 02511-000","idadeEmpresaAnos": 42,"idadeEmpresaDias": 15593,"tempoSituacaoAtualDias": 7597,"totalSocios": 8,"totalCnaesSecundarios": 9,"tempoMedioSociosDias": 3306,"socios": [{"nome": "Gilsomar ******","tipo": "2","tipoDescricao": "Pessoa Física","documento": "***189288**","qualificacao": "10","qualificacaoDescricao": "Diretor","dataEntrada": "2009-05-28","faixaEtariaDescricao": "41-50"}]}
The Console provides Dataset views, while the API returns the complete object. JSON preserves the necessary nested CNAE and shareholder arrays. CSV and Excel are useful for analysis and CRM preparation, while XML supports systems that require it.
📋 Data fields
| Field | Description |
|---|---|
cnpj | Normalized 14 digit Brazilian company tax ID. |
cnpjFormatado | CNPJ with the conventional punctuation mask. |
matriz | Indicates whether the establishment is a headquarters. |
consultadoEm | ISO timestamp generated when the record is mapped. |
razaoSocial | Official legal company name. |
nomeFantasia | Trade or brand name, when available. |
naturezaJuridica | Legal nature registry code. |
naturezaJuridicaDescricao | Human readable legal nature. |
capitalSocial | Share capital represented as a formatted string value. |
capitalSocialNumerico | Share capital as a numeric value. |
porte | Official company size code. |
porteDescricao | Human readable company size. |
enteFederativo | Government jurisdiction information, when provided. |
situacaoCadastral | Official registration status code. |
situacaoCadastralDescricao | Human readable registration status. |
dataSituacaoCadastral | Date associated with the current registration status. |
dataInicioAtividade | Registered activity start date. |
cnaePrincipal | Primary activity object containing codigo and descricao. |
cnaesSecundarios | Array of additional activity objects. |
logradouro | Street or avenue name. |
numero | Address number. |
complemento | Additional address detail. |
bairro | Neighborhood or district. |
cep | Postal code. |
uf | Brazilian state code. |
municipioCodigo | Registry municipality code. |
municipioNome | Municipality name. |
pais | Registry country code. |
paisDescricao | Human readable country name. |
telefone1 | First declared phone number, when available. |
telefone2 | Second declared phone number, when available. |
email | First declared email address, when available. |
enderecoCompleto | Combined address string generated by the Actor. |
idadeEmpresaAnos | Derived company age in years. |
idadeEmpresaDias | Derived company age in days. |
tempoSituacaoAtualDias | Days since the current registration status date. |
totalSocios | Number of shareholder or QSA records returned. |
totalCnaesSecundarios | Number of secondary CNAE records returned. |
tempoMedioSociosDias | Average shareholder tenure in days when calculable. |
socios | Array of shareholder records with masked documents and role information. |
The activity objects use the official code and description returned by the source. The socios array can include natural and legal persons, with masked documents. Optional fields can be null, and an empty array means that no entries were available.
💡 Tips or Advanced options
💡 Use the most specific CNAE subclass available when you have one. If you do not know the CNAE, use municipios, uf or both to focus the search. A broad search is supported, but should use a suitable maxResults value.
Use uf to create territory-based lists. For national coverage, run without a state filter and choose an appropriate maxResults. For more than 1,000 possible establishments, split the work by state or CNAE.
Keep situacaoCadastral as 02 for a practical active company prospecting list. Use all only when inactive, suspended or closed companies are relevant to your research. The codes 01, 03, 04 and 08 represent other registry statuses. Use porte when company size is a meaningful qualification rule.
For a smoke test, set maxResults to a small value such as 10. Save the input, run ID and Dataset ID for auditing and comparison. Each delivered Dataset row is charged as one result, while a search with no returned establishments does not generate a result charge.
⚠️ Do not assume that every company has a public email or phone. Combine this search with your qualification process or a separate enrichment Actor when more firmographic data is needed.
⚠️ FAQ, disclaimers and support
Where can I find CNAE codes?
Use the BrasilDados CNAE list to search and copy official subclass codes. The input accepts seven digit codes and the common IBGE mask.
Can I run a search without CNAE?
Yes. CNAE is optional. You can run a broad search or combine municipios, uf, porte and situacaoCadastral to focus the result set.
What is the default result limit?
When maxResults is omitted, the runtime uses 250. The input schema prefill and example intentionally show 500. The maximum accepted value is 1,000.
Does the Actor search only active companies?
Yes, the default registry status is 02, which represents active companies. Use another supported status or all when your research requires a different population.
Does maxResults only affect the final Dataset?
No. The selected value limits the number of records returned after the input is validated and capped. The returned records are then made available in the Dataset.
Does the output include contacts and shareholders?
When the source provides them, the output includes declared phones, the first declared email and QSA shareholder records. Optional values can be null, and shareholder documents are masked.
Is this a guarantee that a company is a good lead?
No. Registry data supports discovery but does not replace commercial qualification, consent requirements, legal review or confirmation that a contact is current. Use the data responsibly and respect applicable privacy and data protection obligations.
How can I request support?
Review the input, run log, Dataset schema and returned fields first. If the issue persists, use the Actor support or Issues area with the run ID, the sanitized input and a description of the expected result. Do not include API tokens, confidential customer data or unmasked personal documents. For documentation and custom solutions, visit brasildados.org.
Other BrasilDados Actors
| Actor | When to use |
|---|---|
| CNPJ Data Enrichment | Enrich an existing list of CNPJs with company information |
| KYC and PEP by CNPJ | Add compliance, PEP and sanctions checks |
| Brazil Government Contracts Check | Review federal procurement history for selected companies |
📧 contato@brasildados.org · 🌐 brasildados.org · 🛒 BrasilDados na Apify Store