Insidewell API
Free API + MCP server · paid keys from $19/month

Fresh insider buys and sales, one API call

Every SEC Form 4 insider trade, pulled from EDGAR about once a minute and cleaned into one table: filter by ticker, insider, buy or sale, dollar value and dates, or ask for cluster buys (2+ insiders buying the same stock within 7 days). For traders, analysts, newsletters, fintech builders and AI agents. Free tier, no key; plans from $19/month.

Manage your subscription

Opens Stripe's billing portal: invoices, payment method, cancel.

Who it's for

Anyone who reads insider filings: get the new ones in clean JSON minutes after EDGAR posts them, without parsing XML or paying for a full market-data suite.

Traders and investors

Open-market insider buys over $100k, or cluster buys, the moment they are filed. Information only; you make the calls.

Analysts and newsletters

A weekly "who bought" table in one call, with the filing link on every row.

Fintech and dashboard builders

Insider activity for your tickers as JSON, without an EDGAR parser to maintain.

AI agents

An MCP tool that answers "did insiders buy NVDA this month?" with the filings behind it.

Try it

Latest open-market insider buys over $100,000, straight from SEC Form 4. Change the filters, or leave ticker empty for the whole market.

Prefilled with a real example. Press Show trades.

Real sample output

Captured from a live call to this API (first 3 rows).

{
  "query": {
    "ticker": [
      "MNSO",
      "PRTA",
      "CRBG"
    ],
    "insider": null,
    "codes": [
      "P"
    ],
    "minValue": 100000,
    "from": null,
    "to": null,
    "filedSince": "2026-09-23",
    "role": null,
    "plan": null,
    "limit": 3,
    "offset": 0
  },
  "count": 3,
  "more": false,
  "trades": [
    {
      "accession_number": "0001104659-26-112076",
      "seq": 0,
      "filed_at": "2026-09-30",
      "form_type": "4",
      "transaction_date": "2026-09-29",
      "ticker": "MNSO",
      "issuer_name": "MINISO Group Holding Ltd",
      "issuer_cik": "0001815846",
      "owner_name": "Zhang Jingjing Eason",
      "owner_cik": "0002111254",
      "owner_role": "VP and Chief Financial Officer",
      "is_director": false,
      "is_officer": true,
      "is_ten_percent_owner": false,
      "joint_filers": 1,
      "transaction_code": "P",
      "transaction_type": "Open-market or private purchase",
      "acquired_disposed": "A",
      "is_open_market": true,
      "shares": 150600,
      "price_per_share": 2.2583,
      "total_value_usd": 340099.98,
      "shares_owned_after": 394474,
      "direct_or_indirect": "D",
      "ownership_nature": null,
      "security_title": "Ordinary Shares",
      "rule_10b5_1": false,
      "filing_url": "https://www.sec.gov/Archives/edgar/data/2111254/000110465926112076/0001104659-26-112076-index.htm"
    },
    {
      "accession_number": "0001045463-26-000017",
      "seq": 0,
      "filed_at": "2026-09-29",
      "form_type": "4",
      "transaction_date": "2026-09-28",
      "ticker": "PRTA",
      "issuer_name": "PROTHENA CORP PUBLIC LTD CO",
      "issuer_cik": "0001559053",
      "owner_name": "SCULLY WILLIAM P",
      "owner_cik": "0001045463",
      "owner_role": "10% owner",
      "is_director": false,
      "is_officer": false,
      "is_ten_percent_owner": true,
      "joint_filers": 1,
      "transaction_code": "P",
      "transaction_type": "Open-market or private purchase",
      "acquired_disposed": "A",
      "is_open_market": true,
      "shares": 103500,
      "price_per_share": 8.5978,
      "total_value_usd": 889872.3,
      "shares_owned_after": 187000,
      "direct_or_indirect": "I",
      "ownership_nature": "By Manatee Equity Fund LLC",
      "security_title": "Ordinary Shares, par value $0.01 per share",
      "rule_10b5_1": false,
      "filing_url": "https://www.sec.gov/Archives/edgar/data/1559053/000104546326000017/0001045463-26-000017-index.htm"
    },
    {
      "accession_number": "0001193125-26-407701",
      "seq": 0,
      "filed_at": "2026-09-29",
      "form_type": "4",
      "transaction_date": "2026-09-25",
      "ticker": "CRBG",
      "issuer_name": "Corebridge Financial, Inc.",
      "issuer_cik": "0001889539",
      "owner_name": "NIPPON LIFE INSURANCE CO",
      "owner_cik": "0000905591",
      "owner_role": "10% owner",
      "is_director": false,
      "is_officer": false,
      "is_ten_percent_owner": true,
      "joint_filers": 1,
      "transaction_code": "P",
      "transaction_type": "Open-market or private purchase",
      "acquired_disposed": "A",
      "is_open_market": true,
      "shares": 178840,
      "price_per_share": 34.5232,
      "total_value_usd": 6174129.09,
      "shares_owned_after": 124773872,
      "direct_or_indirect": "D",
      "ownership_nature": null,
      "security_title": "Common Stock",
      "rule_10b5_1": true,
      "filing_url": "https://www.sec.gov/Archives/edgar/data/1889539/000119312526407701/0001193125-26-407701-index.htm"
    }
  ],
  "data": {
    "source": "SEC EDGAR Form 4 and 4/A filings (public domain), pulled about once a minute",
    "updated": "2026-09-30T12:27:18.747Z",
    "filed_from": "2026-09-28",
    "filed_to": "2026-09-30"
  },
  "disclaimer": "Information only, not investment advice. Data: SEC EDGAR Form 4 filings (public domain), as filed by insiders; check the linked filing before relying on any row. Not affiliated with or endorsed by the SEC."
}

