Skip to main content
Thirdwatchthirdwatch
More research

Track SEC 8-K Filings for Event-Driven Research

Build a scheduled SEC 8-K feed for material-event research. Includes Apify input, deduplication, and alerting patterns.

Editorial illustration for more research
Jul 21, 2026 · 2 min read · 388 words
View the Apify scraper →

The hard part of an 8-K monitor is not downloading filings. It is keeping a small, reliable state table so the same filing does not page your team every hour.

Thirdwatch's SEC EDGAR Scraper accepts a company watchlist, filters to Form 8-K, and returns structured filing metadata. It uses the public SEC source and does not need a brokerage-data subscription.

Run an 8-K watchlist

Create a saved Apify Task with an input like this:

{
  "queries": ["Tesla", "Rivian", "Lucid Group"],
  "filingType": "8-K",
  "maxResults": 50,
  "includeFinancials": false
}

Schedule it at the cadence your workflow needs. A research team may run hourly during market hours; a competitor-intelligence team may prefer one daily digest. More frequent polling does not make EDGAR publish faster, so pick a cadence that matches how quickly somebody can review the output.

Store the right deduplication key

Do not deduplicate on company name and filing date. A company can file more than one 8-K on the same day. Use the filing URL or accession identifier from the actor output.

seen = load_seen_accessions()

for filing in dataset_items:
    key = filing.get("accession_number") or filing["filing_url"]
    if key in seen:
        continue
    send_to_research_queue(filing)
    seen.add(key)

save_seen_accessions(seen)

Keep the raw dataset even if the alert is only a short message. Researchers will usually need the filing link, form date, company identity, and exhibits to decide whether the event matters.

Separate collection from interpretation

An 8-K feed is an intake queue, not a trading signal. Item headings can be useful for routing, but the meaning often lives in an exhibit. Send financing events to the capital-markets queue, executive changes to people intelligence, and acquisition disclosures to the M&A queue. Then have a person or a separately tested classifier inspect the filing.

This separation prevents a common failure: treating every 8-K as equally important. A routine governance update and a bankruptcy disclosure may share the same form type while carrying very different consequences.

Make the monitor observable

Track four numbers per run: companies requested, companies resolved, filings returned, and new filings after deduplication. Alert on collection failures separately from "no new filings." The latter is a normal outcome.

Start with the SEC EDGAR Scraper actor page, save the watchlist as a Task, and connect the resulting dataset to Slack, email, a webhook, or your research database.

Frequently asked questions

What is an 8-K filing?

A Form 8-K reports specified material events between periodic reports. The filing itself is the source record; your research process should still inspect the filing text and exhibits before acting.

Can I monitor several companies in one run?

Yes. Pass company names or tickers in the queries array and set filingType to 8-K.

How do I avoid duplicate alerts?

Persist each filing URL or accession identifier and alert only when a new identifier appears in the latest dataset.

Related