SEC EDGAR Filings Monitor: New Form 4, 8-K, 10-K & 13D avatar

SEC EDGAR Filings Monitor: New Form 4, 8-K, 10-K & 13D

Pricing

Pay per event

Go to Apify Store
SEC EDGAR Filings Monitor: New Form 4, 8-K, 10-K & 13D

SEC EDGAR Filings Monitor: New Form 4, 8-K, 10-K & 13D

Watch tickers or CIKs on SEC EDGAR and get every filing that is new since your last run: Form 4 insider trades, 8-Ks with item codes, 10-K/10-Q, 13D/G, S-1, each with a sec.gov link. $2 per 1,000 filings plus $0.002 per company; no API key.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Changefeeds Tools

Changefeeds Tools

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

  • What you get: for a list of tickers or CIKs, every SEC filing that is new since your last run: Form 4 insider trades, 8-Ks with their item codes, 10-K/10-Q, 13D/13G, S-1 or any form you pick, each with form, dates, accession number and a direct link to the document on sec.gov.
  • Built for: insider-trade tracking, disclosure monitoring and daily digests. It reads only the official public EDGAR submissions feed (data.sec.gov). No API key, no login.
  • Price: $2 per 1,000 filings returned plus $0.002 per company checked. Unknown tickers and failed lookups are free.

Sample output

We ran AAPL and TSLA (Forms 4 and 8-K, Max filings per company 10) on 2026-09-29 and again on 2026-10-23. The second run found 19 new filings (16 for Apple, 3 for Tesla), delivered 13 and held Apple's other 6 for the next run:

tickerformfiling_dateitemsaccession_number
TSLA8-K2026-10-212.02,9.010001628280-26-066738
TSLA8-K2026-10-022.02,9.010001628280-26-064366
TSLA8-K2026-09-291.01,1.02,2.03,9.010001628280-26-063820
AAPL42026-10-220001140361-26-040540
AAPL42026-10-190001140361-26-040127

The first row in full:

{
"type": "filing",
"ticker": "TSLA",
"cik": "0001318605",
"company": "Tesla, Inc.",
"change_type": "new",
"form": "8-K",
"filing_date": "2026-10-21",
"report_date": "2026-10-21",
"accepted_at": "2026-10-22T00:41:42.000Z",
"accession_number": "0001628280-26-066738",
"items": "2.02,9.01",
"description": "8-K",
"url": "https://www.sec.gov/Archives/edgar/data/1318605/000162828026066738/tsla-20261021.htm",
"checked_at": "2026-10-23T03:50:27.167Z"
}

And Apple's company row from the same run:

{
"type": "company",
"ticker": "AAPL",
"status": "ok",
"error": null,
"cik": "0000320193",
"name": "Apple Inc.",
"is_baseline": false,
"previous_checked_at": "2026-09-29T08:36:23.200Z",
"filings_seen": 705,
"new_filings": 10,
"filings_pending": 6,
"checked_at": "2026-10-23T03:50:27.165Z"
}

Your first run is a baseline. It returns the newest Max filings per company filings of your form types as change_type: "baseline" rows and remembers them; from the second run of the same list you get only filings you have not received yet, marked new (one delivered late, accepted more than a day before the previous check, is marked baseline).

How to run in 30 seconds

  1. Click Try for free. The input already holds AAPL and TSLA, Forms 4 and 8-K, 5 filings each.
  2. Click Start. Our first run of that input took 44 seconds and cost $0.024 (2 companies, 10 baseline filings: Apple's latest Form 4s and Tesla's latest 8-Ks and Form 4).
  3. Run it again tomorrow: you get only filings made since. Then save it as a task and add a daily schedule.

To watch your own companies, replace the tickers (or use 10-digit CIKs) and pick the form types. Leave Form types empty to watch every form.

