B3 Bovespa Brazil Stock Tickers & Listed Company Scraper avatar

B3 Bovespa Brazil Stock Tickers & Listed Company Scraper

Pricing

from $11.54 / 1,000 results

Go to Apify Store
B3 Bovespa Brazil Stock Tickers & Listed Company Scraper

B3 Bovespa Brazil Stock Tickers & Listed Company Scraper

Scrape the B3 (Bovespa) Brazil stock exchange listed-company registry. Get company name, all ticker codes with ISIN, CVM code, CNPJ, listing segment (Novo Mercado), sector, share capital, shares outstanding and full dividend history. Export to JSON, CSV or Excel.

Pricing

from $11.54 / 1,000 results

Rating

5.0

(1)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

7 days ago

Last modified

Share

B3 Bovespa Brazil Stock Tickers & Listed Company Scraper

B3 Bovespa Brazil Stock Tickers & Listed Company Scraper

The most complete B3 (Bovespa) Brazil stock exchange scraper on Apify. Export the full B3 listed-company registry as clean JSON, CSV or Excel: company name, every ticker with ISIN, CVM code, CNPJ, listing segment (Novo Mercado, Nivel 1, Nivel 2), sector, share capital, shares outstanding and full dividend history. No account on B3 needed, HTTP only, no official B3 API.

Here is one real result, with every field the actor returns (the cashDividends, stockDividends and subscriptions arrays are shown with one entry each):

{
"companyName": "PETROLEO BRASILEIRO S.A. PETROBRAS",
"tradingName": "PETROBRAS",
"issuingCompany": "PETR",
"codeCVM": "9512",
"cnpj": "33000167000101",
"status": "active",
"segment": "Exploração. Refino e Distribuição",
"market": "BOVESPA NIVEL 2",
"marketIndicator": "17",
"b3Type": "1",
"typeBDR": null,
"listingDate": "27/08/1968",
"mainCode": "PETR4",
"website": "https://www.petrobras.com.br",
"industryClassification": "Petróleo. Gás e Biocombustíveis / Petróleo. Gás e Biocombustíveis / Exploração. Refino e Distribuição",
"activity": "Pesquisa. lavra. refinação. processamento. comércio e transporte de petróleo...",
"categoryBVMF": null,
"listingSegmentCode": "N2",
"listingSegment": "Nível 2",
"hasQuotation": true,
"hasBDR": false,
"hasEmissions": false,
"lastUpdate": "02/09/2026 23:47:46",
"tickers": ["PETR3", "PETR4", "PETR-DEB62"],
"otherCodes": [
{ "code": "PETR3", "isin": "BRPETRACNOR9" },
{ "code": "PETR4", "isin": "BRPETRACNPR6" }
],
"isinCodes": ["BRPETRACNOR9", "BRPETRACNPR6"],
"registrarCommon": "BRADESCO",
"registrarPreferred": "BRADESCO",
"stockCapital": 205431960490.52,
"numberCommonShares": 7442231382,
"numberPreferredShares": 5446501379,
"totalNumberShares": 12888732761,
"commonSharesForm": "Escritural",
"preferredSharesForm": "Escritural",
"roundLot": 100,
"quotedSince": "23/06/2000",
"cashDividends": [
{
"label": "DIVIDENDO",
"rate": "0,47156696000",
"relatedTo": "Anual/2026",
"approvedOn": "06/08/2026",
"lastDatePrior": "21/08/2026",
"paymentDate": "21/12/2026",
"isinCode": "BRPETRACNOR9",
"assetIssued": "BRPETRACNOR9",
"remarks": null
}
],
"stockDividends": [
{
"label": "DESDOBRAMENTO",
"factor": "100,00000000000",
"approvedOn": "25/04/2008",
"lastDatePrior": "25/04/2008",
"isinCode": "BRPETRACNOR9",
"assetIssued": "BRPETRACNOR9",
"remarks": null
}
],
"subscriptions": [
{
"label": "SUBSCRICAO",
"percentage": "20,00000000000",
"priceUnit": "1,00000000000",
"tradingPeriod": "01/01/1900 a 01/01/1900",
"subscriptionDate": null,
"approvedOn": "15/08/1974",
"lastDatePrior": "14/11/1974",
"isinCode": "BRPETRACPPR1",
"assetIssued": "BRPETRACPPR1",
"remarks": null
}
],
"dividendCount": 24,
"stockDividendCount": 6,
"subscriptionCount": 1,
"hasDividends": true,
"tickerCount": 3,
"instrumentType": "Equity",
"url": "https://www.b3.com.br/en_us/products-and-services/trading/equities/listed-companies/listed-companies.htm",
"observedAt": "2026-09-04T02:53:24.588Z",
"aiSummary": null,
"error": null
}