Limits, plainly

Free and rate limited so it stays fast for everyone. Up to 100 trades per call; page with offset. The free Hugging Face dataset has the full weekly snapshot; for scheduled watchlists that email or post new filings, Insidewell is also on the Apify Store.

  • Up to 100 trades per call; 20 calls a minute per IP on the free tier.
  • Free tier: 100 calls a day per IP, no key. Paid keys from $19/month (see Get an API key).
  • Rolling 45-day window of Form 4 and 4/A filings, pulled from SEC EDGAR about once a minute; each response says when the data was last updated.
  • Non-derivative transactions (common stock and similar); option grants and other derivative rows are not included. Joint filings are attributed to the first reporting owner.
  • Information only, not investment advice.

Want a watchlist that runs itself?

Insidewell on the Apify Store tracks your own tickers on a schedule and returns only new filings and cluster-buy alerts, straight into Sheets, Slack or email. The free weekly dataset is on Hugging Face.

Get an API key

SEC Form 4 insider trading API: the latest insider buys, sales, grants and option exercises from EDGAR, pulled about once a minute, up to 100 trades per call with ticker, insider, role, code, shares, price, dollar value, shares owned after, Rule 10b5-1 flag and the filing link. Filter by ticker, insider, code, minimum value, dates and role, or ask for cluster buys (2+ insiders buying within 7 days). Keys work on the REST API and the MCP server. Information only, not investment advice.

Free
$0

100 calls a day per IP · 20 per minute · no key, no sign-up

Try it now
Watchlist
$19/month

10,000 calls a month · 30 per minute

Get Watchlist keyor $190/year, 2 months free
Desk recommended
$49/month

50,000 calls a month · 60 per minute

Get Desk keyor $490/year, 2 months free
Fund
$99/month

150,000 calls a month · 120 per minute

Get Fund keyor $990/year, 2 months free
Pay as you go
$5

2,000 calls to use whenever (no expiry) · 30 per minute

Buy the pack

Pay with card, Apple Pay, Google Pay or Link through Stripe Checkout (sales tax/VAT handled by Stripe). Your key appears on the page you return to right after checkout: save it. Manage or cancel any time at insidewell-api.cybermax-tools.workers.dev/manage. Send it as x-api-key: YOUR_KEY (or Authorization: Bearer YOUR_KEY, which MCP clients support). Check usage at /key. Failed calls are not counted. Insider-trading data usually comes inside a financial-data suite: sec-api.io Personal & Startups $55/month ($49 billed yearly), Financial Modeling Prep from $19/month billed yearly (Starter), EODHD only from its $59.99/month Equity Analyst plan (checked 30 Sep 2026); EDGAR itself is free but raw XML. Insidewell does the one job, fresh Form 4 trades with filters and cluster buys, at the $19/$49 price points with 100 free calls a day and $5 pay-as-you-go for 2,000 calls.

With your key
curl -s "https://insidewell-api.cybermax-tools.workers.dev/api/trades?..." -H "x-api-key: YOUR_KEY"

# MCP (Claude Desktop, Cursor, VS Code)
{ "mcpServers": { "insidewell-api": { "type": "http", "url": "https://insidewell-api.cybermax-tools.workers.dev/mcp",
  "headers": { "Authorization": "Bearer YOUR_KEY" } } } }

# Usage so far
curl -s https://insidewell-api.cybermax-tools.workers.dev/key -H "x-api-key: YOUR_KEY"

Use the API

JSON over HTTPS, CORS enabled, no key. GET for quick calls, POST a JSON body for lists. Spec: openapi.json · llms.txt

cURL
curl -s "https://insidewell-api.cybermax-tools.workers.dev/api/trades?code=P&minValue=100000&days=7"

# lists: POST a JSON body
curl -s -X POST https://insidewell-api.cybermax-tools.workers.dev/api/trades \
  -H "content-type: application/json" \
  -d '{"ticker":"NVDA,AAPL","code":"P,S","minValue":100000}'
