SEC EDGAR Scraper — 10-K, 8-K, Form 4 & 13F
Pricing
from $5.00 / 1,000 results
SEC EDGAR Scraper — 10-K, 8-K, Form 4 & 13F
Scrape SEC EDGAR — 10-K, 10-Q, 8-K, Form 4 insiders, 13F holdings, 13D/G stakes, DEF 14A, Form D, XBRL facts, full-text search. 9 modes auto-detected from ticker/CIK/accession/URL/keyword. MCP-ready, free official SEC API. $0.005/result.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
4 days ago
Last modified
Categories
Share
SEC EDGAR All-In-One — Filings, XBRL, Insiders, 13F, Form D
This Apify Actor accepts a ticker, CIK, accession number, SEC filing URL, or keyword query and returns one normalized dataset record per SEC EDGAR result. It is built for analysts, AI agents, and automations that need filings, XBRL facts, insider trades, holdings, activism, Form D records, search hits, or recent-feed entries in one workflow. It is usable through Apify MCP.
Best fit and connected workflows
Use this Actor when a workflow starts with a public SEC identifier and ends with structured records for review, storage, or downstream automation.
It routes naturally into these SEC workflows:
companyfor filing histories tied to a ticker or CIKfilingfor one accession number or filing URLsearchfor keyword-driven disclosure researchinsiderfor Form 3, 4, and 5 trade recordsholdingsfor 13F institutional positionsactivistfor 13D and 13G beneficial ownership stakesxbrlfor company facts and single-concept XBRL extractionform-dfor Reg D startup funding filingsrecentfor the latest global EDGAR feed
Focused standalone workflow
This Actor is designed as a focused standalone workflow.
Practical scenario
A research analyst starts with the ticker AAPL and wants the latest annual and quarterly filings for a review packet. They run the Actor with query: "AAPL", mode: "company", and formTypes: ["10-K", "10-Q"]. The dataset returns formType, filedAt, periodOfReport, filingUrl, and primaryDocUrl. With those fields, the analyst can choose which filings to open first and follow the SEC links for document review.
Input
| Field | Type | Default | Purpose |
|---|---|---|---|
query | string | AAPL | Required. Accepts a ticker, CIK, accession number, filing URL, or keyword query. |
mode | string | auto | Routing override. Auto-detect is recommended. |
formTypes | string[] | [] | Filters results to selected SEC form types such as 10-K, 10-Q, 8-K, or 4. |
dateFrom | string | "" | Inclusive lower filing-date bound in YYYY-MM-DD format. |
dateTo | string | "" | Inclusive upper filing-date bound in YYYY-MM-DD format. |
maxResults | integer | 100 | Caps dataset items returned across modes. Range: 1 to 10000. Charged per result. |
includeFullText | boolean | false | Includes stripped plain-text filing body in fullText for filing and company modes. |
enableAiSummary | boolean | false | Adds a structured AI summary per filing using Gemini 2.5 Flash. |
xbrlConcept | string | "" | XBRL concept name for xbrl mode, such as Revenues or Assets. |
Focused JSON example
{"query": "AAPL","mode": "company","formTypes": ["10-K", "10-Q"],"dateFrom": "a source-provided date","maxResults": 25,"includeFullText": false,"enableAiSummary": false}
Output
The Actor writes flat records to the default dataset. Each item represents one filing, XBRL fact, insider trade, 13F position, search hit, Form D offering, or recent-feed entry, with mode-specific fields added when relevant.
| Field | Type | Meaning |
|---|---|---|
_mode | string | Route that produced the record. |
cik | string or null | SEC Central Index Key, zero-padded to 10 digits. |
ticker | string or null | Stock ticker symbol. |
companyName | string or null | Filer or company legal name. |
accessionNumber | string or null | SEC accession number. |
formType | string or null | Filing form type. |
filedAt | string or null | Filing date in ISO format. |
acceptedAt | string or null | Acceptance datetime in ISO 8601. |
periodOfReport | string or null | Reporting period end date. |
filingUrl | string or null | SEC filing index page. |
primaryDocUrl | string or null | Primary filing document. |
items | string or null | Form-specific item codes. |
fileNumber | string or null | SEC file number. |
filmNumber | string or null | SEC film number. |
size | integer or null | Filing size in bytes. |
isXBRL | boolean or null | Whether the filing has XBRL data. |
fullText | string or null | Plain-text filing body when requested. |
aiSummary | object or null | Structured summary when enabled. |
snippet | string or null | Search match snippet. |
score | number or null | Search relevance score. |
insiderName | string or null | Insider name. |
insiderTitle | string or null | Insider title or relationship. |
transactionDate | string or null | Insider transaction date. |
transactionCode | string or null | SEC transaction code such as P or S. |
shares | number or null | Shares transacted. |
pricePerShare | number or null | Price per share. |
totalValue | number or null | Total transaction value in USD. |
sharesOwnedAfter | number or null | Shares owned after transaction. |
institutionName | string or null | Institution name. |
institutionCik | string or null | Institution CIK. |
issuerName | string or null | Issuer name of held security. |
issuerCusip | string or null | CUSIP. |
sharesHeld | number or null | Shares held. |
valueHeld | number or null | Position value in USD. |
ownershipPercent | number or null | Beneficial ownership percent. |
concept | string or null | XBRL concept name. |
value | number or null | XBRL fact numeric value. |
unit | string or null | XBRL unit. |
fy | integer or null | XBRL fiscal year. |
fp | string or null | XBRL fiscal period. |
startDate | string or null | XBRL period start. |
endDate | string or null | XBRL period end. |
offeringAmount | number or null | Form D offering amount in USD. |
amountSold | number or null | Form D amount sold in USD. |
industry | string or null | Form D industry group. |
executiveOfficers | array or null | Form D executive officers and directors list. |
Illustrative dataset record
{"_mode": "company","cik": "0000320193","ticker": "AAPL","companyName": "Apple Inc.","accessionNumber": "0000320193-25-000123","formType": "10-K","filedAt": "a source-provided date","acceptedAt": "2025-11-01T18:04:32Z","periodOfReport": "a source-provided date","filingUrl": "https://www.sec.gov/Archives/edgar/data/320193/000032019325000123/0000320193-25-000123-index.htm","primaryDocUrl": "https://www.sec.gov/Archives/edgar/data/320193/000032019325000123/aapl-20250928.htm","items": null,"fileNumber": "001-36743","filmNumber": "251404123","size": 13845678,"isXBRL": true}
How it works
- The Actor reads the input and routes by
mode, or auto-detects intent from the query shape. - It resolves tickers and CIKs against SEC lookup data, then calls the relevant SEC endpoint.
- Supported endpoints include company submissions, single filing retrieval, search, insider trades, 13F holdings, 13D/G activism, XBRL company facts, Form D, and the recent EDGAR feed.
- It uses the public SEC API with the required
User-Agentheader from the Actor environment. - Results are written as flat dataset records with ISO date fields and route-specific properties.
Pricing
This Actor uses Pay per event plus Apify platform usage. Each dataset record written by the Actor is charged as one Result event, and AI summaries add a separate event when enableAiSummary=true. Apify platform usage is billed alongside those events according to the live Pricing tab in Apify Console.
For an event-count example written in words: if a run returns twenty filing records and includes three AI-generated summaries, that run charges twenty Result events and three AI summary events, plus the Actor start event and Apify platform usage. Check the live Pricing tab for the current rates before running larger jobs.
Use with AI agents (MCP)
This Actor is available through Apify MCP as a tool for SEC EDGAR retrieval, filing inspection, search, and structured disclosure extraction.
Tool description: one Apify tool that accepts a ticker, CIK, accession, filing URL, or keyword, then returns normalized SEC EDGAR records for filings, XBRL facts, insider trades, 13F positions, search hits, Form D, or the recent feed.
Exact Actor identity: khadinakbar/sec-edgar-all-in-one-scraper
Retrieve Apple's latest 10-K and 10-Q filings, then return the filing URLs, form types, and filing dates so I can compare the reporting periods.
Output interpretation:
_modeshows which route produced the recordfiledAt,acceptedAt, andperiodOfReportidentify timingfilingUrlpoints to the SEC index pageprimaryDocUrlpoints to the primary documentsnippetandscoreappear in search modesharesHeldandvalueHeldappear in holdings modeconcept,value, andunitappear in XBRL mode
Provenance and scope:
- records come from SEC EDGAR endpoints
- the Actor covers US-registered issuers and SEC filing data
querycan be a ticker, CIK, accession number, filing URL, or keywordformTypes,dateFrom,dateTo, andmaxResultsshape the returned datasetincludeFullTextandenableAiSummaryexpand the returned filing content when used in filing and company modes
Pagination, scope, and cost guidance:
- use
maxResultsto control the number of billed records - use
formTypesto focus on one disclosure class - use
dateFromanddateToto narrow wide searches - use
includeFullTextwhen you want the filing body in the output - use
enableAiSummarywhen you want a separate structured summary event per filing
Apify API example
import { ApifyClient } from "apify-client";const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor("khadinakbar/sec-edgar-all-in-one-scraper").call({query: "AAPL",mode: "company",formTypes: ["10-K", "10-Q"],maxResults: 10,});const dataset = await client.dataset(run.defaultDatasetId).listItems({clean: true,limit: 10,});console.log("Dataset items:", dataset.items);
Best results and outcome guidance
Use auto when the query already looks like a ticker, CIK, accession number, filing URL, or keyword. Use company for filing history, filing for one accession or URL, search for disclosure research, insider for Form 3/4/5 activity, holdings for 13F positions, activist for 13D/G stakes, xbrl for structured fundamentals, form-d for financing records, and recent for broad monitoring.
For narrower outputs, combine formTypes with one route, and use dateFrom plus dateTo to focus the filing window. In XBRL mode, set xbrlConcept when you want one concept like Revenues or Assets instead of the full concept set.
Design note
I found that the dataset schema keeps a shared filing core across all modes, while specialized fields are added only when a route needs them. That makes one output shape practical for downstream parsing and agent tooling.
FAQ
When should I use company instead of filing?
Use company when you want a filing history for a ticker or CIK. Use filing when you already have an accession number or filing URL and want one specific filing.
Which mode is useful for financial facts?
Use xbrl for machine-readable facts such as Revenues, Assets, NetIncomeLoss, or EarningsPerShareBasic.
How do I inspect insider activity?
Use insider for Form 3, 4, and 5 records tied to a company ticker or CIK. The returned fields include insiderName, transactionDate, transactionCode, and shares.
How do I review institutional ownership?
Use holdings with an institution CIK to retrieve 13F positions, including issuerName, issuerCusip, sharesHeld, and valueHeld.
Can I search by topic instead of a ticker?
Yes. Use search with a keyword query like climate risk to get matching EDGAR records and snippet results.
How do I monitor fresh SEC activity?
Use recent to read the latest global EDGAR feed, then filter with formTypes or dateFrom as needed.
Responsible use
Use this Actor in line with SEC public-data access rules and your own compliance requirements. The returned records are public disclosures from SEC EDGAR and are suitable for research, monitoring, and automation that respect the source data and filing context.