SEC XBRL Company Facts Scraper avatar

SEC XBRL Company Facts Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
SEC XBRL Company Facts Scraper

SEC XBRL Company Facts Scraper

Pull structured financial facts from SEC EDGAR by ticker or CIK number. Each row carries the company name, GAAP concept, reported value, unit, fiscal year and period, form type, and filing date. Useful for building fundamentals histories, equity research, and audit checks.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

ParseForge Banner

📊 SEC XBRL Company Facts Scraper

🚀 Pull structured financial facts straight from SEC EDGAR in seconds. One run on Apple returned 1,562 fact observations across 8 core concepts, each tagged with fiscal year, period, form, and filing date.

🕒 Last updated: 2026-06-04 · 📊 16 fields per record · keyless SEC source · 10,000+ U.S. public companies covered

The SEC XBRL Company Facts Scraper reads the official structured financial data the U.S. Securities and Exchange Commission publishes for every public company that files in XBRL. Give it a list of tickers or CIK numbers, pick the financial concepts you care about, and it returns one clean row per reported fact observation. Each row carries the company name, the us-gaap concept, the reported value and unit, the fiscal year and period, the form type (10-K or 10-Q), and the exact date the figure was filed.

Coverage spans every company with XBRL filings in SEC EDGAR, more than 10,000 active tickers mapped to their CIK. Tickers are resolved to CIK automatically using the SEC company ticker map, so you can mix symbols like AAPL and MSFT with raw CIK numbers in the same run. Results are sorted newest first by filing date.

🎯 Target Audience💡 Primary Use Cases
Financial analysts and equity researchersBuilding company financial time series
Fintech and data engineering teamsFeeding fundamentals into models and dashboards
Accountants and auditorsCross-checking reported figures by filing
Investors and quantsBacktesting on revenue, net income, and EPS

📋 What the SEC XBRL Company Facts Scraper does

This Actor calls the SEC EDGAR XBRL company facts endpoint for each company you request, then flattens the nested taxonomy into a tidy row per observation. It handles the mandatory SEC contact User-Agent header on every request, resolves tickers to CIK, filters by concept and form, and emits records ordered by filing date with the most recent figures first.

  • Accepts tickers (AAPL) or CIK numbers (320193 or 0000320193).
  • Pulls all reported us-gaap fact observations for each company.
  • Filters to a default set of key metrics or any concepts you name.
  • Returns value, unit, fiscal year, fiscal period, form, and filing date per fact.

🎬 Full Demo (🚧 Coming soon)

⚙️ Input

FieldTypeRequiredDescription
companiesarrayyesTickers or CIK numbers to pull facts for. Prefilled with AAPL.
conceptsarraynous-gaap concept names. Defaults to a key set of 8 metrics.
formsarraynoFilter by form type, for example 10-K or 10-Q. Empty means all.
maxItemsintegernoFree users limited to 10 items. Paid users up to 1,000,000.

Example input pulling Apple with the default concept set:

{
"companies": ["AAPL"],
"maxItems": 50
}

Example input pulling two companies, only annual reports, for revenue and net income:

{
"companies": ["MSFT", "320193"],
"concepts": ["Revenues", "NetIncomeLoss"],
"forms": ["10-K"],
"maxItems": 200
}

⚠️ Good to Know: SEC EDGAR requires a descriptive User-Agent with contact info on every request. This Actor sends one automatically, so you never get blocked for a missing header. The frame field is present only on observations the SEC has assigned a reporting frame, so it is populated on some rows and empty on others by design.

📊 Output

FieldDescription
🆔 cik10-digit zero-padded SEC CIK, prefixed CIK
🏢 entityNameRegistered company name
📚 taxonomyReporting taxonomy (us-gaap)
📐 conceptXBRL concept name
🏷 labelHuman readable concept label
📏 unitReporting unit (USD, USD/shares)
💲 valueReported numeric value
📅 fiscalYearFiscal year of the observation
🗓 fiscalPeriodFiscal period (FY, Q1, Q2, Q3)
📄 formSEC form type (10-K, 10-Q)
🗂 filedDate the figure was filed
⏱ periodStartStart of the reporting period (duration facts)
⏳ periodEndEnd of the reporting period
🖼 frameSEC reporting frame when assigned
🔖 accessionFiling accession number
🕒 scrapedAtTimestamp the record was collected

Three real sample records from a live run on AAPL:

{
"cik": "CIK0000320193",
"entityName": "Apple Inc.",
"taxonomy": "us-gaap",
"concept": "Assets",
"label": "Assets",
"unit": "USD",
"value": 371082000000,
"fiscalYear": 2026,
"fiscalPeriod": "Q2",
"form": "10-Q",
"filed": "2026-05-01",
"periodStart": null,
"periodEnd": "2026-03-28",
"frame": "CY2026Q1I",
"accession": "0000320193-26-000013",
"scrapedAt": "2026-06-04T20:05:11.029Z",
"error": null
}
{
"cik": "CIK0000320193",
"entityName": "Apple Inc.",
"taxonomy": "us-gaap",
"concept": "CashAndCashEquivalentsAtCarryingValue",
"label": "Cash and Cash Equivalents, at Carrying Value",
"unit": "USD",
"value": 45572000000,
"fiscalYear": 2026,
"fiscalPeriod": "Q2",
"form": "10-Q",
"filed": "2026-05-01",
"periodStart": null,
"periodEnd": "2026-03-28",
"frame": "CY2026Q1I",
"accession": "0000320193-26-000013",
"scrapedAt": "2026-06-04T20:05:11.030Z",
"error": null
}
{
"cik": "CIK0000320193",
"entityName": "Apple Inc.",
"taxonomy": "us-gaap",
"concept": "EarningsPerShareBasic",
"label": "Earnings Per Share, Basic",
"unit": "USD/shares",
"value": 1.65,
"fiscalYear": 2026,
"fiscalPeriod": "Q2",
"form": "10-Q",
"filed": "2026-05-01",
"periodStart": "2025-12-28",
"periodEnd": "2026-03-28",
"frame": "CY2025Q1",
"accession": "0000320193-26-000013",
"scrapedAt": "2026-06-04T20:05:11.030Z",
"error": null
}

