SEC EDGAR Scraper — 10-K, 8-K, Form 4 & 13F avatar

SEC EDGAR Scraper — 10-K, 8-K, Form 4 & 13F

Pricing

from $5.00 / 1,000 results

Go to Apify Store
SEC EDGAR Scraper — 10-K, 8-K, Form 4 & 13F

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

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

4 days ago

Last modified

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:

  • company for filing histories tied to a ticker or CIK
  • filing for one accession number or filing URL
  • search for keyword-driven disclosure research
  • insider for Form 3, 4, and 5 trade records
  • holdings for 13F institutional positions
  • activist for 13D and 13G beneficial ownership stakes
  • xbrl for company facts and single-concept XBRL extraction
  • form-d for Reg D startup funding filings
  • recent for 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

FieldTypeDefaultPurpose
querystringAAPLRequired. Accepts a ticker, CIK, accession number, filing URL, or keyword query.
modestringautoRouting override. Auto-detect is recommended.
formTypesstring[][]Filters results to selected SEC form types such as 10-K, 10-Q, 8-K, or 4.
dateFromstring""Inclusive lower filing-date bound in YYYY-MM-DD format.
dateTostring""Inclusive upper filing-date bound in YYYY-MM-DD format.
maxResultsinteger100Caps dataset items returned across modes. Range: 1 to 10000. Charged per result.
includeFullTextbooleanfalseIncludes stripped plain-text filing body in fullText for filing and company modes.
enableAiSummarybooleanfalseAdds a structured AI summary per filing using Gemini 2.5 Flash.
xbrlConceptstring""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.

FieldTypeMeaning
_modestringRoute that produced the record.
cikstring or nullSEC Central Index Key, zero-padded to 10 digits.
tickerstring or nullStock ticker symbol.
companyNamestring or nullFiler or company legal name.
accessionNumberstring or nullSEC accession number.
formTypestring or nullFiling form type.
filedAtstring or nullFiling date in ISO format.
acceptedAtstring or nullAcceptance datetime in ISO 8601.
periodOfReportstring or nullReporting period end date.
filingUrlstring or nullSEC filing index page.
primaryDocUrlstring or nullPrimary filing document.
itemsstring or nullForm-specific item codes.
fileNumberstring or nullSEC file number.
filmNumberstring or nullSEC film number.
sizeinteger or nullFiling size in bytes.
isXBRLboolean or nullWhether the filing has XBRL data.
fullTextstring or nullPlain-text filing body when requested.
aiSummaryobject or nullStructured summary when enabled.
snippetstring or nullSearch match snippet.
scorenumber or nullSearch relevance score.
insiderNamestring or nullInsider name.
insiderTitlestring or nullInsider title or relationship.
transactionDatestring or nullInsider transaction date.
transactionCodestring or nullSEC transaction code such as P or S.
sharesnumber or nullShares transacted.
pricePerSharenumber or nullPrice per share.
totalValuenumber or nullTotal transaction value in USD.
sharesOwnedAfternumber or nullShares owned after transaction.
institutionNamestring or nullInstitution name.
institutionCikstring or nullInstitution CIK.
issuerNamestring or nullIssuer name of held security.
issuerCusipstring or nullCUSIP.
sharesHeldnumber or nullShares held.
valueHeldnumber or nullPosition value in USD.
ownershipPercentnumber or nullBeneficial ownership percent.
conceptstring or nullXBRL concept name.
valuenumber or nullXBRL fact numeric value.
unitstring or nullXBRL unit.
fyinteger or nullXBRL fiscal year.
fpstring or nullXBRL fiscal period.
startDatestring or nullXBRL period start.
endDatestring or nullXBRL period end.
offeringAmountnumber or nullForm D offering amount in USD.
amountSoldnumber or nullForm D amount sold in USD.
industrystring or nullForm D industry group.
executiveOfficersarray or nullForm 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

  1. The Actor reads the input and routes by mode, or auto-detects intent from the query shape.
  2. It resolves tickers and CIKs against SEC lookup data, then calls the relevant SEC endpoint.
  3. 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.
  4. It uses the public SEC API with the required User-Agent header from the Actor environment.
  5. 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:

  • _mode shows which route produced the record
  • filedAt, acceptedAt, and periodOfReport identify timing
  • filingUrl points to the SEC index page
  • primaryDocUrl points to the primary document
  • snippet and score appear in search mode
  • sharesHeld and valueHeld appear in holdings mode
  • concept, value, and unit appear in XBRL mode

Provenance and scope:

  • records come from SEC EDGAR endpoints
  • the Actor covers US-registered issuers and SEC filing data
  • query can be a ticker, CIK, accession number, filing URL, or keyword
  • formTypes, dateFrom, dateTo, and maxResults shape the returned dataset
  • includeFullText and enableAiSummary expand the returned filing content when used in filing and company modes

Pagination, scope, and cost guidance:

  • use maxResults to control the number of billed records
  • use formTypes to focus on one disclosure class
  • use dateFrom and dateTo to narrow wide searches
  • use includeFullText when you want the filing body in the output
  • use enableAiSummary when 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.