SEC Filing Search — Full-Text EDGAR Scraper
Pricing
from $3.00 / 1,000 filings
SEC Filing Search — Full-Text EDGAR Scraper
Search the full text of every SEC EDGAR filing since 2001 and export the matches: company, tickers, CIK, form type, filing and period dates, 8-K item codes, SIC code, state, accession number and direct document links. Filter by form, date range or CIK. No API key.
Pricing
from $3.00 / 1,000 filings
Rating
0.0
(0)
Developer
Hichem Ben Moussa
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
SEC Filing Search — Full-Text EDGAR Filings Scraper
Search the full text of every SEC EDGAR filing since 2001 and export the matches as structured data — company, tickers, CIK, form type, filing and period dates, 8-K items, SIC code, state of incorporation and a direct link to the document itself.
This is the search behind EDGAR's full-text interface, turned into a dataset. Ask "which companies disclosed a material weakness in their last 10-K?" and get a table instead of a web page.
No API key required.
What you get
| Field | Description |
|---|---|
company | Filer name, parsed clean |
tickers | Ticker symbols, e.g. ["FITB","FITBI"] |
cik, cikPadded | SEC company ID, both trimmed and zero-padded |
allFilers | Every filer on a multi-filer submission |
form, rootForm | Exact form and its base type, e.g. 10-K/A → 10-K |
fileType, fileDescription | Which document inside the filing matched |
filedAt | Filing date |
periodEnding | Fiscal period the filing covers |
items | 8-K item codes, e.g. ["5.02"] for an executive change |
sic | Industry classification code |
businessState, businessLocation, incorporatedState | Where the company operates and is incorporated |
accessionNumber, fileNumber | SEC identifiers |
relevanceScore | EDGAR's own match score |
documentUrl | Direct link to the matching document |
filingIndexUrl | The full filing's index page |
Example input
{"query": "material weakness","exactPhrase": true,"forms": "10-K","startDate": "2026-01-01","maxFilings": 200}
Monitor a theme across 8-Ks:
{"query": "artificial intelligence","forms": "8-K","startDate": "2026-01-01","endDate": "2026-06-30"}
Watch specific companies:
{ "query": "going concern", "ciks": ["320193", "1318605"] }
Example output
{"company": "FIFTH THIRD BANCORP","tickers": ["FITB", "FITBI", "FITBO", "FITBP"],"cik": "35527","form": "10-K","filedAt": "2022-02-25","periodEnding": "2021-12-31","businessState": "OH","businessLocation": "Cincinnati, OH","sic": "6022","accessionNumber": "0000035527-22-000119","documentUrl": "https://www.sec.gov/Archives/edgar/data/35527/000003552722000119/fitbannualreport202110-k.pdf"}
Who uses this
- Investment research — find every company that used a phrase before it became consensus: "supply chain constraints", "AI capex", "stablecoin"
- Short sellers and credit analysts —
going concern,material weakness,restatementandcovenant breachas a screen, not a hunch - Corporate lawyers — precedent language across real filings, and who filed it
- Risk and compliance — monitor a competitor's or supplier's 8-K items as they are filed
- Academics and data teams — build a labelled filing corpus with document URLs to fetch
- M&A and BD teams — 8-K item codes surface executive changes, acquisitions and material agreements the day they publish
A common setup is a daily run with startDate set to yesterday and a watchlist phrase, feeding a webhook.
Two limits, stated plainly
- Full-text search starts in 2001. Older filings exist in EDGAR but are not in the full-text index, so a phrase search cannot reach them. For pre-2001 work you need the filing archives directly, not this search.
- EDGAR serves at most 10,000 results per query. It is an OpenSearch index with a hard result window. When your query matches more, the actor reports the true total and tells you it can only retrieve the first 10,000 — the fix is to narrow by form type or split the date range into chunks and run each.
There is a third quirk worth knowing if you ever call this API yourself: when you exceed the result window, EDGAR replies with HTTP 200 and an error body rather than an error status. A naive client reads that as success and silently returns nothing. This actor detects it and says what happened.
The contact e-mail field
The SEC requires automated clients to identify themselves with a contact address and throttles or blocks generic agents. The actor always sends one, but putting your own e-mail in the Contact e-mail field identifies your runs properly and makes them more reliable — recommended for anything beyond a quick test.
Pricing
Pay per result. Each matching filing document counts as one result.
Notes
- One filing can match on several documents; each matching document is its own row, identified by
fileName, withaccessionNumbershared. Deduplicate onaccessionNumberif you want one row per filing. exactPhrasewraps your query in quotes, which is how EDGAR distinguishes a phrase from loose terms. Turn it off for broader recall.- This is an unofficial actor and is not affiliated with the SEC.