What an insider transaction record contains
| Field | Meaning |
|---|---|
transaction_date | Date of the trade, award or other transaction |
filed_on | Date the disclosure was filed |
filed_at | Always null: the source gives the filing date, not the time |
filing_id | SEC accession number of the Form 3, 4 or 5 |
instrument_id | The listing the security trades as, when security_title identifies it |
owner_name, owner_id, relationship | The insider, a stable ID for them, and their role at the issuer |
security_title | The class of security, as the disclosure names it |
transaction_code | The source transaction code, unchanged |
side | acquisition or disposition |
shares, price, shares_after | Shares in the transaction, price per share, and holding afterwards |
ownership_type | Always unknown: the source does not say whether the holding is direct or indirect |
Share counts are decimal strings and keep fractions as reported, so a withholding of 977.658 shares stays 977.658. company_id always identifies the issuer. instrument_id names the listing when the disclosure's security_title identifies it: the company's one listed common stock for plain common or ordinary shares, or the listed class the title names. It is null for preferred shares, awards, unlisted classes and companies with several listed classes when the title does not say which. filing_id is the SEC accession number; ownership forms are not part of /v1/filings, so look the filing up on SEC EDGAR. Rows cover non-derivative transactions; option and other derivative transactions are not included.
Reading Form 4 transaction codes
The transaction code matters more than the direction. These are the codes you will see most often:
| Code | Meaning on Form 4 | Usually discretionary? |
|---|---|---|
P | Open-market or private purchase | Yes |
S | Open-market or private sale | Often, though some are pre-planned |
A | Grant or award from the company | No |
F | Shares withheld to pay tax or an exercise price | No |
G | Gift | No |
Around vesting dates, grants (A) and tax withholdings (F) far outnumber trades, so a signal built on side alone mostly measures compensation. Filter on P and S for discretionary activity. The record does not say whether a sale was made under a 10b5-1 trading plan. The API filters by side, not by code, so apply the code filter in your own code.
Several rows often share one filing date: a Form 4 can report a grant, the shares withheld for tax on the same day, and a later sale, each with its own code and shares_after. Keep them as separate events rather than netting them, or you lose the difference between compensation and choice.
Use cases
- Insider buying screens: read the whole market for the last 30 days and keep
Prows. - Alerts when a named executive sells, keyed on the stable
owner_id. - Event studies that join disclosures to daily bars on the filing date, when the market learned of the trade.
- Governance research that follows an insider's holding through
shares_after.
Timing, point in time and history
Insiders generally have two business days to report a transaction, so transaction_date and filed_on differ. For a backtest, key the signal on filed_on. as_of excludes disclosures OHLC recorded after the cutoff; knowledge history starts when OHLC began recording the dataset in late September 2026, so earlier cutoffs return no rows. The transactions themselves go back further: on October 3, 2026, Apple's insider history started in April 2015, within the 15 years a Pro plan reads.
Plans and credits
Insider transactions are included on Pro, Commercial and Scale. A query costs 50 credits per symbol, or 500 credits for a page across the whole market. Pro is for internal use; showing insider activity to your own users needs Commercial's display rights. See pricing.
The most recent insider disposition at Apple
curl 'https://api.ohlc.io/v1/insider-transactions?symbols=XNAS:AAPL&side=disposition&order=desc&limit=1' \
-H "Authorization: Bearer $OHLC_API_KEY"{
"data": [
{
"id": "record_acf6795ecad7e1ecd681",
"company_id": "01M35H2KDW9VT69S5ZCEGMCPAX",
"instrument_id": "01M35H2KE2ZJHXFY5C3E7FPC66",
"security_title": "Common Stock",
"owner_id": "cik:0001780525",
"owner_name": "Newstead Jennifer",
"relationship": "SVP, GC and Government Affairs",
"transaction_date": "2026-09-22",
"filed_at": null,
"filed_on": "2026-09-24",
"transaction_code": "S",
"side": "disposition",
"shares": "2399",
"price": { "amount": "340.06", "currency_code": "USD" },
"shares_after": "44391",
"ownership_type": "unknown",
"filing_id": "0001140361-26-037584"
}
],
"meta": {
"timezone": "UTC",
"as_of": "2026-10-03T15:04:21Z",
"next_cursor": "AetKEtoo206b...",
"coverage": { "status": "partial", "reason": "Coverage is partial for the entitled query scope." }
}
}Prices delayed 15 minutes · Illustrative sample data