It returns every field the B3 registry exposes for each listed company, including CNPJ, CVM code, industry classification, all ticker codes with ISIN, governance listing segment, share capital, shares outstanding, and full cash-dividend, stock-dividend (splits) and subscription history, plus derived counts, and gives you five filters to target exactly the companies you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

This is a B3 stock exchange scraper and Bovespa data API for the Brazilian market. It reads the B3 (Brasil, Bolsa, Balcao) listed-companies registry and writes one normalized record per company. It lists the whole registry or filters by company name, sector, market, and active status.

With withDetails on (the default) it fetches each company detail record to add industry classification, business activity, website, every ticker code with its ISIN, the governance listing segment (Novo Mercado and levels), share capital, share counts, share forms, registrars, and the full corporate-actions history: cash dividends (dividendos and JCP), stock dividends (splits, reverse splits, bonus shares) and subscriptions. Derived fields (tickerCount, dividendCount, stockDividendCount, subscriptionCount, hasDividends, instrumentType) are computed on top of the raw B3 data. Missing source values are returned as null, never invented.

An optional AI add-on (paid Apify plans only, off by default) writes a plain-English investor snapshot of each company from its own B3 detail record. It is billed only when a summary is produced.

Who it is for

  • Fintechs and brokers building a Brazil equities universe (tickers, ISIN, CNPJ, CVM code) for onboarding, screening or reference data.
  • Quant and data teams that need a clean, machine-readable list of every company on B3 with financials and dividend history.
  • KYB, compliance and research workflows that match a Brazilian ticker to a CNPJ, CVM code and legal name.
  • Dividend and income investors tracking payment dates, rates and JCP events across the whole market.
  • Analysts and journalists mapping sectors, governance segments (Novo Mercado) and corporate actions on the Sao Paulo stock exchange.

Common searches this actor answers: B3 scraper, B3 API, Bovespa data, Brazil stock exchange data, acoes B3, cotacoes B3, empresas listadas B3, ticker CNPJ B3, dados da bolsa brasileira, market data Brazil.

How it compares

Generic global stock scrapers return a price feed but do not carry the Brazilian registry identity fields (CNPJ, CVM code, ISIN, governance segment) or the corporate-actions history. This actor is B3-native and returns all of it.

CapabilityThis actorGeneric global stock scrapers
Full B3 listed-company registryYes, every companyPartial, popular tickers only
Company legal name and trading nameYesSometimes
All ticker codes per companyYes, with ISINUsually one symbol
ISIN codesYesRarely
CVM registration codeYesNo
CNPJ (Brazilian tax ID)YesNo
Governance listing segment (Novo Mercado)Yes, code and nameNo
Sector and industry classificationYesSometimes
Share capital and shares outstandingYesRarely
Cash-dividend history (dividendos, JCP)Yes, fullRarely
Stock dividends and subscriptionsYesNo
Registrars and share formsYesNo
Filter by name, sector, market, activeYesVaries
Portuguese or English segment labelsYesNo
Export JSON, CSV, ExcelYesVaries

Quickstart

Open the actor, paste this into the input, and press Run. It returns the first 10 listed companies with full detail.

{
"maxCompanies": 10,
"withDetails": true
}

Use search to filter by name (for example petrobras, banco, energia). Leave all filters empty to scrape every company on B3. Set withDetails to false for a fast registry-only sweep.

Input reference

FieldTypeRequiredDefaultDescription
maxCompaniesintegerno10Maximum number of companies to collect (1 to 1000000).
withDetailsbooleannotrueFetch each company detail record (industry, activity, website, all tickers with ISIN, listing segment, capital, dividends, splits, subscriptions). Two extra requests per company.
withAiSummarybooleannofalsePaid add-on. Adds an AI investor snapshot built from the B3 detail record. Requires withDetails. Requires a paid Apify plan. Billed only when a summary is produced.
searchstringno(empty)Filter companies by name (server-side, partial match), for example banco, energia, petro. Empty lists the entire registry.
segmentstringno(empty)Only return companies whose sector label contains this text (case-insensitive). Leave empty for all sectors.
marketstringno(empty)Only return companies whose market contains this text (case-insensitive), for example BOLSA, BALCAO.
activeOnlybooleannofalseOnly return companies with active listing status.
languageenumnopt-brLanguage for segment and industry labels returned by B3: pt-br or en-us.

