SEC EDGAR Filings Scraper [$2.5/1K💰] | 10-K | 8-K | XBRL
Pricing
from $2.40 / 1,000 results
SEC EDGAR Filings Scraper [$2.5/1K💰] | 10-K | 8-K | XBRL
Extract SEC EDGAR filing metadata for any US public company by ticker or CIK — form types, dates, accession numbers, XBRL flags and direct links to documents and filing indexes. Built for investment research, due diligence, filing monitoring and compliance. $2.50 per 1,000 filings.
Pricing
from $2.40 / 1,000 results
Rating
0.0
(0)
Developer
Ahmed Jasarevic
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
SEC EDGAR Filings Scraper
Extract SEC EDGAR filing metadata for any US public company by ticker or CIK — form types, dates, accession numbers and direct links to every filing document and index page — into a clean dataset, paced to SEC's fair-access rules.
Built for:
- Investment research, screening and due-diligence workflows
- Building a filings database for a watchlist of companies
- Monitoring new filings (10-K, 10-Q, 8-K, insider forms) on a schedule
- Data pipelines that need structured filing metadata and XBRL flags
- Compliance, newsroom and market-intelligence tracking
Track SEC Filings & Financial Disclosures by Ticker
Give the actor stock tickers (AAPL, MSFT, BRK.B) or CIKs, optionally restrict form types and a filing-date window, and get one row per filing: company metadata (CIK, tickers, exchanges, entity type, SIC industry, state of incorporation, fiscal year end) and filing details (form type, filing date, period of report, acceptance timestamp, accession number, primary document name, reported items, file/film numbers, size, XBRL availability) plus direct URLs to the primary document and the filing index on sec.gov. A per-run SUMMARY record is written to the key-value store for quick pipeline checks.
How It Works

