Is There an OpenInsider API? A Documented Insider Trades API for 2026
OpenInsider is a free Form 4 screener with no public API. Here is what builders use instead: SEC EDGAR if you want to write the parser, or a documented insider trades API with a 10b5-1 plan flag, cluster buys, and a working call.
If you searched for an openinsider api, here is the short answer: there isn't one. OpenInsider is a free web screener for SEC Form 4 insider filings, and it does not offer or document a public API. If you are building software or an AI agent that needs insider trades as data, you have two real options: parse SEC EDGAR yourself, or call a documented insider trades API. SentiSense serves one, with a free preview.
SentiSense is not affiliated with, or endorsed by, OpenInsider. It is a useful screener that a lot of traders keep open in a browser tab. This post exists because developers and AI agents keep searching for an API it never promised to have.
If you came for a working call rather than the backstory, this is GET /api/v1/insider/cluster-buys:
curl -H "X-SentiSense-API-Key: $SENTISENSE_API_KEY" \
"https://app.sentisense.ai/api/v1/insider/cluster-buys?lookbackDays=90"
Does OpenInsider have an API?
No. OpenInsider presents Form 4 filings as a fast, filterable table for people. There are no API keys, no documented endpoints, and no schema a program can rely on. It is a screener built for people, not a data product built for software.
Where does the data come from?
Every number on OpenInsider, and on every other insider tracker, comes from SEC EDGAR. Officers, directors and 10% owners must report trades in their own company's stock on a Form 4, due within two business days of the transaction.
So the free alternative is EDGAR itself: complete, and the source. The work is on your side. Form 4 is XML with footnotes, amendments that replace earlier filings, and separate derivative and non-derivative tables. It is a good project if insider data is your product, and a detour if it is one input among several.
The documented equivalent
SentiSense parses Form 4 filings from EDGAR and serves them through three documented endpoints:
| You wanted from OpenInsider | Endpoint | Returns |
|---|---|---|
| Latest insider buying and selling | GET /api/v1/insider/activity |
Market-wide buys and sells, aggregated by ticker |
| One stock's insider page | GET /api/v1/insider/trades/{ticker} |
Every transaction for that stock, newest first |
| The cluster buys list | GET /api/v1/insider/cluster-buys |
Stocks where three or more insiders bought in the window |
All three take lookbackDays from 1 to 365. Without a key you get a preview. A free API key unlocks the free tier, and PRO returns the full feed and per-stock history.
Which fields separate signal from noise?
Most Form 4 volume is not a decision. It is scheduled selling, option exercises, and shares withheld to cover taxes when stock vests. Two fields on every SentiSense transaction row let a program sort it out:
rule10b51istruewhen the trade ran under a Rule 10b5-1 plan, arranged months in advance. A plan sale that repeats every quarter says little about what the insider thinks today.transactionCodeis the raw SEC code as filed.Pis an open-market purchase andSis an open-market sale.Fis shares withheld by the company for taxes, which many feeds count as a sale even though no one sold anything on the market.Ais an award,Man exercise,Ga gift.
An open-market purchase outside a plan is the rarest row in the dataset and the one most people are actually looking for.
How do I pull insider trades in Python?
This pulls one stock's transactions and keeps only discretionary open-market buys:
import os
import requests
BASE = "https://app.sentisense.ai/api/v1/insider"
HEADERS = {"X-SentiSense-API-Key": os.environ["SENTISENSE_API_KEY"]}
resp = requests.get(f"{BASE}/trades/GME", headers=HEADERS,
params={"lookbackDays": 365}, timeout=30)
resp.raise_for_status()
for t in resp.json()["data"]:
if t["transactionCode"] == "P" and not t["rule10b51"]:
print(t["transactionDate"], t["insiderName"], t["insiderTitle"],
t["sharesTransacted"], t["pricePerShare"])
Swap the path for /cluster-buys and you get one row per stock with insiderCount, tradeCount, totalValue, firstBuyDate and lastBuyDate. Three or more insiders buying the same name inside one window is the pattern people rebuild by hand from a screener, served here as a single call.
The same key covers congressional STOCK Act trades and institutional 13F flows through their own documented endpoints, so insider data does not have to be a separate integration. For a tool-by-tool comparison of the screeners and paid feeds, see the best insider trading trackers in 2026.
If an AI agent sent you here
Agents looking for insider data on their owner's behalf can skip the guessing. The machine-readable API reference is at sentisense.ai/skill.md. The skill installs with npx skills add SentiSenseApp/skills for Claude Code, Codex and OpenClaw, and Claude and ChatGPT users can add the hosted MCP connector. Data is from SEC filings as they are published, for research and education, not investment advice.
No credit card required. Generate a free API key and pull the current cluster buys in one call.