Filters combine with logical AND.

Output reference

One dataset item per company. Types: string, integer, number, boolean, string[], object[], or null when the source value is absent.

FieldTypeDescription
companyNamestringFull legal company name.
tradingNamestringB3 trading name.
issuingCompanystringFour-letter issuer code, for example PETR.
codeCVMstringCVM registration code.
cnpjstringBrazilian company tax ID (CNPJ), or null.
statusstringListing status, for example active.
segmentstringSector label (economic sector, for example oil and gas).
marketstringMarket, for example BOVESPA NIVEL 2, BOLSA.
marketIndicatorstringB3 numeric market indicator code.
b3TypestringB3 numeric instrument type code.
typeBDRstringBDR type when applicable, else null.
listingDatestringDate first listed (DD/MM/YYYY).
mainCodestringPrimary trading code (detail only).
websitestringCompany website (detail only), or null.
industryClassificationstringB3 industry classification path (detail only).
activitystringBusiness activity description (detail only), or null.
categoryBVMFstringBVMF category description (detail only), or null.
listingSegmentCodestringGovernance listing segment code (NM, N1, N2), detail only.
listingSegmentstringGovernance listing segment name (Novo Mercado, Nivel 1, Nivel 2), detail only.
hasQuotationbooleanWhether the company has quoted instruments.
hasBDRbooleanWhether the company has BDRs.
hasEmissionsbooleanWhether the company has emissions.
lastUpdatestringB3 last-update timestamp (detail only).
tickersstring[]All ticker codes for the company.
otherCodesobject[]Ticker code plus ISIN pairs (detail only).
isinCodesstring[]All ISIN codes (detail only).
registrarCommonstringRegistrar for common shares (detail only), or null.
registrarPreferredstringRegistrar for preferred shares (detail only), or null.
stockCapitalnumberShare capital in BRL (detail only).
numberCommonSharesintegerNumber of common shares (detail only).
numberPreferredSharesintegerNumber of preferred shares (detail only).
totalNumberSharesintegerTotal shares outstanding (detail only).
commonSharesFormstringForm of common shares, for example Escritural (detail only).
preferredSharesFormstringForm of preferred shares (detail only).
roundLotintegerStandard trading lot size (detail only).
quotedSincestringDate first quoted (detail only).
cashDividendsobject[]Cash-dividend and JCP history (label, rate, related period, approval, dates, ISIN), or null.
stockDividendsobject[]Stock dividends: splits, reverse splits and bonus shares (label, factor, dates, ISIN), or null.
subscriptionsobject[]Subscription (rights) events (label, percentage, price, period, dates, ISIN), or null.
dividendCountintegerNumber of cash-dividend events found.
stockDividendCountintegerNumber of stock-dividend events found.
subscriptionCountintegerNumber of subscription events found.
hasDividendsbooleanWhether any cash dividends were found.
tickerCountintegerNumber of ticker codes.
instrumentTypestringInstrument type, for example Equity, BDR.
urlstringB3 listed-companies source URL.
observedAtstringISO 8601 timestamp of collection.
aiSummarystringPlain-English investor snapshot. Populated only when the AI summary add-on is on, else null.
errorstringnull on success. On a failed item, an item with a populated error field is written instead.

Example output record

Real record from a live run (input {"maxCompanies":10,"withDetails":true}), showing how nulls are returned for a company with no detail data:

