SEC EDGAR Filings Monitor — 10-K, 10-Q, 8-K & Form 4 Feed avatar

SEC EDGAR Filings Monitor — 10-K, 10-Q, 8-K & Form 4 Feed

Pricing

$2.50 / 1,000 results

Go to Apify Store
SEC EDGAR Filings Monitor — 10-K, 10-Q, 8-K & Form 4 Feed

SEC EDGAR Filings Monitor — 10-K, 10-Q, 8-K & Form 4 Feed

Get new SEC filings for your watchlist of tickers or CIKs since your last run: 10-K, 10-Q, 8-K, Form 4 and any other form type. Official SEC EDGAR data as a watermarked change feed built for scheduled runs and AI agents. Clean JSON with form type, dates and direct document links.

Pricing

$2.50 / 1,000 results

Rating

0.0

(0)

Developer

Nick

Nick

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Get new SEC filings since your last run for the public companies you care about. Watch by ticker or CIK, narrow the feed to the forms that matter — 10-K, 10-Q, 8-K, Form 4 or any other — and schedule it for clean downstream alerts. Official SEC EDGAR data, no scraping.

What does this Actor do?

You give it a list of tickers or CIKs. It resolves each to a CIK against the SEC's own company index, reads that company's official submissions record, and emits one row per filing — with the direct link to the primary document, not just a landing page.

Why this instead of a scraper

This is a change feed, not a one-shot scrape. The hard part of a filings feed is not fetching; it is not re-sending yesterday's filings and not missing today's. EDGAR publishes filingDate as a calendar date, so a naive "newer than my last timestamp" check either re-emits everything filed on the boundary day or drops the ones that arrive later the same day.

This Actor solves that by remembering two things per company: the newest filing date it has seen, and every accession number it already emitted on that date. A later run emits filings on newer dates, plus any previously unseen accession number on that same newest date. Multiple 8-Ks filed on one afternoon each arrive exactly once.

It reads SEC EDGAR's official public submissions data, identifies itself as the SEC's fair-access policy requires, and shares a limiter of at most eight requests per second across ticker resolution and filings requests.

Who is it for?

  • Investors and analysts watching a portfolio or a competitor set for material events.
  • Compliance and IR teams who need to know the moment a peer files.
  • Quant and data teams building an event-driven pipeline off primary documents.
  • Journalists tracking insider transactions through Form 4.
  • AI agent builders who want a filings tool with deterministic output and a real document URL.

Use cases

  • Alert on every new 8-K across a watchlist so material events reach Slack the day they land.
  • Track insider buying and selling by filtering to Form 4 for a set of tickers.
  • Collect each quarter's 10-Q for a peer group as the filings appear, with links straight to the document.
  • Trigger a document-summarization workflow whenever a new 10-K arrives.
  • Give an agent a tool that answers "what has this company filed recently?" from EDGAR rather than from training data.

What you get

One row per filing. Any value the source does not publish is null — the field is always present.

FieldTypeDescription
cikstringSEC Central Index Key, zero-padded as EDGAR publishes it
companystringRegistrant name from the SEC submissions record
tickerstringPrimary ticker symbol where EDGAR lists one
formstringForm type, e.g. 10-K, 10-Q, 8-K, 4
filingDatestringDate the filing was submitted (YYYY-MM-DD)
reportDatestringPeriod the filing reports on, where EDGAR publishes it
accessionNumberstringEDGAR accession number — the unique ID for this filing
primaryDocumentstringFilename of the filing's primary document
documentUrlstringDirect URL to the primary document in the EDGAR archives
newSinceLastRunbooleanWhether this filing is new relative to the saved watermark
retrievedAtstringISO 8601 timestamp of when this row was fetched

Sample output record

{
"cik": "0001318605",
"company": "Tesla, Inc.",
"ticker": "TSLA",
"form": "8-K",
"filingDate": "2026-07-22",
"reportDate": "2026-07-22",
"accessionNumber": "0001628280-26-049213",
"primaryDocument": "tsla-20260722.htm",
"documentUrl": "https://www.sec.gov/Archives/edgar/data/0001318605/000162828026049213/tsla-20260722.htm",
"newSinceLastRun": true,
"retrievedAt": "2026-08-22T14:37:17.082Z"
}

How to use it

Watch a list of companies for specific forms

Tickers and CIKs can be mixed freely in the same list.

{
"companies": ["TSLA", "0000320193"],
"formTypes": ["8-K", "10-Q"],
"maxResults": 100
}

Every form type

Leave formTypes empty to receive all forms.

{
"companies": ["MSFT", "NVDA"],
"maxResults": 200
}

Track insider transactions

{
"companies": ["AAPL"],
"formTypes": ["4"],
"maxResults": 100
}

