The same public-filings data behind the site, as JSON: insider trades, Congress trades, fund holdings, planned sales, stakes and fundamentals, each row carrying the filing it came from. Every GET endpoint below is open without a key. A Pro key raises the limits, returns up to 500 rows a call and unlocks CSV export.
Create a key on your account page
(Pro, up to 3 active keys). Send it as a bearer token or in
X-API-Key. The key is shown once; we store only a hash.
curl -H "Authorization: Bearer wm_live_YOUR_KEY" \ "https://wave-man.com/api/v1/insiders/recent?limit=500&format=csv"
A revoked key, or a key on a lapsed plan, answers
401 with a JSON detail. Keyed responses carry
X-RateLimit-Limit and X-RateLimit-Remaining for the
minute, and the same pair with a -Day suffix.
| No key | Pro key | |
|---|---|---|
| Requests a minute | 240 per address | 600 per key |
| Requests a day | 20,000 per address | 50,000 per key |
| Rows a call | 100 | 500 |
CSV export (format=csv) | Free account: 25 rows, 3 a month | Yes, no cap |
Over a limit you get 429 with Retry-After.
Cache on your side; the datasets refresh on daily timers, Form 4 within minutes.
/api/v1/insiders/recent CSV
Newest Form 4 transactions, optionally filtered by code and minimum value.
| Query param | Type | Default |
|---|---|---|
limit | int | 100 |
code | str | None |
min_value | float | None |
format | str | None |
https://wave-man.com/api/v1/insiders/recent
/api/v1/insiders/top
Largest open-market buys or sells in the last N days.
| Query param | Type | Default |
|---|---|---|
side | str | 'buy' |
days | int | 7 |
limit | int | 20 |
https://wave-man.com/api/v1/insiders/top
/api/v1/activity
Daily Form 4 buy/sell dollar totals for the activity chart.
| Query param | Type | Default |
|---|---|---|
days | int | 14 |
https://wave-man.com/api/v1/activity
/api/v1/trend/monthly
Monthly insider buy and sell dollar totals.
| Query param | Type | Default |
|---|---|---|
months | int | 60 |
https://wave-man.com/api/v1/trend/monthly
/api/v1/insiders/netflow CSV
Tickers with the largest net insider buying or selling over N days.
| Query param | Type | Default |
|---|---|---|
days | int | 30 |
side | str | 'buy' |
limit | int | 15 |
format | str | None |
https://wave-man.com/api/v1/insiders/netflow
/api/v1/insiders/notable CSV
Open-market purchases by the C-suite only, the cleanest signal.
| Query param | Type | Default |
|---|---|---|
days | int | 30 |
min_value | float | 250000 |
format | str | None |
https://wave-man.com/api/v1/insiders/notable
/api/v1/insiders/{ticker}/summary
Insider buy and sell totals for one company.
No query parameters.
https://wave-man.com/api/v1/insiders/AAPL/summary
/api/v1/insiders/clusters
Cluster buys: several insiders INDEPENDENTLY purchasing the same stock.
| Query param | Type | Default |
|---|---|---|
days | int | 90 |
min_insiders | int | 3 |
https://wave-man.com/api/v1/insiders/clusters
/api/v1/insiders/{ticker}
Form 4 transactions for one company, newest first.
| Query param | Type | Default |
|---|---|---|
limit | int | 200 |
https://wave-man.com/api/v1/insiders/AAPL
/api/v1/signals/confluence
Tickers where insiders bought AND funds opened/added in the latest
| Query param | Type | Default |
|---|---|---|
days | int | 90 |
https://wave-man.com/api/v1/signals/confluence
/api/v1/asof
Insider transactions as they were known on a past date (point in time).
| Query param | Type | Default |
|---|---|---|
as_of | str | required |
ticker | str | None |
limit | int | 100 |
https://wave-man.com/api/v1/asof?as_of=2025-06-30
/api/v1/track-records CSV
Insiders ranked by how their past purchases performed.
| Query param | Type | Default |
|---|---|---|
limit | int | 25 |
min_trades | int | 10 |
min_companies | int | 1 |
format | str | None |
https://wave-man.com/api/v1/track-records
/api/v1/track-records/meta
The base rate and coverage, so a client can show what "good" means.
No query parameters.
https://wave-man.com/api/v1/track-records/meta
/api/v1/congress/recent CSV
Newest STOCK Act trades by members of Congress.
| Query param | Type | Default |
|---|---|---|
limit | int | 100 |
ticker | str | None |
member | str | None |
side | str | None |
format | str | None |
https://wave-man.com/api/v1/congress/recent
/api/v1/congress/top
Most-traded names. Ranked by how many DISTINCT members touched a
| Query param | Type | Default |
|---|---|---|
days | int | 90 |
limit | int | 25 |
https://wave-man.com/api/v1/congress/top
/api/v1/congress/members
Most active members of Congress by trade count.
| Query param | Type | Default |
|---|---|---|
days | int | 365 |
limit | int | 25 |
https://wave-man.com/api/v1/congress/members
/api/v1/congress/overlap
Names bought by BOTH a company insider and a member of Congress in the
| Query param | Type | Default |
|---|---|---|
days | int | 180 |
limit | int | 25 |
https://wave-man.com/api/v1/congress/overlap
/api/v1/funds/top
Largest 13F filers by reported portfolio value.
| Query param | Type | Default |
|---|---|---|
limit | int | 20 |
https://wave-man.com/api/v1/funds/top
/api/v1/holdings/{ticker}
Funds holding one company, from the latest 13F quarter.
| Query param | Type | Default |
|---|---|---|
limit | int | 25 |
https://wave-man.com/api/v1/holdings/AAPL
/api/v1/13f/new-positions
Biggest brand-new fund positions in the latest quarter.
| Query param | Type | Default |
|---|---|---|
limit | int | 20 |
https://wave-man.com/api/v1/13f/new-positions
/api/v1/planned-sales CSV
Form 144 notices of planned insider sales.
| Query param | Type | Default |
|---|---|---|
limit | int | 40 |
days | int | 90 |
min_value | float | None |
ticker | str | None |
format | str | None |
https://wave-man.com/api/v1/planned-sales
/api/v1/planned-sales/{ticker}
Form 144 notices for one company.
| Query param | Type | Default |
|---|---|---|
limit | int | 25 |
https://wave-man.com/api/v1/planned-sales/AAPL
/api/v1/stakes CSV
New 5%+ stakes (13D/13G), activist filings by default.
| Query param | Type | Default |
|---|---|---|
limit | int | 40 |
days | int | 180 |
activist_only | bool | True |
min_pct | float | None |
ticker | str | None |
include_amendments | bool | False |
format | str | None |
https://wave-man.com/api/v1/stakes
/api/v1/stakes/{ticker}
13D/13G stakes in one company.
| Query param | Type | Default |
|---|---|---|
limit | int | 25 |
https://wave-man.com/api/v1/stakes/AAPL
/api/v1/financials/{ticker}
Fundamentals for one company: the last N periods of every concept.
| Query param | Type | Default |
|---|---|---|
freq | str | 'annual' |
as_of | str | None |
periods | int | 5 |
https://wave-man.com/api/v1/financials/AAPL
/api/v1/financials/{ticker}/series
One concept as a time series, the shape a chart or a model wants.
| Query param | Type | Default |
|---|---|---|
concept | str | required |
freq | str | 'annual' |
as_of | str | None |
limit | int | 20 |
https://wave-man.com/api/v1/financials/AAPL/series?concept=Revenues
/api/v1/financials/{ticker}/restatements
Every reported version of a concept, newest filing first.
| Query param | Type | Default |
|---|---|---|
concept | str | required |
limit | int | 50 |
https://wave-man.com/api/v1/financials/AAPL/restatements?concept=Revenues
/api/v1/screen CSV
Filter the universe on any combination of signals.
| Query param | Type | Default |
|---|---|---|
sort | str | 'insider_net_usd_180d' |
desc | bool | True |
limit | int | 100 |
format | str | None |
sector | str | None |
https://wave-man.com/api/v1/screen
/api/v1/heat
Filing intensity by sector and dataset, against each cell's own
| Query param | Type | Default |
|---|---|---|
days | int | 30 |
as_of | str | None |
https://wave-man.com/api/v1/heat
/api/v1/spark
90-day trend shapes for the desk's TREND column. Values are indexed to
| Query param | Type | Default |
|---|---|---|
tickers | str | required |
https://wave-man.com/api/v1/spark?tickers=value
/api/v1/screen/meta
What the screener can filter on, and how fresh it is, so a client can
No query parameters.
https://wave-man.com/api/v1/screen/meta
/api/v1/sonar.json
Every scored company with its seven scores, one fetch for the
No query parameters.
https://wave-man.com/api/v1/sonar.json
/api/v1/search
Ticker and company-name lookup.
| Query param | Type | Default |
|---|---|---|
query | str | required |
https://wave-man.com/api/v1/search?query=apple
/api/v1/stats
Row counts, date range and ingest health for every dataset.
No query parameters.
https://wave-man.com/api/v1/stats
/api/v1/today
Filings received since midnight UTC and the newest insider trades,
No query parameters.
https://wave-man.com/api/v1/today
The data is from public SEC and House filings, provided as information only: not investment advice, and no share prices are served. Use is under our terms and privacy policy. Attribute WaveMan when you republish.
Questions? support@wave-man.com.
No password to create and no card required. We store your email address and nothing else.