{
"companyName": "21SHARES CARDANO ETP",
"tradingName": "21SH CARDANO",
"issuingCompany": "AADA",
"codeCVM": "50104",
"cnpj": null,
"status": "active",
"segment": "Não Classificados",
"market": "BOLSA",
"marketIndicator": "99",
"b3Type": "7",
"typeBDR": "DRE",
"listingDate": "17/07/2025",
"mainCode": "AADA39",
"website": null,
"industryClassification": "Não Classificados / Não Classificado / Não Classificados",
"activity": null,
"categoryBVMF": null,
"listingSegmentCode": "BOLSA",
"listingSegment": "Tradicional",
"hasQuotation": true,
"hasBDR": false,
"hasEmissions": false,
"lastUpdate": "07/08/2026 23:06:47",
"tickers": ["AADA39"],
"otherCodes": [{ "code": "AADA39", "isin": "BRAADABDR003" }],
"isinCodes": ["BRAADABDR003"],
"registrarCommon": null,
"registrarPreferred": "BANCO B3 S.A.",
"stockCapital": 0,
"numberCommonShares": 0,
"numberPreferredShares": 5125000,
"totalNumberShares": 5125000,
"commonSharesForm": null,
"preferredSharesForm": "Escritural",
"roundLot": 1,
"quotedSince": "30/07/2025",
"cashDividends": null,
"stockDividends": null,
"subscriptions": null,
"dividendCount": 0,
"stockDividendCount": 0,
"subscriptionCount": 0,
"hasDividends": false,
"tickerCount": 1,
"instrumentType": "BDR",
"url": "https://www.b3.com.br/en_us/products-and-services/trading/equities/listed-companies/listed-companies.htm",
"observedAt": "2026-09-04T14:40:42.149Z",
"aiSummary": null,
"error": null
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~b3-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"search":"banco","withDetails":true,"maxCompanies":25}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~b3-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"segment":"Bancos","activeOnly":true,"maxCompanies":100}'

Apify CLI:

apify call scrapers_lat/b3-scraper \
--input '{"search":"petrobras","withDetails":true}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per company record returned (result event). See the pricing tab for the current per-result price.
  • Add-ons billed separately. Detail fetching (details) and the AI summary (ai_summary) are billed only for the work they do, and only after the record is delivered. The AI summary is charged only when a summary is produced, on paid plans.
  • No charge on failure. If an item errors, the actor writes an item with an error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 records per run and cannot use the AI add-on. Upgrade for higher maxCompanies and enrichment.

FAQ and troubleshooting

Is this a B3 or Bovespa API? It gives you the same data as an API: clean JSON or CSV of every listed company on B3 (formerly Bovespa), on demand, without any official B3 account or key.

A run returned 0 records. Why? The name, sector, or market filter matched nothing. Loosen the filters or clear them to list the whole registry. Zero-result runs are not charged.

Why are website, activity, cashDividends, or the share counts null? Those come from the company detail record, which is only fetched when withDetails is on. With it off, only the registry-level fields are returned.

Why is cnpj null on some companies? ETPs, BDRs, and some foreign instruments have no Brazilian CNPJ, so the field is null. Missing source values are returned as null, never invented.

What is the difference between segment and listingSegment? segment is the economic sector (for example oil and gas). listingSegment is the corporate-governance tier on B3 (Novo Mercado, Nivel 1, Nivel 2, Tradicional), with listingSegmentCode as its short code.

Can I get the full dividend history? Yes. With withDetails on, cashDividends carries every cash-dividend and JCP event B3 lists, stockDividends carries splits and bonus shares, and subscriptions carries rights events. Counts are in dividendCount, stockDividendCount and subscriptionCount.

Does it return quotes or prices? It returns the listed-company registry (identity, capital, dividends), not intraday quotes. Ticker codes and ISIN let you join to any price feed.

Is this an official B3 tool? No. This actor is independent and has no affiliation with B3. It reads only data that is publicly available on the B3 listed-companies registry. Use it in accordance with the source terms of use.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Scraper de Tickers e Empresas Listadas na B3 (Bovespa) do Brasil

O scraper mais completo da bolsa brasileira B3 (Bovespa) na Apify. Exporte todo o cadastro de empresas listadas na B3 em JSON, CSV ou Excel limpo: razao social, cada ticker com ISIN, codigo CVM, CNPJ, segmento de listagem (Novo Mercado, Nivel 1, Nivel 2), setor, capital social, quantidade de acoes e todo o historico de dividendos. Nao precisa de conta na B3, apenas HTTP, sem API oficial da B3.

Veja um resultado real, com todos os campos que o actor retorna (os arrays cashDividends, stockDividends e subscriptions aparecem com um item cada):