The Actor resolves tickers to 10-digit CIKs, reads each company's submissions JSON and applies form-type, date and result filters. Request starts are paced globally at eight per second to stay inside SEC fair-access limits.
Each row covers one filing with company details, form type, filing and report dates, accession number, primary document, direct document and index links, plus XBRL flags.
- Tickers are resolved to CIKs through SEC's public
company_tickers.jsonmapping (dots and dashes are interchangeable). - For each company the actor reads the latest submissions JSON and pages through historical filing files only when the requested date range or per-company limit requires them.
- Form-type filters, date bounds, amendment handling and per-company caps are applied in the actor before rows are pushed.
- All SEC requests share a global 8 requests-per-second limit — below SEC's published 10 req/s fair-access ceiling — with retries and backoff; companies are processed in parallel within that budget (concurrency input, default 4).
- Rows are written to the dataset as they are collected and a
SUMMARYrecord closes the run.
Input Parameters
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
ciks | array | No* | [] | SEC Central Index Keys with or without leading zeros (e.g. 320193 or 0000320193). |
tickers | array | No* | [] | Stock tickers (e.g. AAPL, MSFT), resolved to CIKs through SEC's company_tickers.json. Dots/dashes interchangeable (BRK.B = BRK-B). |
formTypes | array | No | [] | Only these forms (e.g. 10-K, 10-Q, 8-K, 4, S-1). Trailing * acts as a wildcard (10-*). Amendments like 10-K/A must be listed explicitly. Empty = all forms. |
startDate | string | No | "" | Earliest filing date, YYYY-MM-DD. Empty = no lower bound. |
endDate | string | No | "" | Latest filing date, YYYY-MM-DD. Empty = no upper bound. |
maxFilingsPerCompany | integer | No | 0 | Matching filings saved per company; 0 = no limit. Newest first. |
maxItems | integer | No | 0 | Total filings across all companies; 0 = unlimited for paying users. Free users are capped at 100 filings per run. |
concurrency | integer | No | 4 | Companies processed in parallel (1–10). SEC requests remain globally limited to 8 per second. |
proxy | object | No | disabled | Optional; SEC may rate-limit proxy traffic, so leave it off unless direct access fails. |
* Provide at least one CIK or ticker.
Output Fields
One dataset item per filing (companyName is repeated on every row):
- Company:
companyName,cik(10-digit),tickers,exchanges,entityType,sic,sicDescription,stateOfIncorporation,fiscalYearEnd - Filing:
formType,filingDate,reportDate,acceptanceDateTime,accessionNumber,primaryDocument,primaryDocDescription,items,size,act,filmNumber,fileNumber - Links:
documentUrl(primary document on sec.gov),filingIndexUrl(full index of the submission) - XBRL:
isXBRL,isInlineXBRL,isXBRLNumeric
Console views: Filings, Company details and XBRL. The run's SUMMARY record lives in the run's key-value store.
Example Input
{"tickers": ["AAPL"],"formTypes": ["10-K", "10-Q", "8-K"],"startDate": "2024-01-01","maxFilingsPerCompany": 10}
Example Output
{"companyName": "Apple Inc.","cik": "0000320193","tickers": ["AAPL"],"exchanges": ["Nasdaq"],"entityType": "operating","sic": "3571","sicDescription": "Electronic Computers","stateOfIncorporation": "CA","fiscalYearEnd": "0926","formType": "10-Q","filingDate": "2026-07-31","reportDate": "2026-06-27","acceptanceDateTime": "2026-07-31T14:01:02.000Z","accessionNumber": "0000320193-26-000020","primaryDocument": "aapl-20260627.htm","primaryDocDescription": "10-Q","documentUrl": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000020/aapl-20260627.htm","filingIndexUrl": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000020/0000320193-26-000020-index.htm","items": "","isXBRL": true,"isInlineXBRL": true,"isXBRLNumeric": true,"fileNumber": "001-36743"}
Automate SEC Filing Monitoring With Schedules & Webhooks
- Daily watchlist monitoring: schedule one run per day with your
tickersand a recent fixedstartDate(relative offsets are not supported), then keep only rows whoseaccessionNumberis new compared to the previous run. - Form-specific alerts: set
formTypes: ["8-K", "4"]for material-event and insider-activity feeds and attach a dataset webhook to email, Slack or a warehouse. - Quarterly bulk pulls: fetch 10-K/10-Q metadata for a full industry cohort (
formTypes: ["10-*"], wide date window) once per quarter for analytics. - Scheduled runs are the intended pattern and improve this actor's Store recommendation signals.
Related Actors
- SEC Edgar Filings Scraper — the most-used EDGAR actor on the Store, closest direct alternative.
- SEC EDGAR Filings — 10-K, 10-Q, 8-K & More — filings intelligence with its own field set.
- SEC EDGAR Filings API — Official Source, No API Key — official-source flavored option.
- SEC EDGAR Full-Text Search MCP Server — full-text keyword search across filings, complementary to metadata extraction.
- SEC EDGAR Full-Text Search & Financial Filings — full-text search scraper using EDGAR's public JSON search API.
Frequently Asked Questions
Why use this actor instead of the official API?
SEC's own data APIs are free, keyless and excellent — this actor is built directly on them, and if you only need to call data.sec.gov yourself, that route is perfectly valid. The actor adds the orchestration around that data: ticker-to-CIK resolution from company_tickers.json, form-type wildcards, date-window filtering that pages through historical filing files automatically, per-company and global caps, parallel companies under a polite global 8 requests/second budget with retries and backoff, XBRL flags, direct document and index URLs, a SUMMARY record per run, plus Apify's dataset export, scheduling and webhooks — without writing or maintaining any of it.
Is there a SEC EDGAR API?
Yes — data.sec.gov serves submissions history and XBRL company data as JSON with no authentication or API key, under a fair-access policy of at most 10 requests per second and a descriptive User-Agent with contact details. SEC also publishes nightly bulk ZIPs. This actor stays below the limit (8 req/s) and identifies itself with a fixed descriptive User-Agent.
How do I download SEC filings for a list of tickers?
Enter the tickers in tickers and run — CIKs are resolved automatically. Add formTypes to keep only the forms you need (e.g. 10-K, 10-Q), set maxFilingsPerCompany to bound each company, and export the dataset as CSV/Excel/JSON, or schedule the run for continuous collection.
Can I search the full text of filings with this actor?
No — this actor collects filing metadata by company (a different job from EDGAR full-text search). For phrase-level search across all filings, use a full-text search actor such as the ones linked under Related Actors; you can combine both: find candidate filings there, then pull structured metadata here.
Does it work without an API key or account?
Yes. It uses SEC's public JSON endpoints, sends a descriptive User-Agent, needs no registration, and requires no API key. Proxies are disabled by default because SEC may treat proxy traffic differently.
What is an accession number and why is it useful?
The accession number (e.g. 0000320193-26-000020) is SEC's unique identifier for a filing. It is the most reliable key for deduplication, so scheduled monitoring runs typically diff new dataset rows by accessionNumber.
For AI Agents & LLM Apps
Purpose: returns SEC EDGAR filing metadata rows for given tickers/CIKs — company fields, form details, XBRL flags and direct sec.gov document/index URLs — keyless.
Minimal input:
{ "tickers": ["AAPL"], "maxItems": 5 }
Watchlist variant:
{ "tickers": ["AAPL", "MSFT"], "formTypes": ["10-K", "10-Q"], "startDate": "2025-01-01", "maxFilingsPerCompany": 20 }
Output fields: companyName, cik, tickers, exchanges, entityType, sic, sicDescription, stateOfIncorporation, fiscalYearEnd, formType, filingDate, reportDate, acceptanceDateTime, accessionNumber, primaryDocument, primaryDocDescription, documentUrl, filingIndexUrl, items, size, act, filmNumber, fileNumber, isXBRL, isInlineXBRL, isXBRLNumeric.
Behaviors an agent should know:
- At least one
ciksortickersentry is required; both can be combined. formTypeswildcards are trailing-only (10-*); amendments (10-K/A) must be listed explicitly.maxItems: 0means unlimited for paying users; free users are capped at 100 filings per run — always set an explicit cap in agentic runs.concurrency(default 4) parallelizes companies, but SEC requests stay globally limited to 8 per second.- Keep
proxydisabled (default) — SEC advises against proxy traffic for this data. - The run writes a
SUMMARYrecord to the default key-value store alongside the dataset.
Billing: pay-per-event — result at $0.0025 per result row, plus a run-start event.
Legal & Compliance Disclaimer
This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the U.S. Securities and Exchange Commission. It reads SEC EDGAR data through SEC's own public JSON interfaces, sends a fixed descriptive User-Agent, and keeps its request rate at 8 per second — below SEC's published fair-access ceiling of 10 per second. No login, account or API key is used. SEC filings are public regulatory documents; users are responsible for their own compliance with SEC's access policies and applicable law when storing, redistributing or automating access to the collected data.
SEO Keywords
sec edgar scraper, sec filings scraper, sec edgar api, sec filings api, data.sec.gov, edgar filings download, 10-k filings data, 10-q data, 8-k filings, sec filing monitor, company filings database, xbrl data, edgar scraper, sec edgar alternative, ticker to cik, sec filing alerts, public company data, investment research data, insider form 4 filings, sec disclosure tracking