OpenInsider
Pricing
from $2.70 / 1,000 insider trades
OpenInsider
Search public OpenInsider SEC Form 4 trades by market, ticker, screener URL, insider name, or CIK. Get structured company and insider details, transaction values, ownership fields, dates, and source links when available.
Pricing
from $2.70 / 1,000 insider trades
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
🔎 OpenInsider Form 4 research
For analysts, researchers, and developers, this Actor searches public OpenInsider data and returns structured SEC Form 4 insider-trade rows. Review company and insider identity, transaction and ownership details, trade and filing dates, direct SEC filing links, and source links in one dataset.
This is public market data for research and review, not investment advice.
Use cases
- Review one ticker's public insider trades with OpenInsider Stock.
- Collect transaction details and filing links with SEC Form 4 Insider Trading.
- Find purchase-focused records with Insider Buying Stock Screener.
- Narrow a submitted OpenInsider screener URL with SEC Form 4 Insider Trading Screener.
- Start a public Form 4 review with Insider Trading Website.
- Look up public purchase filings with Insider Buying.
📊 Public Form 4 trade rows
What it returns
Each saved row is one public SEC Form 4 insider-trade transaction found through the selected scope. Rows include company and insider identity, normalized roles, raw transaction and ownership values, trade and filing dates, a direct SEC filing link, and OpenInsider source links when provided.
When the same source trade is found again through another submitted value or search path, the Actor ignores the later match. The saved row represents the first eligible match.
▶️ Search one insider-trade scope
How to run
- Choose one
target:recent-market,ticker,screener,insider-name, orinsider-cik. - Add the value for that target, such as a stock ticker, one OpenInsider screener URL, insider names, or SEC CIKs.
- Add optional transaction, date, and absolute trade-value filters.
- Set
maxItemsif you want a result limit. The form defaults to 10; leave it empty to return all available results until the source is exhausted. - Start the Actor and open the dataset link when the run finishes.
Each run uses one search scope. It does not combine separate market, ticker, screener, and person searches in one run. The source is public, so you do not need an OpenInsider or SEC API key.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
target | string | Selects one scope: recent-market, ticker, screener, insider-name, or insider-cik. |
ticker | string | Stock ticker used with the ticker target. |
screenerUrl | string | One OpenInsider screener URL used with the screener target. |
insiderNames | string[] | One or more names used with the insider-name target. The Actor resolves each name to an SEC filer and searches across affiliated companies. |
insiderCiks | string[] | One or more SEC CIK strings used with the insider-cik target. Enter digits only; leading zeros are allowed. |
transactionCategories | string[] | Optional transaction categories. An empty value includes all categories. |
transactionCodes | string[] | Optional exact Form 4 transaction codes, such as P or S. An empty value includes all codes. |
dateFilter | object | Chooses a trade-date range or a filing lookback window. Use only the fields for the chosen mode. |
dateFilter.mode | string | Selects trade-date-range or filing-lookback. |
dateFilter.from | date string | Start of the trade-date range in YYYY-MM-DD form. |
dateFilter.to | date string | End of the trade-date range in YYYY-MM-DD form. |
dateFilter.lookbackDays | integer | Number of days back from the run date to include SEC filings. Use a positive number with filing-lookback. |
tradeValue | object | Sets a lower value, an upper value, or both. Values are absolute dollar amounts. |
tradeValue.minimum | number | Keeps trades at or above this dollar amount. |
tradeValue.maximum | number | Keeps trades at or below this dollar amount. |
maxItems | integer | Stops after this many saved records. Leave it empty to return all available results until the source is exhausted. |
Default input example
This is the public input from a successful current-beta run:
{"target": "recent-market","maxItems": 10}
🧾 Output
Output link
| Field | Type | What it does |
|---|---|---|
datasetItems | URL string | Links to the structured insider-trade rows from this run. |
Dataset row fields
Optional fields can be absent when the source does not provide them.
| Field | Type | What it does |
|---|---|---|
companyName | string | Company name in the trade. |
ticker | string | Stock ticker for the company. |
companyCik | string (optional) | SEC CIK for the company, when reported. |
insiderName | string | Name of the insider in the filing. |
insiderCik | string (optional) | SEC CIK for the insider, when reported. |
insiderRole | string (optional) | Normalized insider role, such as CEO or director. |
transactionCategory | string (optional) | Form 4 transaction category, when reported. |
transactionType | string | Plain-language transaction type. |
transactionCode | string | Form 4 transaction code from the source. |
ownershipType | string (optional) | Ownership value, such as Direct or Indirect. |
ownershipCode | string (optional) | Raw ownership code, when available. |
shares | number | Number of shares in the transaction. |
pricePerShare | number | Price paid or received for one share. |
totalTradeValue | number | Total dollar value of the transaction. |
tradeDate | date string | Date when the trade took place. |
filingDate | date string | Date when the SEC Form 4 was filed. |
filingUrl | URL string | Direct link to the original SEC Form 4 filing. |
accessionNumber | string (optional) | SEC accession number for the filing, when reported. |
isAmendment | boolean (optional) | Whether the filing is an amendment, when reported. |
isMultipleTransaction | boolean (optional) | Whether the filing marks a multiple-transaction row, when reported. |
isDerivative | boolean (optional) | Whether the filing includes a derivative transaction, when reported. |
sharesOwnedAfter | number (optional) | Shares held after the transaction, when reported. |
ownershipChangeShares | number (optional) | Change in owned shares reported for the transaction, when available. |
ownershipChangePercent | number (optional) | Percent change in ownership reported for the transaction, when available. |
sourcePageUrl | URL string (optional) | OpenInsider page for the trade, when provided. |
insiderProfileUrl | URL string (optional) | OpenInsider profile page for the insider, when provided. |
Example row from the current beta run
This genuine row is from a successful recent-market run. It is shown in full.
{"companyName": "Amalgamated Financial Corp.","companyCik": "0001823608","ticker": "AMAL","insiderName": "Bruce Maryann","insiderCik": "0001551962","insiderRole": "Dir","transactionCategory": "Sale","transactionType": "Sale","transactionCode": "S","ownershipType": "Direct","ownershipCode": "D","shares": -2138,"pricePerShare": 49.55,"totalTradeValue": -105943,"tradeDate": "2026-07-30","filingDate": "2026-08-03","filingUrl": "http://www.sec.gov/Archives/edgar/data/1823608/000182360826000180/xslF345X03/wk-form4_1785782623.xml","accessionNumber": "0001823608-26-000180","isAmendment": false,"isMultipleTransaction": false,"isDerivative": false,"sharesOwnedAfter": 17804,"ownershipChangeShares": -2138,"ownershipChangePercent": -11,"sourcePageUrl": "http://openinsider.com/latest-insider-trading","insiderProfileUrl": "http://openinsider.com/insider/Bruce-Maryann/1551962"}
💳 Pricing
The Actor uses pay-per-event pricing. Each successfully parsed public SEC Form 4 trade saved to the dataset is the billable event. Check the pricing panel for the current rate.
🔌 Integrations
API and exports
Read the dataset through the Apify API or export it from Apify for scripts, spreadsheets, and review tools.
Video guide
❓ FAQ
Can one run use more than one search scope?
No. Choose one target for each run. You can run separate searches for market activity, a ticker, a screener URL, or a person.
What does the insider-name search return?
The Actor resolves a submitted name to an SEC filer and returns matching trades across affiliated companies when the source provides them.
Can I use an SEC CIK?
Yes. Choose insider-cik and enter a CIK as digits only. Leading zeros are allowed.
What happens if I submit several names or CIKs?
The input accepts arrays for insiderNames and insiderCiks. Use one identifier kind in a run, and review the rows returned for the values that the source resolves.
Why can a trade value be negative?
The source can report sales with negative shares and a negative totalTradeValue. Check transactionType and transactionCode for the transaction direction.
Are the filing links original SEC links?
Yes. filingUrl points to the original SEC Form 4 filing. The row can also include the OpenInsider source page and insider profile links.
Do I need an OpenInsider or SEC API key?
No. The Actor reads public source data and does not ask for source credentials or an API key.
Is this the OpenInsider API?
No. This is an Apify Actor that reads public OpenInsider data and exposes its own structured dataset through Apify.
What happens when the same trade matches twice?
The Actor saves the first eligible match and ignores later matches of the same source trade. One row describes that first saved match.
Does this Actor give investment advice?
No. It returns public Form 4 records and source links for research. It does not recommend buying, selling, or holding a security.
What is insider trading?
Here, it means public SEC Form 4 records about trades reported by company insiders. The Actor reports filing data; it does not judge a trade or give advice.
Is insider trading illegal?
The Actor cannot decide legality from a filing. Laws depend on the facts and the place involved, so get qualified legal advice for a specific question.
Will the results always be complete or current?
No guarantee covers completeness, freshness, speed, or availability. Results depend on the public records and source availability when the run starts.
📝 Changelog
0.0: Initial release
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- SEC 13F Manager Quarterly Report Scraper — Compare quarterly institutional holdings with public insider trades.
- Stocktwits Scraper — Add public ticker messages and sentiment context to a trade review.
- MarketWatch Scraper — Pair insider trades with financial news articles for company research.
- OpenInsider Scraper — Use a direct OpenInsider scraping workflow when you need its source view.
- SEC Insider Trading Tracker — Form 4 API — Send Form 4 data into an API or AI-agent workflow.
Made with ❤️ by Maxime Dupré