{
"companyName": "PETROLEO BRASILEIRO S.A. PETROBRAS",
"tradingName": "PETROBRAS",
"issuingCompany": "PETR",
"codeCVM": "9512",
"cnpj": "33000167000101",
"status": "active",
"segment": "Exploração. Refino e Distribuição",
"market": "BOVESPA NIVEL 2",
"marketIndicator": "17",
"b3Type": "1",
"typeBDR": null,
"listingDate": "27/08/1968",
"mainCode": "PETR4",
"website": "https://www.petrobras.com.br",
"industryClassification": "Petróleo. Gás e Biocombustíveis / Petróleo. Gás e Biocombustíveis / Exploração. Refino e Distribuição",
"activity": "Pesquisa. lavra. refinação. processamento. comércio e transporte de petróleo...",
"categoryBVMF": null,
"listingSegmentCode": "N2",
"listingSegment": "Nível 2",
"hasQuotation": true,
"hasBDR": false,
"hasEmissions": false,
"lastUpdate": "02/09/2026 23:47:46",
"tickers": ["PETR3", "PETR4", "PETR-DEB62"],
"otherCodes": [
{ "code": "PETR3", "isin": "BRPETRACNOR9" },
{ "code": "PETR4", "isin": "BRPETRACNPR6" }
],
"isinCodes": ["BRPETRACNOR9", "BRPETRACNPR6"],
"registrarCommon": "BRADESCO",
"registrarPreferred": "BRADESCO",
"stockCapital": 205431960490.52,
"numberCommonShares": 7442231382,
"numberPreferredShares": 5446501379,
"totalNumberShares": 12888732761,
"commonSharesForm": "Escritural",
"preferredSharesForm": "Escritural",
"roundLot": 100,
"quotedSince": "23/06/2000",
"cashDividends": [
{
"label": "DIVIDENDO",
"rate": "0,47156696000",
"relatedTo": "Anual/2026",
"approvedOn": "06/08/2026",
"lastDatePrior": "21/08/2026",
"paymentDate": "21/12/2026",
"isinCode": "BRPETRACNOR9",
"assetIssued": "BRPETRACNOR9",
"remarks": null
}
],
"stockDividends": [
{
"label": "DESDOBRAMENTO",
"factor": "100,00000000000",
"approvedOn": "25/04/2008",
"lastDatePrior": "25/04/2008",
"isinCode": "BRPETRACNOR9",
"assetIssued": "BRPETRACNOR9",
"remarks": null
}
],
"subscriptions": [
{
"label": "SUBSCRICAO",
"percentage": "20,00000000000",
"priceUnit": "1,00000000000",
"tradingPeriod": "01/01/1900 a 01/01/1900",
"subscriptionDate": null,
"approvedOn": "15/08/1974",
"lastDatePrior": "14/11/1974",
"isinCode": "BRPETRACPPR1",
"assetIssued": "BRPETRACPPR1",
"remarks": null
}
],
"dividendCount": 24,
"stockDividendCount": 6,
"subscriptionCount": 1,
"hasDividends": true,
"tickerCount": 3,
"instrumentType": "Equity",
"url": "https://www.b3.com.br/en_us/products-and-services/trading/equities/listed-companies/listed-companies.htm",
"observedAt": "2026-09-04T02:53:24.588Z",
"aiSummary": null,
"error": null
}

Ele retorna todos os campos que o cadastro da B3 expoe para cada empresa listada, incluindo CNPJ, codigo CVM, classificacao setorial, todos os tickers com ISIN, segmento de governanca, capital social, quantidade de acoes, e todo o historico de dividendos em dinheiro, proventos em acoes (desdobramentos) e subscricoes, alem de contagens derivadas, e oferece cinco filtros para segmentar exatamente as empresas que voce precisa.

📥 Entrada · 📤 Saida · 💰 Precos · ▶️ Exemplos

Indice

O que faz

Este e um scraper da bolsa B3 e uma API de dados da Bovespa para o mercado brasileiro. Ele le o cadastro de empresas listadas na B3 (Brasil, Bolsa, Balcao) e grava um registro normalizado por empresa. Lista todo o cadastro ou filtra por nome, setor, mercado e situacao ativa.

Com withDetails ligado (o padrao) ele busca o registro de detalhe de cada empresa para adicionar classificacao setorial, atividade, site, cada ticker com seu ISIN, o segmento de governanca (Novo Mercado e niveis), capital social, quantidade de acoes, forma das acoes, escrituradores, e todo o historico de eventos corporativos: dividendos em dinheiro (dividendos e JCP), proventos em acoes (desdobramentos, grupamentos, bonificacoes) e subscricoes. Campos derivados (tickerCount, dividendCount, stockDividendCount, subscriptionCount, hasDividends, instrumentType) sao calculados sobre os dados brutos da B3. Valores ausentes na origem sao retornados como null, nunca inventados.

Um complemento de IA opcional (apenas planos pagos da Apify, desligado por padrao) escreve um resumo em linguagem simples de cada empresa a partir do proprio registro de detalhe da B3. Ele so e cobrado quando um resumo e produzido.

