Schedule 13D and 13G API: 5% beneficial ownership filings as JSON
Schedules 13D and 13G parsed: issuer, CUSIP, each reporting person's voting and dispositive power, percent of class and purpose of transaction.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/form-13d-13g?formType=SCHEDULE%2013D&size=2&fields=flat"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/form-13d-13g",
params={'formType': 'SCHEDULE 13D', 'size': '2', 'fields': 'flat'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
)
print(r.json())Overview
Anyone who acquires more than 5% of a company's voting stock must file Schedule 13D (active intent) or Schedule 13G (passive). Activist campaigns start here: a 13D's Item 4 purpose of transaction often says exactly what the investor wants.
Since December 2024 the schedules are filed as structured XML. SecFeed parses every reporting person with sole and shared voting and dispositive power, aggregate amount owned and percent of class, and exposes flat fields you can filter, such as maxPercentOfClass.
What you get
Built for developers who would rather not parse EDGAR.
Name, CIK, citizenship, type, fund source and each power column.
Per person and maxPercentOfClass per filing, filterable with flat.maxPercentOfClass__gte.
Item 4 text from 13D filings: the activist's stated plans.
Filter by formType: SCHEDULE 13D, SCHEDULE 13G and their amendments.
Endpoints
Authenticate with Authorization: Bearer YOUR_KEY. Responses are JSON.
Schedules 13D and 13G: issuer, CUSIPs, each reporting person's voting and dispositive power and percent of class, purpose of transaction.
Parameters: cik, startDate, endDate, formType, flat.maxPercentOfClass__gte, fields=flat
Response fields
The main fields in every result. The raw filing data is always one level down.
| Field | Meaning |
|---|---|
accessionNo, formType, filedAt | The filing. |
flat.issuerName, flat.issuerCik, flat.cusips | The company whose stock is owned. |
flat.reportingPersons | Each owner: soleVoting, sharedVoting, soleDispositive, sharedDispositive, aggregateOwned, percentOfClass. |
flat.maxPercentOfClass | Largest stake reported in the filing. |
flat.purposeOfTransaction, flat.dateOfEvent | Item 4 text and the date that triggered the filing. |
Use cases
- Alert on new activist stakes above 10%
- Track changes in large holders through amendments
- Read activists' stated plans across campaigns
- Map ownership of small caps
Datasets behind this API
The SEC forms this API reads, with live filing counts.
Every Schedule 13D and amendment since 1993: investors above 5% with control or activist intent, their stake, funding and plans, as JSON.
13GPassive / institutionalEvery Schedule 13G and amendment since 1994: passive and institutional holders above 5%, with shares, percent of class and voting power.
Tutorials
FAQ
What is the difference between 13D and 13G?
13D is for holders with active intent, such as seeking board seats or a sale. 13G is a shorter form for passive investors and certain institutions.
Are older 13D and 13G filings included?
Structured fields cover the XML schedules, mandatory since December 2024. Earlier text filings are in the filing index and full-text search.
Try the 5% Beneficial Owners free
500 API calls a month on the free plan. No sales call.