SEC EDGAR AI Scraper - LLM-ready filings, RAG chunks & signals avatar

SEC EDGAR AI Scraper - LLM-ready filings, RAG chunks & signals

Pricing

Pay per event + usage

Go to Apify Store
SEC EDGAR AI Scraper - LLM-ready filings, RAG chunks & signals

SEC EDGAR AI Scraper - LLM-ready filings, RAG chunks & signals

SEC EDGAR as LLM-ready data: section-aware Markdown, RAG chunks with stable IDs + SHA-256, XBRL facts, Form 4/13F, section diff, scored signals. Multi-event PPE. Pairs with sec-edgar-mcp.

Pricing

Pay per event + usage

Rating

0.0

(0)

Developer

Domin Vo

Domin Vo

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

SEC EDGAR AI Scraper turns SEC filings into clean JSON, CSV, Excel, NDJSON, or Markdown. Use it to scrape SEC EDGAR data from official SEC sources without managing CIK lookup, rate limits, filing downloads, XBRL parsing, or text extraction yourself.

This Actor works like a simple SEC filings API on Apify. Pick a mode, enter one or more tickers, ciks, companies, or domains, then start the run. Results are saved to an Apify dataset or to a file in the key-value store.

What can you scrape from SEC EDGAR?

NeedMode to start withWhat you get
Company filing listcompany_filingsRecent filings for a company
Annual reportsform_10k_filings10-K filing records
Quarterly reportsform_10q_filings10-Q filing records
Current reportsform_8k_filings8-K items with severity tags
Insider tradesform_4_filingsForm 4 transaction rows
Fund holdingsform_13f_filings13F holdings by CUSIP
Company factsxbrl_factsXBRL fact rows
Financial statementsxbrl_statementsNormalized statement rows
Filing text for AIfiling_markdownSection-aware Markdown
Text chunks for AI searchfiling_chunksStable filing chunks
Year-over-year changessection_diffParagraph-level filing changes
Enforcement recordslitigation_releasesSEC release records

Why use this SEC EDGAR scraper?

  • One Actor for many SEC workflows: filings, XBRL facts, insider trades, 13F holdings, proxy data, enforcement records, and AI-ready text.
  • Clean output: every row includes sha256, mode, cik, accession, filing_date, and payload.
  • Easy automation: run from the Apify Console, API, schedules, webhooks, or integrations.
  • Built for repeat work: use the same input daily or weekly and send results to your app, spreadsheet, database, or AI workflow.

How to scrape SEC EDGAR data

  1. Open the Actor on Apify and click Try for free.
  2. Choose a mode, such as form_4_filings or company_filings.
  3. Enter tickers, ciks, companies, or domains.
  4. Optional: add date_from, date_to, forms, or mode-specific filters.
  5. Pick output_format: json, ndjson, csv, xlsx, or markdown.
  6. Click Save & Start and download results from the Output tab.

For the easiest first test, keep the default mode as cik_ticker_map and use the prefilled ticker MDB.

Input example

{
"mode": "form_4_filings",
"tickers": ["MSFT"],
"date_from": "2026-01-01",
"transaction_codes": ["S", "P"],
"output_format": "json"
}

Example for AI-ready filing text:

{
"mode": "filing_markdown",
"tickers": ["AAPL"],
"form": "10-K",
"date_from": "2025-01-01",
"output_format": "markdown"
}

Output example

{
"sha256": "9f1c2a...",
"mode": "form_4_filings",
"cik": "0000789019",
"accession": "0001062993-26-001234",
"filing_date": "2026-02-14",
"payload": {
"issuer": "Microsoft Corp",
"reporter": "Example Officer",
"transaction_date": "2026-02-12",
"transaction_code": "S",
"shares": 1200,
"price_per_share": 415.2
}
}

You can download SEC EDGAR data as JSON, CSV, Excel, NDJSON, or Markdown. JSON streams to the Apify dataset. Other formats are saved as files in the key-value store.

SEC EDGAR data fields

FieldMeaning
sha256Stable fingerprint for change checks
modeThe mode that created the row
cikSEC company identifier
accessionSEC filing accession number
filing_dateFiling date, when available
payloadThe mode-specific data

How much does it cost to scrape SEC EDGAR?

This Actor uses pay-per-event pricing. The first 20 result rows in a run are not billed by result-row events. Apify start events may still apply.

Common row prices:

Data typeExample modesPrice
CIK / ticker lookupcik_ticker_map$0.0001 per row
Filing index rowcompany_filings, filings_search$0.0004 per row
Insider tradeform_4_filings$0.0005 per row
Holding rowform_13f_filings$0.0005 per row
XBRL factxbrl_facts$0.0002 per row
Filing recordform_10k_filings, form_8k_filings$0.002 per row
Filing Markdownfiling_markdown$0.003 per row
AI filing analysisai_summary, ai_importance$0.04 per row

For full pricing, check the Pricing tab on the Actor page.

Tips for best results

  • Start with mid-size companies such as MDB, NET, or SHOP when testing.
  • Use date_from and date_to to keep runs small.
  • Use output_format: "markdown" when you want text for ChatGPT, Claude, or a search index.
  • Large 10-K filings can produce many rows in text-heavy modes, so test one ticker before running a long list.
  • For scheduled runs, reuse the same input so row fingerprints can help detect changes.

Use from Python

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("dominvo/sec-edgar-ai-scraper").call(run_input={
"mode": "company_filings",
"tickers": ["MDB"],
"date_from": "2026-01-01",
})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row["filing_date"], row["payload"])

Other Actors by this creator

Need UK company data too? Try UK Companies House API Scraper for company profiles, PSC ownership, officers, filings, charges, insolvency, and accounts.

FAQ and support

Is this an official SEC tool?

No. This is an independent Actor that reads public SEC EDGAR data from official SEC sources.

Do I need a SEC API key?

No. SEC EDGAR does not require an API key for these public endpoints.

Can I schedule SEC filing monitoring?

Yes. Use Apify schedules to run the same input daily, weekly, or monthly.

SEC EDGAR data is public U.S. government data. You are responsible for how you use the results.

Where do I get help?

Open the Issues tab on the Actor page for bugs, missing modes, or feature requests.