Para quem e

  • Fintechs e corretoras montando um universo de acoes do Brasil (tickers, ISIN, CNPJ, codigo CVM) para cadastro, triagem ou dados de referencia.
  • Times de quant e dados que precisam de uma lista limpa e legivel por maquina de cada empresa da B3 com financas e historico de dividendos.
  • Fluxos de KYB, compliance e pesquisa que ligam um ticker brasileiro a um CNPJ, codigo CVM e razao social.
  • Investidores de dividendos e renda acompanhando datas de pagamento, taxas e eventos de JCP em todo o mercado.
  • Analistas e jornalistas mapeando setores, segmentos de governanca (Novo Mercado) e eventos corporativos na bolsa de Sao Paulo.

Buscas comuns que este actor responde: B3 scraper, B3 API, dados da Bovespa, dados da bolsa brasileira, acoes B3, cotacoes B3, empresas listadas B3, ticker CNPJ B3, market data Brasil.

Como se compara

Scrapers genericos de acoes globais retornam uma cotacao, mas nao trazem os campos de identidade do cadastro brasileiro (CNPJ, codigo CVM, ISIN, segmento de governanca) nem o historico de eventos corporativos. Este actor e nativo da B3 e retorna tudo isso.

RecursoEste actorScrapers genericos de acoes globais
Cadastro completo de empresas listadas na B3Sim, todas as empresasParcial, apenas tickers populares
Razao social e nome de pregaoSimAs vezes
Todos os tickers por empresaSim, com ISINGeralmente um simbolo
Codigos ISINSimRaramente
Codigo de registro CVMSimNao
CNPJ (identificador fiscal brasileiro)SimNao
Segmento de listagem (Novo Mercado)Sim, codigo e nomeNao
Setor e classificacao setorialSimAs vezes
Capital social e acoes em circulacaoSimRaramente
Historico de dividendos (dividendos, JCP)Sim, completoRaramente
Proventos em acoes e subscricoesSimNao
Escrituradores e forma das acoesSimNao
Filtro por nome, setor, mercado, ativoSimVaria
Rotulos de segmento em portugues ou inglesSimNao
Exportar JSON, CSV, ExcelSimVaria

Inicio rapido

Abra o actor, cole isto na entrada e clique em Run. Ele retorna as primeiras 10 empresas listadas com detalhe completo.

{
"maxCompanies": 10,
"withDetails": true
}

Use search para filtrar por nome (por exemplo petrobras, banco, energia). Deixe todos os filtros vazios para raspar todas as empresas da B3. Defina withDetails como false para uma varredura rapida apenas do cadastro.

Referencia de entrada

CampoTipoObrigatorioPadraoDescricao
maxCompaniesintegernao10Numero maximo de empresas a coletar (1 a 1000000).
withDetailsbooleannaotrueBusca o registro de detalhe de cada empresa (setor, atividade, site, todos os tickers com ISIN, segmento de listagem, capital, dividendos, desdobramentos, subscricoes). Duas requisicoes extras por empresa.
withAiSummarybooleannaofalseComplemento pago. Adiciona um resumo de IA construido a partir do registro de detalhe da B3. Requer withDetails. Requer plano pago da Apify. Cobrado apenas quando um resumo e produzido.
searchstringnao(vazio)Filtra empresas por nome (no servidor, correspondencia parcial), por exemplo banco, energia, petro. Vazio lista todo o cadastro.
segmentstringnao(vazio)Retorna apenas empresas cujo rotulo de setor contem este texto (sem diferenciar maiusculas). Vazio para todos os setores.
marketstringnao(vazio)Retorna apenas empresas cujo mercado contem este texto (sem diferenciar maiusculas), por exemplo BOLSA, BALCAO.
activeOnlybooleannaofalseRetorna apenas empresas com situacao de listagem ativa.
languageenumnaopt-brIdioma dos rotulos de segmento e setor retornados pela B3: pt-br ou en-us.

Os filtros combinam com E logico.

Referencia de saida

Um item de dataset por empresa. Tipos: string, integer, number, boolean, string[], object[], ou null quando o valor de origem esta ausente.

