SEC EDGAR Financial Data Scraper avatar

SEC EDGAR Financial Data Scraper

Pricing

Pay per usage

Go to Apify Store
SEC EDGAR Financial Data Scraper

SEC EDGAR Financial Data Scraper

Scrape SEC EDGAR filings and XBRL financial data for public companies.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Kelvin

Kelvin

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

SEC EDGAR Financial Data Scraper (Apify Actor)

Scrape SEC EDGAR filings and XBRL financial data for public companies. This actor fetches recent filings (10-K, 10-Q, 8-K, etc.), pulls key financial metrics from XBRL, and returns clean JSON datasets.

SEC requirement: You must provide a valid email in the User-Agent header. Set userAgentEmail in the input.

Features

  • Search companies by ticker or CIK
  • Fetch recent filings with document links
  • Extract XBRL financial metrics (Revenue, Net Income, Assets, Liabilities, etc.)
  • Retrieve full company facts (optional)
  • Compare metrics across companies
  • Clean JSON output ready for analytics

Input

Example input:

{
"tickers": ["AAPL", "MSFT"],
"filingTypes": ["10-K", "10-Q", "8-K"],
"extractFinancials": true,
"financialMetrics": ["Revenue", "NetIncome", "Assets", "Liabilities"],
"dateRange": { "from": "2021-01-01", "to": "2024-12-31" },
"maxFilingsPerCompany": 10,
"compareCompanies": true,
"userAgentEmail": "you@domain.com"
}

Input Fields

  • tickers (array): List of ticker symbols.
  • ciks (array): List of zero-padded CIKs (10 digits).
  • filingTypes (array): Forms to include (default: 10-K, 10-Q, 8-K).
  • extractFinancials (boolean): If true, fetch XBRL facts.
  • financialMetrics (array): Metrics to extract (maps to US-GAAP tags).
  • dateRange (object): from and to dates in YYYY-MM-DD.
  • maxFilingsPerCompany (number): Maximum number of filings per company.
  • compareCompanies (boolean): If true, adds comparison objects.
  • userAgentEmail (string): Contact email required by SEC.

Output

Each dataset item is either:

  • type: "company" → full company info, filings, and financials
  • type: "comparisons" → comparison of metrics across companies

Example output (simplified):

{
"type": "company",
"cik": "0000320193",
"ticker": "AAPL",
"name": "Apple Inc.",
"filings": [
{
"form": "10-K",
"filingDate": "2023-10-27",
"documentUrl": "https://www.sec.gov/Archives/.../a10k.htm"
}
],
"financials": {
"Revenue": {
"unit": "USD",
"latestValue": 383285000000,
"latestPeriod": "2023-09-30"
}
}
}

Local Development

npm install
npm run dev

Run locally with Apify:

$apify run

Notes

  • Rate limiting is enforced (~8 req/s) to comply with SEC policy.
  • For custom metrics, pass US-GAAP tag names directly in financialMetrics.
  • Company facts can be large. Use extractFinancials: false if you only need filings.

License

MIT