SEC EDGAR Full-Text Filing Search Scraper
Pricing
from $9.23 / 1,000 results
SEC EDGAR Full-Text Filing Search Scraper
Search the full text of SEC EDGAR filings by keyword or phrase since 2001. Get every matching filing with entity name, ticker, CIK, form type, filing date, accession number and a direct sec.gov link. Export to JSON, CSV or Excel.
Pricing
from $9.23 / 1,000 results
Rating
5.0
(2)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 hours ago
Last modified
Categories
Share
SEC EDGAR Full-Text Filing Search Scraper
Here is one real result, with every field the actor returns:
{"entityName": "Artificial Intelligence Technology Solutions Inc.","ticker": "AITX","cik": "0001498148","form": "10-K/A","rootForm": "10-K","filedAt": "2022-05-31","periodEnding": "2022-02-28","accessionNo": "0001161697-22-000273","fileType": "10-K/A","fileName": "form_10-ka.htm","score": 18.74803,"sic": "3714","location": "Ferndale, MI","incState": "NV","fileDescription": "FORM 10-K/A AMENDMENT NO. 1 TO ANNUAL REPORT FOR 02-28-2022","fileNumber": "000-55079","items": [],"filmNumber": "22982316","bizState": "MI","entityNames": ["Artificial Intelligence Technology Solutions Inc."],"url": "https://www.sec.gov/Archives/edgar/data/1498148/000116169722000273/form_10-ka.htm","filingUrl": "https://www.sec.gov/Archives/edgar/data/1498148/000116169722000273/0001161697-22-000273-index.htm","observedAt": "2026-08-10T14:18:12.083Z","error": null}
The most complete SEC EDGAR full-text search scraper available. It returns every field the EDGAR full-text index exposes for each matching filing, including the exact matched document, its description, form items, file and film numbers, co-registrants, and direct links to both the document and its filing index.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
The actor runs a full-text search across SEC EDGAR filings (2001 onward), applies your form-type and date filters, paginates through the matching hits, and writes one normalized record per filing to the run's dataset. Each record identifies the filer (name, ticker, CIK, industry, location, state of incorporation) and the exact document that matched, with its human-readable description, form items, SEC file and film numbers, all named registrants on the filing, and direct links to the matched document and the filing index.
Wrap a phrase in double quotes for an exact match, for example "artificial intelligence". The SEC index returns at most 10,000 filings per query.
Quickstart
Open the actor, paste this into the input, and press Run. It returns 10 recent 10-K filings that mention artificial intelligence.
{"maxFilings": 10,"query": "artificial intelligence","forms": ["10-K"]}
Leave forms empty to search all form types. Add dateFrom and dateTo to restrict the filing date range.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | yes | artificial intelligence | Words or phrase to search for in filing text. Wrap a phrase in double quotes for an exact match, for example "artificial intelligence". |
forms | string[] | no | ["10-K"] | Limit results to these form types, for example 10-K, 8-K, S-1. Leave empty to search all forms. |
dateFrom | string | no | (empty) | Only return filings filed on or after this date (YYYY-MM-DD). |
dateTo | string | no | (empty) | Only return filings filed on or before this date (YYYY-MM-DD). |
maxFilings | integer | no | 10 | Maximum number of matching filings to collect. The index returns at most 10000 per query. |
Filters combine with logical AND.
Output reference
One dataset item per matching filing. Types: string, number, string[], or null when the source value is absent.
| Field | Type | Description |
|---|---|---|
entityName | string | Primary filer name. |
ticker | string | Ticker resolved from the filer, or null. |
cik | string | Zero-padded 10-digit SEC CIK. |
form | string | Filing form type, for example 10-K/A. |
rootForm | string | Base form type, for example 10-K. |
filedAt | string | Filing date (YYYY-MM-DD). |
periodEnding | string | Period the filing reports on, or null. |
accessionNo | string | SEC accession number. |
fileType | string | Document file type. |
fileName | string | File name of the matched document. |
score | number | EDGAR relevance score for the match. |
sic | string | SIC industry code of the filer, or null. |
location | string | Business location, for example Ferndale, MI. |
incState | string | State or country of incorporation, or null. |
fileDescription | string | Human label of the matched document, for example FORM 10-K/A AMENDMENT NO. 1 TO ANNUAL REPORT. |
fileNumber | string | SEC file number of the registrant, or null. |
items | string[] | Form item codes (mainly 8-K / N-CSR items, for example 2.02). Empty when none. |
filmNumber | string | SEC film (accession scan) number, or null. |
bizState | string | Business-address state code, or null. |
entityNames | string[] | All named filers on the filing (co-registrants, funds). |
url | string | Direct SEC EDGAR link to the matched document. |
filingUrl | string | Direct SEC EDGAR link to the filing index. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
error | string | null on success. On a failed run a single item with a populated error field is written instead. |
Example output record
Real record from a live run (input {"maxFilings": 10, "query": "artificial intelligence", "forms": ["10-K"]}):
{"entityName": "Artificial Intelligence Technology Solutions Inc.","ticker": "AITX","cik": "0001498148","form": "10-K/A","rootForm": "10-K","filedAt": "2022-05-31","periodEnding": "2022-02-28","accessionNo": "0001161697-22-000273","fileType": "10-K/A","fileName": "form_10-ka.htm","score": 18.74803,"sic": "3714","location": "Ferndale, MI","incState": "NV","fileDescription": "FORM 10-K/A AMENDMENT NO. 1 TO ANNUAL REPORT FOR 02-28-2022","fileNumber": "000-55079","items": [],"filmNumber": "22982316","bizState": "MI","entityNames": ["Artificial Intelligence Technology Solutions Inc."],"url": "https://www.sec.gov/Archives/edgar/data/1498148/000116169722000273/form_10-ka.htm","filingUrl": "https://www.sec.gov/Archives/edgar/data/1498148/000116169722000273/0001161697-22-000273-index.htm","observedAt": "2026-08-10T14:18:12.083Z","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~sec-edgar-fulltext-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"query":"\"artificial intelligence\"","forms":["10-K","8-K"],"maxFilings":50}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~sec-edgar-fulltext-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"query":"cybersecurity incident","dateFrom":"2024-01-01","dateTo":"2024-12-31","maxFilings":500}'
Apify CLI:
apify call scrapers_lat/sec-edgar-fulltext-scraper \--input '{"query":"artificial intelligence","forms":["10-K"],"maxFilings":10}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "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. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per filing returned (
resultevent). See the pricing tab for the current per-result price. - No charge on failure. If a run errors, the actor writes a single item with a populated
errorfield and does not charge for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results. - Free Apify plans are capped at 10 records per run. Upgrade for higher
maxFilings. - Source window ceiling. The EDGAR full-text index returns at most 10,000 filings per query and covers filings from 2001 onward. For larger pulls, split the work with narrower date ranges.
FAQ and troubleshooting
A run returned 0 filings. Why?
The query and filters matched nothing. Loosen the phrase, remove the forms filter, or widen the date range. Zero-result runs are not charged.
How do I do an exact-phrase search?
Wrap the phrase in double quotes inside query, for example "artificial intelligence". Without quotes the words are matched individually.
What does the matched document look like?
fileName, fileType, and fileDescription identify the exact document that matched, and url links straight to it. filingUrl links to the full filing index.
How far back does the search go? The SEC full-text index covers filings from 2001 onward.
Is this an official SEC tool? No. This actor is independent and has no affiliation with the SEC. It reads only data that is publicly available through the SEC EDGAR full-text search index.
Related scrapers
- SEC EDGAR Financials Scraper: company revenue, assets, and XBRL financials.
- SEC 13F Institutional Holdings Scraper: institutional equity positions.
- SEC Form 4 Insider Trades Scraper: insider buys and sells.
- SEC Form D Private Placements Scraper: private securities offerings.
- Federal Register Document Scraper: US Federal Register documents.
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.
Independent tool, not affiliated with the SEC or EDGAR. Accesses only publicly available SEC EDGAR full-text search data.