✨ Why choose this Actor

  • Reads the official SEC source, not a scraped or resold copy.
  • Sends the mandatory SEC User-Agent on every request, so no 403 surprises.
  • Resolves tickers to CIK for you using the live SEC ticker map.
  • One flat row per fact observation, ready for analysis.
  • Newest filings first, so the latest figures sit at the top.

📈 How it compares to alternatives

ApproachSetup effortOfficial sourcePer-fact rows
This ActorPaste tickers and runYes, SEC EDGAR XBRLYes
Manual EDGAR browsingHigh, file by fileYesNo, you read filings
Generic finance APIsSign up and key wranglingOften resold dataVaries

🚀 How to use

  1. Create a free Apify account using this sign-up link.
  2. Open the SEC XBRL Company Facts Scraper in the Apify Console.
  3. Enter one or more tickers or CIK numbers in companies.
  4. Optionally narrow the run with concepts and forms, and set maxItems.
  5. Click Start, then download your results when the run finishes.

💼 Business use cases

Equity research

NeedHow this helps
Build a revenue historyPull Revenues and RevenueFromContractWithCustomerExcludingAssessedTax across years
Track profitabilityFollow NetIncomeLoss and EarningsPerShareBasic by quarter

Risk and credit

NeedHow this helps
Assess balance strengthCompare Assets, Liabilities, and StockholdersEquity
Monitor liquidityTrack CashAndCashEquivalentsAtCarryingValue over time

Fintech products

NeedHow this helps
Power a fundamentals widgetFeed clean per-fact rows into your app
Map symbols to filingsUse the built-in ticker to CIK resolution

Audit and compliance

NeedHow this helps
Verify a reported figureTrace value, form, and accession back to the filing
Reconcile periodsUse fiscalYear, fiscalPeriod, and filed date together

🔌 Automating SEC XBRL Company Facts Scraper

Connect the Actor to your stack so fresh financial facts flow where you need them.

  • Make and Zapier: trigger a run on a schedule and route results onward.
  • Slack: post a summary of new filings to a channel.
  • Airbyte: load the dataset into your warehouse.
  • GitHub and Google Drive: archive run outputs automatically.

🌟 Beyond business use cases

  • Research: study reporting patterns across sectors and years.
  • Personal: track the fundamentals of companies you follow.
  • Non-profit: support transparency and financial literacy projects.
  • Experimentation: prototype models on clean, official fundamentals.

🤖 Ask an AI assistant

Paste a dataset row into your favorite assistant and ask it to interpret the figures.

❓ Frequently Asked Questions

Q: Do I need an SEC API key? No. SEC EDGAR XBRL data is keyless. The Actor sends the required contact User-Agent header for you.

Q: Can I use tickers instead of CIK numbers? Yes. Tickers are resolved to CIK automatically using the official SEC company ticker map. You can mix tickers and CIK numbers in one run.

Q: What concepts are pulled by default? Revenues, RevenueFromContractWithCustomerExcludingAssessedTax, NetIncomeLoss, Assets, Liabilities, StockholdersEquity, CashAndCashEquivalentsAtCarryingValue, and EarningsPerShareBasic.

Q: Can I request other concepts? Yes. Put any us-gaap concept names in the concepts field and only those are returned.

Q: How are results ordered? Newest first by filing date, then by fiscal year.

Q: Why is the frame field empty on some rows? The SEC assigns a reporting frame only to certain observations. Rows without an assigned frame leave it empty by design.

Q: Why is periodStart empty sometimes? Instant or point in time facts, such as a balance sheet figure, have an end date but no start date.

Q: Can I filter by form type? Yes. Use the forms field, for example 10-K for annual reports or 10-Q for quarterly reports.

Q: How many companies can I include? As many as you like. Each company is fetched in turn, and the overall maxItems cap applies across all of them.

Q: What does a value represent? The reported numeric figure for that concept in the given unit, fiscal year, and period.

Q: Is the data official? Yes. It comes directly from the SEC EDGAR XBRL company facts endpoint.

Q: What is the difference between fiscalYear and the filed date? fiscalYear is the company reporting year the figure belongs to. filed is the calendar date the filing was submitted to the SEC.

🔌 Integrate with any app

Every run produces a structured dataset you can pull through the Apify API or connect to thousands of apps through the integrations above. Schedule runs to keep a rolling history of financial facts.

💡 Pro Tip: browse the complete ParseForge collection.

🆘 Need Help? Open our contact form

⚠️ Disclaimer: This is an independent tool, not affiliated with or endorsed by the U.S. Securities and Exchange Commission. Only publicly available data is collected.