CampoTipoDescricao
companyNamestringRazao social completa.
tradingNamestringNome de pregao na B3.
issuingCompanystringCodigo do emissor de quatro letras, por exemplo PETR.
codeCVMstringCodigo de registro na CVM.
cnpjstringCNPJ da empresa, ou null.
statusstringSituacao de listagem, por exemplo active.
segmentstringRotulo de setor economico (por exemplo petroleo e gas).
marketstringMercado, por exemplo BOVESPA NIVEL 2, BOLSA.
marketIndicatorstringCodigo numerico de indicador de mercado da B3.
b3TypestringCodigo numerico de tipo de instrumento da B3.
typeBDRstringTipo de BDR quando aplicavel, senao null.
listingDatestringData da primeira listagem (DD/MM/AAAA).
mainCodestringCodigo de negociacao principal (apenas detalhe).
websitestringSite da empresa (apenas detalhe), ou null.
industryClassificationstringCaminho de classificacao setorial da B3 (apenas detalhe).
activitystringDescricao da atividade (apenas detalhe), ou null.
categoryBVMFstringDescricao da categoria BVMF (apenas detalhe), ou null.
listingSegmentCodestringCodigo do segmento de governanca (NM, N1, N2), apenas detalhe.
listingSegmentstringNome do segmento de governanca (Novo Mercado, Nivel 1, Nivel 2), apenas detalhe.
hasQuotationbooleanSe a empresa tem instrumentos cotados.
hasBDRbooleanSe a empresa tem BDRs.
hasEmissionsbooleanSe a empresa tem emissoes.
lastUpdatestringData e hora da ultima atualizacao na B3 (apenas detalhe).
tickersstring[]Todos os codigos de ticker da empresa.
otherCodesobject[]Pares de ticker e ISIN (apenas detalhe).
isinCodesstring[]Todos os codigos ISIN (apenas detalhe).
registrarCommonstringEscriturador das acoes ordinarias (apenas detalhe), ou null.
registrarPreferredstringEscriturador das acoes preferenciais (apenas detalhe), ou null.
stockCapitalnumberCapital social em BRL (apenas detalhe).
numberCommonSharesintegerQuantidade de acoes ordinarias (apenas detalhe).
numberPreferredSharesintegerQuantidade de acoes preferenciais (apenas detalhe).
totalNumberSharesintegerTotal de acoes em circulacao (apenas detalhe).
commonSharesFormstringForma das acoes ordinarias, por exemplo Escritural (apenas detalhe).
preferredSharesFormstringForma das acoes preferenciais (apenas detalhe).
roundLotintegerTamanho do lote padrao (apenas detalhe).
quotedSincestringData da primeira cotacao (apenas detalhe).
cashDividendsobject[]Historico de dividendos e JCP (rotulo, taxa, periodo, aprovacao, datas, ISIN), ou null.
stockDividendsobject[]Proventos em acoes: desdobramentos, grupamentos e bonificacoes (rotulo, fator, datas, ISIN), ou null.
subscriptionsobject[]Eventos de subscricao (rotulo, percentual, preco, periodo, datas, ISIN), ou null.
dividendCountintegerNumero de eventos de dividendo em dinheiro encontrados.
stockDividendCountintegerNumero de eventos de provento em acoes encontrados.
subscriptionCountintegerNumero de eventos de subscricao encontrados.
hasDividendsbooleanSe algum dividendo em dinheiro foi encontrado.
tickerCountintegerNumero de codigos de ticker.
instrumentTypestringTipo de instrumento, por exemplo Equity, BDR.
urlstringURL de origem das empresas listadas na B3.
observedAtstringData e hora ISO 8601 da coleta.
aiSummarystringResumo em linguagem simples. Preenchido apenas quando o complemento de resumo de IA esta ligado, senao null.
errorstringnull em caso de sucesso. Em um item com falha, um item com o campo error preenchido e gravado.

Exemplo de registro

Registro real de uma execucao ao vivo (entrada {"maxCompanies":10,"withDetails":true}), mostrando como os nulos sao retornados para uma empresa sem dados de detalhe:

{
"companyName": "21SHARES CARDANO ETP",
"tradingName": "21SH CARDANO",
"issuingCompany": "AADA",
"codeCVM": "50104",
"cnpj": null,
"status": "active",
"segment": "Não Classificados",
"market": "BOLSA",
"marketIndicator": "99",
"b3Type": "7",
"typeBDR": "DRE",
"listingDate": "17/07/2025",
"mainCode": "AADA39",
"listingSegmentCode": "BOLSA",
"listingSegment": "Tradicional",
"tickers": ["AADA39"],
"isinCodes": ["BRAADABDR003"],
"totalNumberShares": 5125000,
"cashDividends": null,
"stockDividends": null,
"subscriptions": null,
"dividendCount": 0,
"instrumentType": "BDR",
"observedAt": "2026-09-04T14:40:42.149Z",
"error": null
}

