Insider trades from SEC Form 4 and Form 5 filings: one row per transaction with the insider's name and role, date, transaction code, shares, price, value, holdings after and 10b5-1 flag. By company ticker, CIK or name, or for all companies. $2 per 1,000 transactions.
Track insider trading from SEC Form 4 and Form 5 filings: one clean row per transaction with the insider's name and role as filed (director, officer and title, 10% owner), transaction date, SEC transaction code and its meaning (open-market purchase, sale, award, option exercise, tax withholding, gift), shares, price, dollar value, shares owned afterwards, direct or indirect ownership, the Rule 10b5-1 flag and the filing's footnotes. Look up companies by ticker, CIK or name, or read the latest filings of all companies to spot insider buying across the market. Built for investors, quant and research teams, journalists and AI agents.
Price
Price per delivered record
Event
Price
Per 1,000
Charged for
Insider transaction insider-transaction
$0.002
$2 / 1,000
One transaction reported on SEC Form 4 or 5: insider, role, date, code, shares, price, value, holdings after.
Apify free plan: up to 10 items per run. Paid plans have no per-run cap; set maxTotalChargeUsd to cap spend.
POST https://api.apify.com/v2/actors/sfoln~sec-insider-trading/runs?maxTotalChargeUsd=1
GET https://api.apify.com/v2/actor-runs/{runId} # until status is SUCCEEDED
GET https://api.apify.com/v2/datasets/{defaultDatasetId}/items?format=json
Authenticate with an Apify API token. MCP clients can instead sign in with OAuth when prompted. Example prompt for an agent: Show the five most recent insider transactions at Apple from SEC Form 4 filings, with who traded, the price and the value.
Input
Input fields
Companies (issuers) by ticker, CIK or name: one dataset row per Form 4/5 transaction plus one summary per company. Leave companies empty for the latest filings of all companies.
Field
Type
Default
Meaning
companies
array
—
Companies Issuers by ticker (AAPL), CIK (320193) or name, one per line. Leave empty to get the latest Form 4/5 transactions of all companies in the date window (default: the last 3 days). Accounts on the Apify free plan can process up to 10 companies per run and 20 transactions per company.
transactionCodes
array
—
Transaction codes Only these Form 4 codes, e.g. P (open-market purchase), S (sale), A (award), M (option exercise), F (tax withholding), G (gift). Empty: all.
dateFrom
string
—
Filed from Earliest filing date: YYYY-MM-DD or a span such as "30 days". Default: none for companies, the last 3 days for all companies.
dateTo
string
—
Filed to Latest filing date (YYYY-MM-DD or a span such as "7 days"). Empty: today.
minTransactionValue
integer
—
Minimum transaction value (USD) Only transactions with shares × price of at least this many dollars (transactions without a price are then left out). Range 0–….
includeDerivative
boolean
true
Include derivative transactions Also return option, RSU and warrant transactions (Table II of Form 4).
includeAmendments
boolean
true
Include amendments Also read amended filings (4/A, 5/A).
maxTransactionsPerCompany
integer
50
Max transactions per company Transactions returned per company, newest filings first (for all companies: transactions in total). Range 1–5000.
maxCompanies
integer
100
Max companies Safety cap on companies processed in this run; the rest are ignored and counted as inputItemsDropped in the OUTPUT record. Range 1–1000.
concurrency
integer
2
Concurrency Companies processed in parallel. All requests share SEC's rate limit (8 requests per second). Range 1–5.
includeRaw
boolean
false
Include raw upstream data Attach the transaction as parsed from the filing's XML to each row.
Records land in the run's dataset; a synchronous call returns them directly. Each has a status (ok is charged; everything else is free) and a charged flag. The run's OUTPUT record totals items and charges.
Field
Type
Meaning
input
string | object
Input The company as entered, or latest-filings for all companies.
recordType
string
Record type transaction (one per delivered transaction, charged) | summary (one per input, not charged). e.g. "transaction"
position
integer
Position 1-based position of the transaction within its input (newest filings first).
accessionNumber
string
Accession number
form
string
Form 4, 4/A, 5 or 5/A. e.g. "4"
filingDate
string | null
Filed
periodOfReport
string | null
Period of report
issuerCik
integer | null
Issuer CIKe.g. 320193
issuerName
string | null
Issuere.g. "Apple Inc."
issuerTicker
string | null
Tickere.g. "AAPL"
ownerName
string | null
Insider Reporting owner as filed (first owner of a joint filing).
ownerCik
integer | null
Insider CIK
ownerRelationship
string | null
Relationship As filed, e.g. "Director, Officer (Chief Financial Officer)", "10% owner".
isDirector
boolean
Director
isOfficer
boolean
Officer
officerTitle
string | null
Officer title
isTenPercentOwner
boolean
10% owner
reportingOwners
array
Reporting owners Every owner of the filing: [{ name, cik, relationship }].
Status ok | not_found | error | skipped_budget | skipped_free_plan | skipped_unmetered e.g. "ok"
charged
boolean
Charged
chargedEvent
string
Charged event
chargedCount
integer
Events charged
source
string
Source sec-edgar
fetchedAt
string
Fetched at
error
object
Error { code, message, provider?, status? } when status is not ok. Runtime codes: budget_exhausted, free_plan_limit, unmetered, aborted, charge_failed, record_too_large, invalid_record, dataset_push_failed; upstream codes: auth, rate_limit, timeout, network, server, client, invalid_response, not_found.
warnings
array
Warnings
raw
object
Raw The transaction as parsed from the filing XML (only with includeRaw).
Example recordExample record
[
{
"input": "AAPL",
"recordType": "transaction",
"position": 3,
"accessionNumber": "0001140361-26-038674",
"form": "4",
"filingDate": "2026-10-05",
"periodOfReport": "2026-10-01",
"issuerCik": 320193,
"issuerName": "Apple Inc.",
"issuerTicker": "AAPL",
"ownerName": "DOE JANE Q",
"ownerCik": 9990001,
"ownerRelationship": "Director, Officer (Executive Chair)",
"isDirector": true,
"isOfficer": true,
"officerTitle": "Executive Chair",
"isTenPercentOwner": false,
"reportingOwners": [
{
"name": "DOE JANE Q",
"cik": 9990001,
"relationship": "Director, Officer (Executive Chair)"
}
],
"table": "non-derivative",
"securityTitle": "Common Stock",
"transactionDate": "2026-10-02",
"transactionCode": "S",
"transactionCodeDescription": "Open market or private sale",
"acquiredDisposed": "D",
"shares": 23143,
"pricePerShare": 331.44,
"transactionValue": 7670515.92,
"sharesOwnedAfter": 3432778,
"directOrIndirect": "D",
"ownershipNature": null,
"conversionOrExercisePrice": null,
"exerciseDate": null,
"expirationDate": null,
"underlyingSecurityTitle": null,
"underlyingShares": null,
"deemedExecutionDate": null,
"equitySwapInvolved": false,
"isRule10b5_1": true,
"footnotes": [
"This transaction was made pursuant to a Rule 10b5-1 trading plan adopted by the reporting person on May 28, 2026.",
"This transaction was executed in multiple trades at prices ranging from $330.66 to $331.655; the price reported above reflects the weighted average sale price."
],
"xmlUrl": "https://www.sec.gov/Archives/edgar/data/320193/000114036126038674/form4.xml",
"filingIndexUrl": "https://www.sec.gov/Archives/edgar/data/320193/000114036126038674/0001140361-26-038674-index.htm",
"status": "ok",
"charged": true,
"chargedEvent": "insider-transaction",
"source": "sec-edgar",
"fetchedAt": "2026-10-14T10:00:00.000Z"
},
{
"input": "AAPL",
"query": "AAPL",
"issuerCik": 320193,
"issuerName": "Apple Inc.",
"issuerTicker": "AAPL",
"matchedBy": "ticker",
"filingsScanned": 5,
"recordType": "summary",
"resultsDelivered": 50,
"stopReason": "limit",
"status": "ok",
"charged": false,
"source": "sec-edgar",
"fetchedAt": "2026-10-14T10:00:00.000Z"
}
]
FAQ
Questions
Which transactions are included?
Every transaction in Table I (shares) and, unless switched off, Table II (options, RSUs, warrants) of Forms 4 and 5, including amendments. Holdings reported without a transaction are not rows. Filter by transaction code, for example P for open-market purchases.
Can I see trades across all companies?
Yes: leave companies empty to read the latest Form 4 and 5 filings of all companies in the date window (default: the last 3 days), newest filing date first, combined with code and value filters to find, for example, large open-market purchases.