Input parameters

InputTypeDescription
companiesarrayRequired. Ticker symbols or SEC CIKs to monitor
formTypesarraySEC forms to include, e.g. ["8-K"]. Empty means all forms
filedSincestringISO 8601 start time. Overrides the watermark for this run
maxResultsintegerMaximum records per run (1–1000). Default: 100

How monitoring works (first run and scheduling)

The first run establishes a baseline and returns the current window of filings. To get only-new records on every subsequent run, schedule this Actor as a saved Task so runs share the same storage — the watermark lives in the task's key-value store. A fresh unsaved run starts a fresh baseline.

The watermark advances only after records and RUN_SUMMARY have been saved, so a failed upstream request leaves it unchanged rather than silently skipping a window.

Honest limitations

  • The watermark is keyed on the identifier string you pass. Watching TSLA and then switching that entry to 0001318605 starts a fresh baseline for that company, because they are different keys. Pick one form of identifier per watchlist and keep it stable.
  • filedSince is strictly after. Filings dated exactly on the filedSince date are excluded; pass the day before if you want that date included.
  • Coverage is EDGAR's recent-submissions window. The SEC's submissions record holds a company's most recent filings, not its complete history. This Actor is built for monitoring what is new, not for backfilling a decade of archives.
  • Ticker resolution can fail. An unknown ticker produces a structured failure in RUN_SUMMARY rather than a silent empty result. CIKs always resolve.
  • amount, sentiment and parsed financials are not returned. This Actor gives you the filing metadata and the document URL; extracting the contents of the document is a separate job.

Reliability

The Actor writes diagnostics to the RUN_SUMMARY key-value record — never into the dataset. It identifies itself to SEC EDGAR as the fair-access policy requires and shares a limiter of at most eight requests per second across ticker resolution and filings requests. The company-ticker index is cached for 24 hours so repeat runs do not re-fetch it.

Every record carries retrievedAt and a documentUrl pointing at the SEC's own archive, so you can check any row against the source yourself.

Maintained against the upstream API. If EDGAR changes its schema or an endpoint moves, report it through the Issues tab and it gets fixed.

Integrations

Connect this Actor to Make, Zapier, n8n, Slack, Google Sheets, Airtable or any HTTP endpoint through Apify integrations. A scheduled run can post new 8-Ks to a channel or fire a webhook so a downstream summarization job starts the moment a filing lands. Datasets export as JSON, CSV, Excel, XML, RSS or HTML.

API usage

curl -X POST "https://api.apify.com/v2/acts/oneshotventure~sec-filings/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"companies": ["TSLA", "0000320193"], "formTypes": ["8-K", "10-Q"], "maxResults": 100}'

Python, JavaScript, PHP and CLI clients are documented under Apify API clients.

Use with AI agents (MCP)

This Actor is callable from any MCP-compatible client — Claude, Cursor, VS Code or your own agent — through the Apify MCP server. The input schema is fully described and every record uses one stable, flat JSON shape, so an agent can call it and read the result without a parsing step. Because it reads the official SEC EDGAR API rather than a rendered page, the answer an agent gets is the same one the source publishes — and documentUrl gives the agent a primary document to fetch and read.

Frequently asked questions

Is there a free SEC EDGAR API?

Yes — the SEC publishes company submissions as open JSON, with no key, subject to a fair-access rate limit and a requirement that clients identify themselves. This Actor is the scheduling, watchlist and change-feed layer on top of it.

How do I get alerts when a company files an 8-K?

Set companies to your tickers, formTypes to ["8-K"], save the Actor as a Task, and schedule it. Connect the Task to Slack or a webhook through Apify integrations.

How do I track insider trading with Form 4 filings?

Set formTypes to ["4"]. Each row gives you the filing date, accession number and a direct documentUrl to the Form 4 itself. Parsing the transaction details out of that document is a separate step this Actor does not perform.

Can I monitor a whole watchlist of tickers in one run?

Yes. companies takes as many tickers or CIKs as you need, and the watermark is tracked per company so one noisy filer does not crowd out the others.

Can I use a CIK instead of a ticker?

Yes, and CIKs are more reliable — they never change and never fail to resolve. Tickers are resolved against the SEC's own company-ticker index.

How current is EDGAR data?

The Actor reads EDGAR live at run time, so results are as current as the SEC's own submissions record. Schedule it hourly or daily depending on how quickly you need to know.

Why did my first run return so many filings?

The first run has no watermark, so it establishes a baseline over the current window. Save it as a Task and schedule it; later runs return only what is new.

Disclaimer

Unofficial independent tool. Not affiliated with or endorsed by the U.S. Securities and Exchange Commission. Data is retrieved from SEC EDGAR's official public API.