Python
import requests

r = requests.post("https://insidewell-api.cybermax-tools.workers.dev/api/trades",
                  json={"ticker":"NVDA,AAPL","code":"P,S","minValue":100000}, timeout=30)
r.raise_for_status()
for row in r.json()["trades"]:
    print(row)

Endpoints: /api/trades latest insider trades from sec form 4, filtered · /api/cluster-buys cluster buys: 2+ insiders buying the same stock within 7 days · /api/status data freshness: last update, filings and trades in the window (free, not metered)

Add it to your AI agent (MCP)

A remote MCP server at https://insidewell-api.cybermax-tools.workers.dev/mcp (streamable HTTP, no auth). Read-only tools with JSON schemas, so agents know exactly what to send.

MCP config
// Claude Desktop, Cursor, VS Code, any MCP client (remote, no key)
{
  "mcpServers": {
    "insidewell-api": { "type": "http", "url": "https://insidewell-api.cybermax-tools.workers.dev/mcp" }
  }
}

# Claude Code
claude mcp add --transport http insidewell-api https://insidewell-api.cybermax-tools.workers.dev/mcp

# Tools: insider_trades, cluster_buys, data_status
# e.g. insider_trades({"ticker":"NVDA","code":"P,S"})
  • insider_trades
    Latest insider transactions from SEC Form 4 filings (EDGAR, refreshed about once a minute), newest filed first, up to 100 rows: ticker, insider, role, code (P buy, S sale, ...), shares, price, dollar value, dates and the filing link. Defaults to open-market buys and sales filed in the last 7 days.
  • cluster_buys
    Companies where 2+ different insiders bought the stock on the open market within 7 days (window, minimum insiders and minimum dollars adjustable), with each insider, total dollars and filing links.
  • data_status
    When Insidewell last pulled new Form 4 filings from EDGAR and which filed dates it covers.

FAQ

Why not EDGAR itself, or OpenInsider?

EDGAR is the source and it is free, but each Form 4 is an XML file inside a filing folder, and the feeds list filings, not trades. Insidewell parses every new Form 4 about once a minute into flat JSON rows you can filter. OpenInsider is a free website with screens, not an API with keys, uptime and an MCP server.

Why not sec-api.io, Financial Modeling Prep or EODHD?

They are broad financial-data suites: sec-api.io Personal is $55 a month ($49 billed yearly), FMP includes insider trades from its $19/month (yearly) Starter plan, EODHD from its $59.99/month Equity Analyst plan (their pricing pages, 30 Sep 2026). If insider trades are what you need, Insidewell does that one job with cluster buys built in: 100 free calls a day, $5 pay-as-you-go, or $19/month.

How fresh is it?

The ledger reads EDGAR's latest-filings feed about once a minute and each day's full form index as a completeness check. Every response has data.updated (the last time new filings were added). Insiders must file within 2 business days of a trade, so the trade date is usually 0-2 days before the filed date.

Why does the same purchase appear more than once?

Because more than one person filed it: a fund and the director who controls it each file their own Form 4 for the same shares, and a filing can list several funds with separate rows (ownership_nature says which). /api/trades shows every row as filed; cluster buys count an identical trade reported by several filers once and list the others under also_reported_by.

What do the codes mean?

P = open-market or private purchase, S = open-market or private sale (the two most investors watch). Others: A grant or award, M option exercise, F shares withheld for tax, G gift, D disposition to the issuer, and more (transaction_type spells each one out).

What is a cluster buy?

Two or more different insiders of the same company buying its stock on the open market within 7 days of each other (you can change the window and the minimum number of insiders). Many investors watch these more closely than a single buy; it is information, not a recommendation.

Is there a key or a cost?

The free tier needs no key: 100 calls a day per IP. Paid keys: Watchlist $19/month for 10,000 calls, Desk $49/month for 50,000 calls, Fund $99/month for 150,000 calls; or pay as you go: $5 for 2,000 calls that never expire. Yearly billing gives 2 months free. Every call returns up to 100 trades or clusters. Send the key as the x-api-key header. No surprise overage charges; cancel any time.

Can I use it from Claude, Cursor or another AI agent?

Yes. Add the MCP server URL below (with your key as a Bearer token for paid limits). Tools: insider_trades, cluster_buys and data_status.

Is this investment advice?

No. Insidewell reports what insiders filed with the SEC, as filed. It is information only, not investment, legal or tax advice, and not a recommendation to buy or sell any security. Check the linked filing before relying on any row.

Where does the data come from?

SEC EDGAR: the latest-filings feed and the daily form index, and each Form 4 / 4/A filing itself (US government data, public domain), read with a descriptive User-Agent within SEC fair-access limits. Not affiliated with or endorsed by the SEC.