Skip to content
/insider-module/api/insiders/filings/by-ticker/{ticker}

Get all insider filings for a specific company.

Get all insider filings for a specific company. Returns filing summaries with issuer details, owner counts, transaction/holding counts, and SEC document URLs.

5 tokensSince v1.0.0

Why use this

Browse all Form 3/4/5 filings for a single company with filtering.

Common use case

Building a company insider filing history page, filtering to see only a specific insider's filings for a company, or finding amendments.

Issuer-scoped insider filings table — every Form 3/4/5 filing made by reporting persons related to one ticker, with optional sub-filtering by form type, date range, and individual insider CIK.

The insider_cik filter is the lever for 'all of CEO Cook's filings at AAPL' — it joins through FilingReporter so joint filings where the requested insider was one of N co-filers are correctly included. Combine with form_type='4/A' to surface only amendments touching that insider.

Returns HTTP 404 when the ticker cannot be resolved (vs /filings/latest which silently filters to no rows). Pagination is offset/limit-based; for very deep filing histories (issuers with 1000s of filings) use the from_date/to_date range to bound the window. For a fully nested filing tree (transactions, holdings, footnotes, reporters) on a specific row use GET /insider-module/api/insiders/filings/{accession_number}; for cross-issuer filings use GET /insider-module/api/insiders/filings/latest.

Parameters

NameInRequiredDefaultAllowedDescriptionExample
tickerpathrequiredStock ticker (e.g. AAPL)AAPL
limitqueryoptional50Limit results (1-1000)20
offsetqueryoptional0Pagination offset0
form_typequeryoptionalFilter by form type (3, 4, 5, 3/A, 4/A, 5/A)4
from_datequeryoptionalStart date (YYYY-MM-DD)2026-01-01
to_datequeryoptionalEnd date (YYYY-MM-DD)2026-04-01
insider_cikqueryoptionalFilter by insider CIK (10-digit zero-padded)0001214156

Response schema

FieldTypeNullableDescription
statusstringnoAlways `success` on 2xx.
dataarraynoArray of filing-summary rows for the requested issuer, ordered by `filed_at DESC`. Excludes superseded amendments. Returns HTTP 404 when the ticker cannot be resolved at all.
data[].filing_idstringnoInternal FinRadar UUID for the filing.
data[].accession_numberstringnoSEC accession number in canonical `XXXXXXXXXX-YY-NNNNNN` format.
data[].form_typestringnoForm type (`3`/`4`/`5`/`3/A`/`4/A`/`5/A`).
data[].filed_atstringyesISO-8601 UTC filing acceptance timestamp.
data[].accepted_atstringyesISO-8601 UTC EDGAR acceptance timestamp.
data[].period_of_reportstringyesISO `YYYY-MM-DD` period covered by the filing (Form 4 Item 3).
data[].is_amendmentbooleanno`true` for `*/A` amendments.
data[].is_latebooleanyes`true` when filed past the 2-business-day deadline.
data[].business_days_to_fileintegeryesBusiness days between trade and filing.
data[].issuerobjectnoIssuer block — same value across all rows since this endpoint is ticker-scoped.
data[].issuer.cikstringnoIssuer CIK.
data[].issuer.namestringyesIssuer name.
data[].issuer.trading_symbolstringyesIssuer ticker.
data[].owner_countintegernoNumber of reporting persons on the filing.
data[].non_derivative_transaction_countintegernoForm 4 Table I transaction count.
data[].derivative_transaction_countintegernoForm 4 Table II transaction count.
data[].non_derivative_holding_countintegernoForm 4 Table I holdings count.
data[].derivative_holding_countintegernoForm 4 Table II holdings count.
data[].footnote_countintegernoFootnote count on the filing.
data[].xml_urlstringyesSEC EDGAR XML document URL.
data[].index_urlstringyesSEC EDGAR filing index URL.
metaobjectyesResult metadata block — pagination + company profile (the same `meta.company` shape as `/holdings/by-ticker`).
meta.paginationobjectnoPagination sub-block.
meta.pagination.totalintegernoTotal matching filings for the issuer + filter set.
meta.pagination.limitintegernoEffective page size.
meta.pagination.offsetintegernoEcho of requested offset.
meta.pagination.has_morebooleanno`true` when another page is available.
meta.companyobjectnoCompany profile block (ticker / name / cik).
meta.company.tickerstringnoIssuer ticker (canonical hyphen form). Falls back to upper-cased path parameter when CompanyStub missing.
meta.company.namestringnoIssuer name. Falls back to `'Unknown'` when missing.
meta.company.cikstringnoIssuer CIK.
request_idstringyesPer-request UUID for log correlation.
timestampstringnoISO-8601 UTC response timestamp.

Sample response

·
  • "status": "success"
  • "data":
    ]
  • "meta":
    • "pagination":
    • "company":
    }
  • "request_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b"
  • "timestamp": "2026-05-02T15:52:18.094Z"
}

Errors

StatusLabelDescription
200OKRequest succeeded.
400Bad RequestInvalid query, body, or path parameter.
401UnauthorizedMissing or invalid Authorization header / api_Token.
402Payment RequiredInsufficient token balance for this call. Top up
429Too Many RequestsRate limit exceeded for your tier (see /pricing for tier limits). Tier limits
500Server ErrorUnexpected server-side failure. Retry with backoff; report if persistent.

Code samples

curl "https://api.finradar.ai/insider-module/api/insiders/filings/by-ticker/{ticker}?api_Token=YOUR_API_KEY" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Generate an API key in /account/credentials to run live queries (literal YOUR_API_KEY placeholder shown until then).