Executar via API e CLI

Inicie uma execucao e espere terminar, depois leia o dataset. Substitua <TOKEN> pelo seu token da API Apify.

Execute de forma sincrona e obtenha os itens do dataset em uma chamada:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~b3-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"search":"banco","withDetails":true,"maxCompanies":25}'

Inicie uma execucao de forma assincrona:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~b3-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"segment":"Bancos","activeOnly":true,"maxCompanies":100}'

CLI da Apify:

apify call scrapers_lat/b3-scraper \
--input '{"search":"petrobras","withDetails":true}'

Obter resultados

Cada execucao grava em um dataset. Obtenha os itens em JSON, CSV ou Excel mudando format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginar datasets grandes
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> e retornado como defaultDatasetId no objeto da execucao. Use offset e limit para paginar grandes conjuntos de resultados. clean=true remove campos vazios e internos.

Cobranca e limites

  • Pagamento por resultado. Voce e cobrado por registro de empresa retornado (evento result). Veja a aba de precos para o preco por resultado atual.
  • Complementos cobrados a parte. A busca de detalhe (details) e o resumo de IA (ai_summary) sao cobrados apenas pelo trabalho que realizam, e somente depois que o registro e entregue. O resumo de IA e cobrado apenas quando um resumo e produzido, em planos pagos.
  • Sem cobranca em caso de falha. Se um item da erro, o actor grava um item com o campo error e nao cobra por ele. Execucoes vazias nao custam nada.
  • Limite de gasto respeitado. Defina maxTotalChargeUsd na execucao; ao ser atingido, o actor para de emitir e cobrar mais resultados cobraveis.
  • Planos gratuitos da Apify sao limitados a 10 registros por execucao e nao podem usar o complemento de IA. Faca upgrade para maxCompanies maior e enriquecimento.

Perguntas frequentes

Isto e uma API da B3 ou Bovespa? Ele entrega os mesmos dados de uma API: JSON ou CSV limpo de cada empresa listada na B3 (antiga Bovespa), sob demanda, sem nenhuma conta ou chave oficial da B3.

Uma execucao retornou 0 registros. Por que? O filtro de nome, setor ou mercado nao encontrou nada. Afrouxe os filtros ou limpe-os para listar todo o cadastro. Execucoes com zero resultados nao sao cobradas.

Por que website, activity, cashDividends ou as quantidades de acoes estao nulos? Eles vem do registro de detalhe da empresa, que so e buscado quando withDetails esta ligado. Com ele desligado, apenas os campos do cadastro sao retornados.

Por que cnpj esta nulo em algumas empresas? ETPs, BDRs e alguns instrumentos estrangeiros nao tem CNPJ brasileiro, entao o campo e null. Valores ausentes na origem sao retornados como null, nunca inventados.

Qual a diferenca entre segment e listingSegment? segment e o setor economico (por exemplo petroleo e gas). listingSegment e o nivel de governanca corporativa na B3 (Novo Mercado, Nivel 1, Nivel 2, Tradicional), com listingSegmentCode como o codigo curto.

Posso obter todo o historico de dividendos? Sim. Com withDetails ligado, cashDividends traz cada evento de dividendo e JCP que a B3 lista, stockDividends traz desdobramentos e bonificacoes, e subscriptions traz eventos de subscricao. As contagens estao em dividendCount, stockDividendCount e subscriptionCount.

Ele retorna cotacoes ou precos? Ele retorna o cadastro de empresas listadas (identidade, capital, dividendos), nao cotacoes intraday. Os codigos de ticker e ISIN permitem cruzar com qualquer fonte de precos.

Esta e uma ferramenta oficial da B3? Nao. Este actor e independente e nao tem afiliacao com a B3. Ele le apenas dados publicamente disponiveis no cadastro de empresas listadas da B3. Use de acordo com os termos de uso da fonte.

Mais scrapers em scrapers.lat

Construido e mantido pela scrapers.lat, onde publicamos scrapers para plataformas publicas dos EUA e da America Latina: cadastros de empresas, dados governamentais, financas, e-commerce e mais. Explore o catalogo ou solicite um scraper sob medida em scrapers.lat.


Ferramenta independente, sem afiliacao com a B3. Acessa apenas dados publicamente disponiveis do cadastro de empresas listadas da B3. Use de acordo com os termos de uso da fonte.