# SEC EDGAR Filing Change-Monitor (`nerolabs/sec-edgar-filing-monitor`) Actor

Watches companies on SEC EDGAR and reports only new filings since the last run, with a plain-English note on why each one might matter.

- **URL**: https://apify.com/nerolabs/sec-edgar-filing-monitor.md
- **Developed by:** [Adam Pearce](https://apify.com/nerolabs) (community)
- **Categories:** Automation, Agents, News
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $100.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### What does SEC EDGAR Filing Change-Monitor do?

**Know the moment a company you're watching files something material with the SEC, without checking [SEC EDGAR](https://www.sec.gov/edgar) yourself.** Give it a list of tickers or CIK numbers, and it reports only the filings that are *new since the last run*: 8-Ks (major corporate events), Form 4s (insider trades), and 13-D/G filings (large ownership stakes). Each filing comes with a plain-English note on why it might matter, a direct link to the real document, and the filing date.

Runs on SEC's own free, public API. No scraping, no API key, no anti-bot cat-and-mouse.

### Why use SEC EDGAR Filing Change-Monitor?

- **Investors and traders.** Catch a material 8-K or insider trade the moment it's filed, instead of checking EDGAR manually or waiting for financial news to pick it up.
- **IR and comms teams.** Track what filings competitors and peer companies are making.
- **Law firms and compliance teams.** Monitor a client or counterparty's filing activity.
- **AI agents and automated research tools.** Schedule this Actor and get back only what changed, ready to feed into a report or alert.

### How to use SEC EDGAR Filing Change-Monitor

1. Click **Try for free** and open the Input tab.
2. Add the tickers (e.g. `AAPL`, `TSLA`) or SEC CIK numbers you want to watch.
3. (Optional) Adjust which filing types count as material. Defaults to 8-K, Form 4, and SC 13D/13G.
4. Click **Start**. The first run reports each company's most recent matching filings (capped, so it doesn't dump years of history).
5. **Schedule it** to run daily (or however often you like) via Apify's built-in Schedules. Every run after the first reports only what's new since the last one.

### Input

- **Companies to watch.** Tickers or CIK numbers.
- **Filing types to watch.** Which SEC form types count as material.
- **Max filings per company on first run.** Caps the very first run's history dump.

See the Input tab for the full schema.

### Output

Each new filing is one item in the dataset:

```json
{
  "company": "Apple Inc.",
  "ticker": "AAPL",
  "cik": "0000320193",
  "formType": "8-K",
  "filingDate": "2026-07-30",
  "accessionNumber": "0000320193-26-000018",
  "filingUrl": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000018/aapl-20260730.htm",
  "summary": "The company reported quarterly/annual results (earnings); and filed financial statements or exhibits with this report.",
  "summaryMethod": "rule-based-v1"
}
```

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

#### Data table

| Field | Description |
|---|---|
| `company` | Company name as registered with the SEC |
| `ticker` | Stock ticker |
| `cik` | SEC's Central Index Key for the company |
| `formType` | The SEC form type (8-K, 4, SC 13D, SC 13G, etc.) |
| `filingDate` | Date the filing was made |
| `accessionNumber` | SEC's unique ID for this specific filing |
| `filingUrl` | Direct link to the actual filing document |
| `summary` | Plain-English note on why this filing might matter |
| `summaryMethod` | How the summary was generated (see note below) |

### Pricing / Cost estimation

Pay-per-event, priced per new filing detected and summarized, not a flat subscription. As a rough guide: watching 10 companies on a daily schedule typically costs somewhere around $10 to $20 a month, most of that from Form 4 insider-trade filings, which tend to be the most frequent form type. Quiet companies with few material filings cost less, active ones with a lot of insider trading or 8-Ks cost more. Exact per-event pricing is set on the Actor's page.

### Tips or Advanced options

- Start with a short watchlist and a daily schedule; expand once you know it's catching what you care about.
- 8-K filings carry SEC "Item" codes (e.g. `5.02` = officer/director departure). This Actor already translates the common ones into plain English.

### FAQ, disclaimers, and support

- **Is this legal to use commercially?** Yes. SEC EDGAR filings are U.S. federal government works, public domain under 17 U.S.C. §105.
- **Summary quality note (v1):** summaries are currently generated from SEC's own filing metadata (form type plus disclosed Item codes), not a full read of the filing text. This already correctly explains *why* most 8-Ks and Form 4s matter. Deeper, LLM-generated summaries of the actual filing text are a planned enhancement.
- **Found an issue or have a request?** Use the Issues tab. Real feedback shapes what gets built next.
- **Found this useful?** If this saved you a manual EDGAR check, a one-line review takes 20 seconds and helps a lot.

# Actor input Schema

## `companies` (type: `array`):

Stock tickers (e.g. AAPL, TSLA) or SEC CIK numbers to watch for new filings.

## `formTypes` (type: `array`):

Which SEC form types count as "material". Defaults to 8-K (major corporate events), Form 4 (insider trades), and SC 13D/13G (large ownership stakes).

## `maxFilingsPerCompanyOnFirstRun` (type: `integer`):

On the very first run for a company (no prior state), how many of its most recent matching filings to report, so a first run doesn't dump years of history.

## Actor input object example

```json
{
  "companies": [
    "AAPL",
    "TSLA",
    "MSFT",
    "GOOGL",
    "AMZN",
    "NVDA"
  ],
  "formTypes": [
    "8-K",
    "4",
    "SC 13D",
    "SC 13G"
  ],
  "maxFilingsPerCompanyOnFirstRun": 3
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "companies": [
        "AAPL",
        "TSLA",
        "MSFT",
        "GOOGL",
        "AMZN",
        "NVDA"
    ],
    "formTypes": [
        "8-K",
        "4",
        "SC 13D",
        "SC 13G"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("nerolabs/sec-edgar-filing-monitor").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "companies": [
        "AAPL",
        "TSLA",
        "MSFT",
        "GOOGL",
        "AMZN",
        "NVDA",
    ],
    "formTypes": [
        "8-K",
        "4",
        "SC 13D",
        "SC 13G",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("nerolabs/sec-edgar-filing-monitor").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "companies": [
    "AAPL",
    "TSLA",
    "MSFT",
    "GOOGL",
    "AMZN",
    "NVDA"
  ],
  "formTypes": [
    "8-K",
    "4",
    "SC 13D",
    "SC 13G"
  ]
}' |
apify call nerolabs/sec-edgar-filing-monitor --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,nerolabs/sec-edgar-filing-monitor"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Met7LdrBhouZouXAe/builds/xtTcpM8a86BAGxfTX/openapi.json