Pricing

  • $0.002 per company checked (its filings feed was fetched and compared).
  • $0.002 per filing returned ($2 per 1,000), baseline or new.
  • Free: unknown tickers, invalid entries and failed lookups.
  • Examples:
    • starting a watch of 25 companies with 10 filings each: 25 × $0.002 + 250 × $0.002 = $0.55 once ($0.10 with Max filings per company at 1);
    • Apple and Tesla, Forms 4 and 8-K, daily: $0.004 a run in checks plus the new filings (19 in the 24 days above), about $0.17 a month;
    • 100 companies daily: $0.20 a day in checks, about $6 a month, plus $0.002 per new filing.
  • Set a maximum total charge and the actor returns only the rows that fit, saves state for what it returned, stops, and says so in OUTPUT (stopped_reason: "max_total_charge_reached"). It never charges for a row it did not deliver. (If a run is killed between delivering a company's rows and saving its state, the next run reports those filings again.)

FAQ

How do I get new filings in Slack? Save your list as a task, add a schedule, and set Webhook URL to a Slack, Zapier or Make endpoint: after each run it POSTs the summary plus that run's new filing rows (up to 500; up to 3 attempts on network errors, 429 and 5xx). Or attach an Apify integration to the task's "run succeeded" event.

Does it parse Form 4 transactions or filing text? No. Rows carry EDGAR's index metadata and a link to the document; the actor does not download or republish filing contents.

Why did a burst of filings arrive over two runs? Each run delivers at most Max filings per company filings per company, newest first. The rest are counted in filings_pending and delivered by the next runs, never skipped while they are in EDGAR's recent-filings window.

I edited my ticker list and everything is baseline again. The default snapshot key comes from the ticker list. Set Snapshot key to a fixed name to keep history when you edit the list.

SC 13D or SCHEDULE 13D? Either: EDGAR renamed the form in December 2024 and the actor treats both names as the same form (likewise 13G). A form also includes its amendments: 4 returns 4/A too.

Limits

  • Only the recent-feed window. The actor reads filings.recent of each company's submissions feed, roughly the latest 1,000 filings per company (Form 4-heavy companies roll through that fast). Historical filings are never backfilled.
  • EDGAR's own update cadence applies: a filing accepted minutes ago may not appear until EDGAR publishes it.
  • Ticker resolution uses EDGAR's ticker file. A ticker missing from it comes back not_found (free); pass the 10-digit CIK instead. Another share class of a company already in the list (BRK-A next to BRK-B) is duplicate, checked and charged once.
  • Amendments are separate rows (their own accession numbers). EDGAR filings are append-only, so there are no removed rows.
  • new uses a day of slack. EDGAR's acceptance timestamps are Eastern time labelled as UTC, so a never-delivered filing counts as new unless it was accepted more than a day before the previous check; otherwise it arrives as baseline.
  • report_date and accepted_at can be empty for some forms; they are then null rather than guessed.
  • Polite: at most 4 EDGAR requests per second (their fair-access limit is 10), a declared User-Agent with a contact address, HTTP 429 honoured (Retry-After up to 60 s, at most 3 retries; a longer wait stops EDGAR requests for the rest of the run and the remaining companies get free error rows), 20 s timeouts. Two companies are fetched at a time, 1 to 2 requests each.
  • One run at a time per snapshot key. A run that starts while another run with the same key is still going fails immediately, before fetching or charging anything. A crashed run blocks its key for at most 30 minutes. (The lock is best effort: two runs started within the same couple of seconds can, rarely, both proceed, and a filing can then be reported twice.)
  • If saved history can't be read, the company is skipped with a free error row rather than re-sent as a paid baseline. If it can't be saved after 3 attempts, the run is marked failed and names the companies.

How the change feed works

  • State lives in the named key-value store secwatch-snapshots in your account, one record per company (CIK) and snapshot key, holding the accession numbers of every filing already delivered (the newest 5,000).
  • The first run takes the newest Max filings per company filings of your form types as the baseline. The oldest of them sets the watch's floor: older history is never billed later, even if you widen Form types.
  • Later runs take every undelivered filing on or after the floor, newest first, up to Max filings per company per run; the rest wait in filings_pending.
  • If a run hits your charge limit mid-list, only the rows you received are remembered; the rest come back on the next run.
  • A run with no new filings still returns one company row per company (new_filings: 0), so a quiet run is never mistaken for a broken one.

Input reference

FieldDefaultNotes
tickersrequiredTickers (AAPL, BRK.B) or 10-digit CIKs (0000320193). Up to 1,000 per run. Invalid entries get a free error row; the run continues.
formTypes["4","8-K","10-K","10-Q","SC 13D","SC 13G","S-1"]Case-insensitive. A form includes its amendments (ask for 8-K/A alone to get only amendments). Empty = all forms.
maxFilingsPerCompany101 to 1,000. How many of the most recent matched filings to deliver per company per run.
snapshotKeyderivedWhich saved state to compare against. By default derived from the sorted ticker list. Distinct keys always get distinct storage records (sanitised and suffixed with a hash of the original), so watch/a and watch?a never share history.
webhookUrlnoneReceives the run summary and the new filing rows as a JSON POST.
contactEmailoperator'sIncluded in the User-Agent sent to SEC.gov, as their fair-access policy asks.

Output reference

company rows (type: "company"): ticker, cik, name; status: ok, not_found, error, invalid or duplicate; is_baseline, previous_checked_at; filings_seen (filings of your form types in EDGAR's recent feed), new_filings (found for delivery this run), filings_pending (found but beyond Max filings per company).

filing rows (type: "filing"): change_type (new or baseline), form, filing_date, report_date, accepted_at, accession_number, items (8-K item codes such as 2.02,9.01), description, url (the primary document on sec.gov), checked_at.

The key-value store record OUTPUT holds totals (filings_returned, baseline_filings, new_filings, first_run, charged_events, charge_limit_reached, stopped_reason, dataset_id, webhook_delivered) and a per-company summary.